diff options
author | Tim Northover <tnorthover@apple.com> | 2015-01-16 18:44:04 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2015-01-16 18:44:04 +0000 |
commit | 7ad87af2773b31abc97c6cafd171f51dcc7dd332 (patch) | |
tree | f3380ba9221ec3c6df849d8f3752fe47d3e45045 /clang/lib/Basic/Targets.cpp | |
parent | 949dc41502ff3ee9e34166080cc7861df1cd2a79 (diff) | |
download | bcm5719-llvm-7ad87af2773b31abc97c6cafd171f51dcc7dd332.tar.gz bcm5719-llvm-7ad87af2773b31abc97c6cafd171f51dcc7dd332.zip |
AArch64: implement AAPCS layout rules for bit-fields.
llvm-svn: 226294
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 45a37172926..9aac3b78643 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -4650,6 +4650,13 @@ public: // specifiers. NoAsmVariants = true; + // AAPCS gives rules for bitfields. 7.1.7 says: "The container type + // contributes to the alignment of the containing aggregate in the same way + // a plain (non bit-field) member of that type would, without exception for + // zero-sized or anonymous bit-fields." + UseBitFieldTypeAlignment = true; + UseZeroLengthBitfieldAlignment = true; + // AArch64 targets default to using the ARM C++ ABI. TheCXXABI.set(TargetCXXABI::GenericAArch64); } |