summaryrefslogtreecommitdiffstats
path: root/compiler-rt
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2015-05-22 21:47:24 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2015-05-22 21:47:24 +0000
commita3b3952ccd870708b5f01bd964821d2c3a9277bc (patch)
tree585559a23561c3772b20dbd3f79aff8a30dd6f40 /compiler-rt
parentf5019e60c76a248cdeb358d52ce8243f00e6d34d (diff)
downloadbcm5719-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.h6
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))
OpenPOWER on IntegriCloud