aboutsummaryrefslogtreecommitdiffstats
path: root/lib/VMCore/Attributes.cpp
diff options
context:
space:
mode:
authorCharles Davis <cdavis@mines.edu>2010-02-12 00:31:15 +0000
committerCharles Davis <cdavis@mines.edu>2010-02-12 00:31:15 +0000
commitfaa8f7551edc8a2b2cee106026adc7c4395c6455 (patch)
tree13d4b73826e6b511d2776a42af7549b53eed0371 /lib/VMCore/Attributes.cpp
parentdec66800d0c57b2bc6e93cb5ed5e119238519bf4 (diff)
downloadexternal_llvm-faa8f7551edc8a2b2cee106026adc7c4395c6455.zip
external_llvm-faa8f7551edc8a2b2cee106026adc7c4395c6455.tar.gz
external_llvm-faa8f7551edc8a2b2cee106026adc7c4395c6455.tar.bz2
Add a new function attribute, 'alignstack'. It will indicate (when the backends
implement support for it) that the stack should be forcibly realigned in the prologue (and the process reversed in the epilogue). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95945 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/Attributes.cpp')
-rw-r--r--lib/VMCore/Attributes.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/VMCore/Attributes.cpp b/lib/VMCore/Attributes.cpp
index a371c6f..6fa597e 100644
--- a/lib/VMCore/Attributes.cpp
+++ b/lib/VMCore/Attributes.cpp
@@ -70,6 +70,11 @@ std::string Attribute::getAsString(Attributes Attrs) {
Result += "noimplicitfloat ";
if (Attrs & Attribute::Naked)
Result += "naked ";
+ if (Attrs & Attribute::StackAlignment) {
+ Result += "alignstack(";
+ Result += utostr(Attribute::getStackAlignmentFromAttrs(Attrs));
+ Result += ") ";
+ }
if (Attrs & Attribute::Alignment) {
Result += "align ";
Result += utostr(Attribute::getAlignmentFromAttrs(Attrs));