@@ -361,7 +361,14 @@ pub fn adjust_intrinsic_arguments<'a, 'b, 'gcc, 'tcx>(
361
361
let minus_one = builder. context . new_rvalue_from_int ( arg4_type, -1 ) ;
362
362
args = vec ! [ new_args[ 1 ] , new_args[ 0 ] , new_args[ 2 ] , minus_one] . into ( ) ;
363
363
}
364
- "__builtin_ia32_xrstor" | "__builtin_ia32_xsavec" => {
364
+ "__builtin_ia32_xrstor"
365
+ | "__builtin_ia32_xrstor64"
366
+ | "__builtin_ia32_xsavec"
367
+ | "__builtin_ia32_xsavec64"
368
+ | "__builtin_ia32_xsave"
369
+ | "__builtin_ia32_xsave64"
370
+ | "__builtin_ia32_xsaveopt"
371
+ | "__builtin_ia32_xsaveopt64" => {
365
372
let new_args = args. to_vec ( ) ;
366
373
let thirty_two = builder. context . new_rvalue_from_int ( new_args[ 1 ] . get_type ( ) , 32 ) ;
367
374
let arg2 = new_args[ 1 ] << thirty_two | new_args[ 2 ] ;
@@ -824,7 +831,7 @@ pub fn intrinsic<'gcc, 'tcx>(name: &str, cx: &CodegenCx<'gcc, 'tcx>) -> Function
824
831
"llvm.x86.xrstor" => "__builtin_ia32_xrstor" ,
825
832
"llvm.x86.xrstor64" => "__builtin_ia32_xrstor64" ,
826
833
"llvm.x86.xsavec" => "__builtin_ia32_xsavec" ,
827
- "llvm.x86.xsave64 " => "__builtin_ia32_xsave64 " ,
834
+ "llvm.x86.xsavec64 " => "__builtin_ia32_xsavec64 " ,
828
835
"llvm.x86.addcarry.32" => "__builtin_ia32_addcarryx_u32" ,
829
836
"llvm.x86.subborrow.32" => "__builtin_ia32_sbb_u32" ,
830
837
"llvm.x86.avx512.mask.compress.store.w.512" => "__builtin_ia32_compressstoreuhi512_mask" ,
@@ -1029,6 +1036,7 @@ pub fn intrinsic<'gcc, 'tcx>(name: &str, cx: &CodegenCx<'gcc, 'tcx>) -> Function
1029
1036
"llvm.x86.avx512.vpdpbusds.256" => "__builtin_ia32_vpdpbusds_v8si" ,
1030
1037
"llvm.x86.avx512.vpdpbusds.128" => "__builtin_ia32_vpdpbusds_v4si" ,
1031
1038
"llvm.x86.xsave" => "__builtin_ia32_xsave" ,
1039
+ "llvm.x86.xsave64" => "__builtin_ia32_xsave64" ,
1032
1040
"llvm.x86.xsaveopt" => "__builtin_ia32_xsaveopt" ,
1033
1041
"llvm.x86.xsaveopt64" => "__builtin_ia32_xsaveopt64" ,
1034
1042
"llvm.x86.avx512.mask.loadu.w.512" => "__builtin_ia32_loaddquhi512_mask" ,
0 commit comments