@@ -138,6 +138,7 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallMethods<'tcx> for Builder<'a, 'gcc, 'tcx> {
138
138
func,
139
139
& args. iter ( ) . map ( |arg| arg. immediate ( ) ) . collect :: < Vec < _ > > ( ) ,
140
140
None ,
141
+ None ,
141
142
)
142
143
}
143
144
sym:: likely => self . expect ( args[ 0 ] . immediate ( ) , true ) ,
@@ -406,7 +407,7 @@ impl<'a, 'gcc, 'tcx> IntrinsicCallMethods<'tcx> for Builder<'a, 'gcc, 'tcx> {
406
407
fn abort ( & mut self ) {
407
408
let func = self . context . get_builtin_function ( "abort" ) ;
408
409
let func: RValue < ' gcc > = unsafe { std:: mem:: transmute ( func) } ;
409
- self . call ( self . type_void ( ) , None , None , func, & [ ] , None ) ;
410
+ self . call ( self . type_void ( ) , None , None , func, & [ ] , None , None ) ;
410
411
}
411
412
412
413
fn assume ( & mut self , value : Self :: Value ) {
@@ -1108,7 +1109,7 @@ fn try_intrinsic<'a, 'b, 'gcc, 'tcx>(
1108
1109
dest : RValue < ' gcc > ,
1109
1110
) {
1110
1111
if bx. sess ( ) . panic_strategy ( ) == PanicStrategy :: Abort {
1111
- bx. call ( bx. type_void ( ) , None , None , try_func, & [ data] , None ) ;
1112
+ bx. call ( bx. type_void ( ) , None , None , try_func, & [ data] , None , None ) ;
1112
1113
// Return 0 unconditionally from the intrinsic call;
1113
1114
// we can never unwind.
1114
1115
let ret_align = bx. tcx . data_layout . i32_align . abi ;
@@ -1182,21 +1183,21 @@ fn codegen_gnu_try<'gcc>(
1182
1183
let zero = bx. cx . context . new_rvalue_zero ( bx. int_type ) ;
1183
1184
let ptr = bx. cx . context . new_call ( None , eh_pointer_builtin, & [ zero] ) ;
1184
1185
let catch_ty = bx. type_func ( & [ bx. type_i8p ( ) , bx. type_i8p ( ) ] , bx. type_void ( ) ) ;
1185
- bx. call ( catch_ty, None , None , catch_func, & [ data, ptr] , None ) ;
1186
+ bx. call ( catch_ty, None , None , catch_func, & [ data, ptr] , None , None ) ;
1186
1187
bx. ret ( bx. const_i32 ( 1 ) ) ;
1187
1188
1188
1189
// NOTE: the blocks must be filled before adding the try/catch, otherwise gcc will not
1189
1190
// generate a try/catch.
1190
1191
// FIXME(antoyo): add a check in the libgccjit API to prevent this.
1191
1192
bx. switch_to_block ( current_block) ;
1192
- bx. invoke ( try_func_ty, None , None , try_func, & [ data] , then, catch, None ) ;
1193
+ bx. invoke ( try_func_ty, None , None , try_func, & [ data] , then, catch, None , None ) ;
1193
1194
} ) ;
1194
1195
1195
1196
let func = unsafe { std:: mem:: transmute ( func) } ;
1196
1197
1197
1198
// Note that no invoke is used here because by definition this function
1198
1199
// can't panic (that's what it's catching).
1199
- let ret = bx. call ( llty, None , None , func, & [ try_func, data, catch_func] , None ) ;
1200
+ let ret = bx. call ( llty, None , None , func, & [ try_func, data, catch_func] , None , None ) ;
1200
1201
let i32_align = bx. tcx ( ) . data_layout . i32_align . abi ;
1201
1202
bx. store ( ret, dest, i32_align) ;
1202
1203
}
0 commit comments