File tree 5 files changed +17
-16
lines changed
5 files changed +17
-16
lines changed Original file line number Diff line number Diff line change @@ -22,7 +22,7 @@ master = ["gccjit/master"]
22
22
default = [" master" ]
23
23
24
24
[dependencies ]
25
- gccjit = " 2.2 "
25
+ gccjit = " 2.3 "
26
26
# gccjit = { git = "https://github.com/rust-lang/gccjit.rs" }
27
27
28
28
# Local copy.
Original file line number Diff line number Diff line change 1
- c16f53a752ed2b679fafe88d4ec795fe54a245ac
1
+ 29901846ff610daab8a80436cfe36e93b4b5aa1e
Original file line number Diff line number Diff line change @@ -199,12 +199,13 @@ pub fn compile_codegen_unit(
199
199
let f32_type_supported = target_info. supports_target_dependent_type ( CType :: Float32 ) ;
200
200
let f64_type_supported = target_info. supports_target_dependent_type ( CType :: Float64 ) ;
201
201
let f128_type_supported = target_info. supports_target_dependent_type ( CType :: Float128 ) ;
202
+ let u128_type_supported = target_info. supports_target_dependent_type ( CType :: UInt128t ) ;
202
203
// TODO: improve this to avoid passing that many arguments.
203
204
let cx = CodegenCx :: new (
204
205
& context,
205
206
cgu,
206
207
tcx,
207
- target_info . supports_128bit_int ( ) ,
208
+ u128_type_supported ,
208
209
f16_type_supported,
209
210
f32_type_supported,
210
211
f64_type_supported,
Original file line number Diff line number Diff line change @@ -134,11 +134,15 @@ impl TargetInfo {
134
134
false
135
135
}
136
136
137
- fn supports_128bit_int ( & self ) -> bool {
138
- self . supports_128bit_integers . load ( Ordering :: SeqCst )
139
- }
140
-
141
- fn supports_target_dependent_type ( & self , _typ : CType ) -> bool {
137
+ fn supports_target_dependent_type ( & self , typ : CType ) -> bool {
138
+ match typ {
139
+ CType :: UInt128t | CType :: Int128t => {
140
+ if self . supports_128bit_integers . load ( Ordering :: SeqCst ) {
141
+ return true ;
142
+ }
143
+ }
144
+ _ => ( ) ,
145
+ }
142
146
false
143
147
}
144
148
}
@@ -159,10 +163,6 @@ impl LockedTargetInfo {
159
163
self . info . lock ( ) . expect ( "lock" ) . cpu_supports ( feature)
160
164
}
161
165
162
- fn supports_128bit_int ( & self ) -> bool {
163
- self . info . lock ( ) . expect ( "lock" ) . supports_128bit_int ( )
164
- }
165
-
166
166
fn supports_target_dependent_type ( & self , typ : CType ) -> bool {
167
167
self . info . lock ( ) . expect ( "lock" ) . supports_target_dependent_type ( typ)
168
168
}
You can’t perform that action at this time.
0 commit comments