@@ -288,8 +288,8 @@ pub fn trans_intrinsic_call<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
288
288
let val = bcx. call ( llfn, & [ llargs[ 0 ] , llargs[ 1 ] ] , None ) ;
289
289
let result = bcx. extract_value ( val, 0 ) ;
290
290
let overflow = bcx. zext ( bcx. extract_value ( val, 1 ) , Type :: bool ( ccx) ) ;
291
- bcx. store ( result, bcx. struct_gep ( llresult, 0 ) ) ;
292
- bcx. store ( overflow, bcx. struct_gep ( llresult, 1 ) ) ;
291
+ bcx. store ( result, bcx. struct_gep ( llresult, 0 ) , None ) ;
292
+ bcx. store ( overflow, bcx. struct_gep ( llresult, 1 ) , None ) ;
293
293
294
294
C_nil ( bcx. ccx )
295
295
} ,
@@ -407,8 +407,8 @@ pub fn trans_intrinsic_call<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
407
407
failorder, weak) ;
408
408
let result = bcx. extract_value ( val, 0 ) ;
409
409
let success = bcx. zext ( bcx. extract_value ( val, 1 ) , Type :: bool ( bcx. ccx ) ) ;
410
- bcx. store ( result, bcx. struct_gep ( llresult, 0 ) ) ;
411
- bcx. store ( success, bcx. struct_gep ( llresult, 1 ) ) ;
410
+ bcx. store ( result, bcx. struct_gep ( llresult, 0 ) , None ) ;
411
+ bcx. store ( success, bcx. struct_gep ( llresult, 1 ) , None ) ;
412
412
} else {
413
413
invalid_monomorphization ( sty) ;
414
414
}
@@ -613,7 +613,7 @@ pub fn trans_intrinsic_call<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
613
613
614
614
for i in 0 ..elems. len ( ) {
615
615
let val = bcx. extract_value ( val, i) ;
616
- bcx. store ( val, bcx. struct_gep ( llresult, i) ) ;
616
+ bcx. store ( val, bcx. struct_gep ( llresult, i) , None ) ;
617
617
}
618
618
C_nil ( ccx)
619
619
}
@@ -625,10 +625,7 @@ pub fn trans_intrinsic_call<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
625
625
if val_ty ( llval) != Type :: void ( ccx) && machine:: llsize_of_alloc ( ccx, val_ty ( llval) ) != 0 {
626
626
if let Some ( ty) = fn_ty. ret . cast {
627
627
let ptr = bcx. pointercast ( llresult, ty. ptr_to ( ) ) ;
628
- let store = bcx. store ( llval, ptr) ;
629
- unsafe {
630
- llvm:: LLVMSetAlignment ( store, type_of:: align_of ( ccx, ret_ty) ) ;
631
- }
628
+ bcx. store ( llval, ptr, Some ( type_of:: align_of ( ccx, ret_ty) ) ) ;
632
629
} else {
633
630
store_ty ( bcx, llval, llresult, ret_ty) ;
634
631
}
@@ -695,7 +692,7 @@ fn try_intrinsic<'a, 'tcx>(
695
692
) {
696
693
if bcx. sess ( ) . no_landing_pads ( ) {
697
694
bcx. call ( func, & [ data] , None ) ;
698
- bcx. store ( C_null ( Type :: i8p ( & bcx. ccx ) ) , dest) ;
695
+ bcx. store ( C_null ( Type :: i8p ( & bcx. ccx ) ) , dest, None ) ;
699
696
} else if wants_msvc_seh ( bcx. sess ( ) ) {
700
697
trans_msvc_try ( bcx, func, data, local_ptr, dest) ;
701
698
} else {
@@ -789,8 +786,8 @@ fn trans_msvc_try<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
789
786
let val1 = C_i32 ( ccx, 1 ) ;
790
787
let arg2 = catchpad. load ( catchpad. inbounds_gep ( addr, & [ val1] ) ) ;
791
788
let local_ptr = catchpad. bitcast ( local_ptr, i64p) ;
792
- catchpad. store ( arg1, local_ptr) ;
793
- catchpad. store ( arg2, catchpad. inbounds_gep ( local_ptr, & [ val1] ) ) ;
789
+ catchpad. store ( arg1, local_ptr, None ) ;
790
+ catchpad. store ( arg2, catchpad. inbounds_gep ( local_ptr, & [ val1] ) , None ) ;
794
791
catchpad. catch_ret ( tok, caught. llbb ( ) ) ;
795
792
796
793
caught. ret ( C_i32 ( ccx, 1 ) ) ;
@@ -799,7 +796,7 @@ fn trans_msvc_try<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
799
796
// Note that no invoke is used here because by definition this function
800
797
// can't panic (that's what it's catching).
801
798
let ret = bcx. call ( llfn, & [ func, data, local_ptr] , None ) ;
802
- bcx. store ( ret, dest) ;
799
+ bcx. store ( ret, dest, None ) ;
803
800
}
804
801
805
802
// Definition of the standard "try" function for Rust using the GNU-like model
@@ -858,14 +855,14 @@ fn trans_gnu_try<'a, 'tcx>(bcx: &BlockAndBuilder<'a, 'tcx>,
858
855
let vals = catch. landing_pad ( lpad_ty, bcx. ccx . eh_personality ( ) , 1 , catch. fcx ( ) . llfn ) ;
859
856
catch. add_clause ( vals, C_null ( Type :: i8p ( ccx) ) ) ;
860
857
let ptr = catch. extract_value ( vals, 0 ) ;
861
- catch. store ( ptr, catch. bitcast ( local_ptr, Type :: i8p ( ccx) . ptr_to ( ) ) ) ;
858
+ catch. store ( ptr, catch. bitcast ( local_ptr, Type :: i8p ( ccx) . ptr_to ( ) ) , None ) ;
862
859
catch. ret ( C_i32 ( ccx, 1 ) ) ;
863
860
} ) ;
864
861
865
862
// Note that no invoke is used here because by definition this function
866
863
// can't panic (that's what it's catching).
867
864
let ret = bcx. call ( llfn, & [ func, data, local_ptr] , None ) ;
868
- bcx. store ( ret, dest) ;
865
+ bcx. store ( ret, dest, None ) ;
869
866
}
870
867
871
868
// Helper function to give a Block to a closure to translate a shim function.
0 commit comments