From f35eeda5f4574410d2ec2fc9e0d6bf0833e19139 Mon Sep 17 00:00:00 2001 From: Bradley Smith Date: Mon, 20 Jan 2014 10:52:00 +0000 Subject: [PATCH] [ARM] Add ACLE enum/wchar size predefines git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199642 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Basic/Targets.cpp | 6 ++++++ test/Preprocessor/arm-target-features.c | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 65864cd1d0..72f66416fb 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -4028,6 +4028,12 @@ public: Builder.defineMacro("__ARM_NEON__"); } + Builder.defineMacro("__ARM_SIZEOF_WCHAR_T", + Opts.ShortWChar ? "2" : "4"); + + Builder.defineMacro("__ARM_SIZEOF_MINIMAL_ENUM", + Opts.ShortEnums ? "1" : "4"); + if (CRC) Builder.defineMacro("__ARM_FEATURE_CRC32"); diff --git a/test/Preprocessor/arm-target-features.c b/test/Preprocessor/arm-target-features.c index 4d40bcb3c6..c8aeb1ef70 100644 --- a/test/Preprocessor/arm-target-features.c +++ b/test/Preprocessor/arm-target-features.c @@ -68,6 +68,15 @@ // RUN: %clang -target armv8a-eabi -x c -E -dM %s -o - | FileCheck --check-prefix=THUMBV8A-EABI %s // THUMBV8A-EABI:#define __ARM_ARCH_EXT_IDIV__ 1 +// RUN: %clang -target arm-none-linux-gnu -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-DEFS %s +// CHECK-DEFS:#define __ARM_SIZEOF_MINIMAL_ENUM 4 +// CHECK-DEFS:#define __ARM_SIZEOF_WCHAR_T 4 + +// RUN: %clang -target arm-none-linux-gnu -fshort-wchar -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTWCHAR %s +// CHECK-SHORTWCHAR:#define __ARM_SIZEOF_WCHAR_T 2 + +// RUN: %clang -target arm-none-linux-gnu -fshort-enums -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTENUMS %s +// CHECK-SHORTENUMS:#define __ARM_SIZEOF_MINIMAL_ENUM 1 // Test that -mhwdiv has the right effect for a target CPU which has hwdiv enabled by default. // RUN: %clang -target armv7 -mcpu=cortex-a15 -x c -E -dM %s -o - | FileCheck --check-prefix=DEFAULTHWDIV-ARM %s -- 2.50.0