diff options
author | 2017-12-26 20:59:44 +0000 | |
---|---|---|
committer | 2017-12-26 20:59:44 +0000 | |
commit | c72a1c0960669bfd1eb87723f902bc05ee727707 (patch) | |
tree | 46e715b14e68651d2b18adda557278098e9bb0d4 /lib/libcompiler_rt/int_lib.h | |
parent | Cherry-pick a change from LLVM that marks specific pseudo memory (diff) | |
download | wireguard-openbsd-c72a1c0960669bfd1eb87723f902bc05ee727707.tar.xz wireguard-openbsd-c72a1c0960669bfd1eb87723f902bc05ee727707.zip |
Update to compiler-rt 5.0.1.
ok kettenis@
Diffstat (limited to 'lib/libcompiler_rt/int_lib.h')
-rw-r--r-- | lib/libcompiler_rt/int_lib.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/lib/libcompiler_rt/int_lib.h b/lib/libcompiler_rt/int_lib.h index 8dfe5672d13..9a8092d50d8 100644 --- a/lib/libcompiler_rt/int_lib.h +++ b/lib/libcompiler_rt/int_lib.h @@ -30,14 +30,17 @@ /* ABI macro definitions */ #if __ARM_EABI__ -# define ARM_EABI_FNALIAS(aeabi_name, name) \ - void __aeabi_##aeabi_name() __attribute__((alias("__" #name))); -# define COMPILER_RT_ABI __attribute__((pcs("aapcs"))) +# ifdef COMPILER_RT_ARMHF_TARGET +# define COMPILER_RT_ABI +# else +# define COMPILER_RT_ABI __attribute__((__pcs__("aapcs"))) +# endif #else -# define ARM_EABI_FNALIAS(aeabi_name, name) # define COMPILER_RT_ABI #endif +#define AEABI_RTABI __attribute__((__pcs__("aapcs"))) + #ifdef _MSC_VER #define ALWAYS_INLINE __forceinline #define NOINLINE __declspec(noinline) @@ -91,14 +94,14 @@ COMPILER_RT_ABI tu_int __udivmodti4(tu_int a, tu_int b, tu_int* rem); #include <intrin.h> uint32_t __inline __builtin_ctz(uint32_t value) { - uint32_t trailing_zero = 0; + unsigned long trailing_zero = 0; if (_BitScanForward(&trailing_zero, value)) return trailing_zero; return 32; } uint32_t __inline __builtin_clz(uint32_t value) { - uint32_t leading_zero = 0; + unsigned long leading_zero = 0; if (_BitScanReverse(&leading_zero, value)) return 31 - leading_zero; return 32; @@ -106,7 +109,7 @@ uint32_t __inline __builtin_clz(uint32_t value) { #if defined(_M_ARM) || defined(_M_X64) uint32_t __inline __builtin_clzll(uint64_t value) { - uint32_t leading_zero = 0; + unsigned long leading_zero = 0; if (_BitScanReverse64(&leading_zero, value)) return 63 - leading_zero; return 64; |