diff options
author | Andrey Turetskiy <andrey.turetskiy@gmail.com> | 2016-02-10 11:58:46 +0000 |
---|---|---|
committer | Andrey Turetskiy <andrey.turetskiy@gmail.com> | 2016-02-10 11:58:46 +0000 |
commit | db6655fd902a9f012e26b63033001e52dbbc1db6 (patch) | |
tree | 75b9c478e0eae6b6fd4cc6af72e3e2fb0ada16de /clang/lib/Basic/Targets.cpp | |
parent | 2396c38a8a9962d23f66357b0932cf2795b0f360 (diff) | |
download | bcm5719-llvm-db6655fd902a9f012e26b63033001e52dbbc1db6.tar.gz bcm5719-llvm-db6655fd902a9f012e26b63033001e52dbbc1db6.zip |
[X86] Fix stack alignment for MCU target (Clang part), by Anton Nadolskiy.
This patch fixes stack alignments for MCU (should be aligned to 4 bytes).
Differential Revision: http://reviews.llvm.org/D15647
llvm-svn: 260376
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 3788a82a5fb..5501ceb7021 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3807,6 +3807,8 @@ public: : WindowsX86_32TargetInfo(Triple) { LongDoubleWidth = LongDoubleAlign = 64; LongDoubleFormat = &llvm::APFloat::IEEEdouble; + DataLayoutString = + "e-m:e-p:32:32-i64:32-f64:32-f128:32-n8:16:32-a:0:32-S32"; } void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override { @@ -3926,6 +3928,10 @@ public: Builder.defineMacro("__iamcu"); Builder.defineMacro("__iamcu__"); } + + bool allowsLargerPreferedTypeAlignment() const override { + return false; + } }; // RTEMS Target @@ -7491,6 +7497,9 @@ public: // R0=ExceptionPointerRegister R1=ExceptionSelectorRegister return (RegNo < 2)? RegNo : -1; } + bool allowsLargerPreferedTypeAlignment() const override { + return false; + } }; const Builtin::Info XCoreTargetInfo::BuiltinInfo[] = { |