diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2015-05-22 21:47:24 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2015-05-22 21:47:24 +0000 |
commit | a3b3952ccd870708b5f01bd964821d2c3a9277bc (patch) | |
tree | 585559a23561c3772b20dbd3f79aff8a30dd6f40 /compiler-rt | |
parent | f5019e60c76a248cdeb358d52ce8243f00e6d34d (diff) | |
download | bcm5719-llvm-a3b3952ccd870708b5f01bd964821d2c3a9277bc.tar.gz bcm5719-llvm-a3b3952ccd870708b5f01bd964821d2c3a9277bc.zip |
builtins: mark functions as aapcs on Windows
Windows does not use AAPCS, but rather AAPCS-VFP, and thus the functions which
are assumed to be AAPCS will cause invalid argument setup. Ensure that the
functions are marked as AAPCS.
llvm-svn: 238056
Diffstat (limited to 'compiler-rt')
-rw-r--r-- | compiler-rt/lib/builtins/int_lib.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler-rt/lib/builtins/int_lib.h b/compiler-rt/lib/builtins/int_lib.h index ff314da986f..bca5d81d441 100644 --- a/compiler-rt/lib/builtins/int_lib.h +++ b/compiler-rt/lib/builtins/int_lib.h @@ -28,7 +28,11 @@ # define COMPILER_RT_ABI __attribute__((pcs("aapcs"))) #else # define ARM_EABI_FNALIAS(aeabi_name, name) -# define COMPILER_RT_ABI +# if defined(__arm__) && defined(_WIN32) +# define COMPILER_RT_ABI __attribute__((pcs("aapcs"))) +# else +# define COMPILER_RT_ABI +# endif #endif #if defined(__NetBSD__) && (defined(_KERNEL) || defined(_STANDALONE)) |