diff options
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 4 | ||||
| -rw-r--r-- | clang/test/Preprocessor/init.c | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 1971042fc87..e2db335cb3a 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -1395,6 +1395,9 @@ void PPCTargetInfo::getTargetDefines(const LangOptions &Opts, if (PointerWidth == 64) Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8"); + // We have support for the bswap intrinsics so we can define this. + Builder.defineMacro("__HAVE_BSWAP__", "1"); + // FIXME: The following are not yet generated here by Clang, but are // generated by GCC: // @@ -1407,7 +1410,6 @@ void PPCTargetInfo::getTargetDefines(const LangOptions &Opts, // __RSQRTEF__ // _SOFT_DOUBLE_ // __NO_LWSYNC__ - // __HAVE_BSWAP__ // __LONGDOUBLE128 // __CMODEL_MEDIUM__ // __CMODEL_LARGE__ diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c index 3fc5907e4d3..55055481058 100644 --- a/clang/test/Preprocessor/init.c +++ b/clang/test/Preprocessor/init.c @@ -5560,6 +5560,7 @@ // PPC64:#define __FLT_MIN_EXP__ (-125) // PPC64:#define __FLT_MIN__ 1.17549435e-38F // PPC64:#define __FLT_RADIX__ 2 +// PPC64:#define __HAVE_BSWAP__ 1 // PPC64:#define __INT16_C_SUFFIX__ // PPC64:#define __INT16_FMTd__ "hd" // PPC64:#define __INT16_FMTi__ "hi" @@ -5763,6 +5764,7 @@ // PPC64LE:#define __FLT_MIN_EXP__ (-125) // PPC64LE:#define __FLT_MIN__ 1.17549435e-38F // PPC64LE:#define __FLT_RADIX__ 2 +// PPC64LE:#define __HAVE_BSWAP__ 1 // PPC64LE:#define __INT16_C_SUFFIX__ // PPC64LE:#define __INT16_FMTd__ "hd" // PPC64LE:#define __INT16_FMTi__ "hi" @@ -6182,6 +6184,7 @@ // PPC64-LINUX:#define __FLT_MIN_EXP__ (-125) // PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F // PPC64-LINUX:#define __FLT_RADIX__ 2 +// PPC64-LINUX:#define __HAVE_BSWAP__ 1 // PPC64-LINUX:#define __INT16_C_SUFFIX__ // PPC64-LINUX:#define __INT16_FMTd__ "hd" // PPC64-LINUX:#define __INT16_FMTi__ "hi" @@ -6393,6 +6396,7 @@ // PPC:#define __FLT_MIN_EXP__ (-125) // PPC:#define __FLT_MIN__ 1.17549435e-38F // PPC:#define __FLT_RADIX__ 2 +// PPC:#define __HAVE_BSWAP__ 1 // PPC:#define __INT16_C_SUFFIX__ // PPC:#define __INT16_FMTd__ "hd" // PPC:#define __INT16_FMTi__ "hi" @@ -6584,6 +6588,7 @@ // PPC-LINUX:#define __FLT_MIN_EXP__ (-125) // PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F // PPC-LINUX:#define __FLT_RADIX__ 2 +// PPC-LINUX:#define __HAVE_BSWAP__ 1 // PPC-LINUX:#define __INT16_C_SUFFIX__ // PPC-LINUX:#define __INT16_FMTd__ "hd" // PPC-LINUX:#define __INT16_FMTi__ "hi" @@ -6775,6 +6780,7 @@ // PPC-DARWIN:#define __FLT_MIN_EXP__ (-125) // PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F // PPC-DARWIN:#define __FLT_RADIX__ 2 +// PPC-DARWIN:#define __HAVE_BSWAP__ 1 // PPC-DARWIN:#define __INT16_C_SUFFIX__ // PPC-DARWIN:#define __INT16_FMTd__ "hd" // PPC-DARWIN:#define __INT16_FMTi__ "hi" |

