From d18e31ae17390d9c6f6cf93d18badf962452031d Mon Sep 17 00:00:00 2001
From: Devang Patel <dpatel@apple.com>
Date: Thu, 4 Jun 2009 22:05:33 +0000
Subject: Add new function attribute - noredzone. Update code generator to use
 this attribute and remove DisableRedZone target option. Update llc to set
 this attribute when -disable-red-zone command line option is used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72894 91177308-0d34-0410-b5e6-96231b3b80d8
---
 include/llvm/Attributes.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

(limited to 'include/llvm/Attributes.h')

diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h
index 972dbfa..492b023 100644
--- a/include/llvm/Attributes.h
+++ b/include/llvm/Attributes.h
@@ -54,13 +54,15 @@ const Attributes Alignment = 31<<16; ///< Alignment of parameter (5 bits)
                                      // stored as log2 of alignment with +1 bias
                                      // 0 means unaligned different from align 1
 const Attributes NoCapture = 1<<21; ///< Function creates no aliases of pointer
+const Attributes NoRedZone = 1<<22; /// disable redzone
 
 /// @brief Attributes that only apply to function parameters.
 const Attributes ParameterOnly = ByVal | Nest | StructRet | NoCapture;
 
 /// @brief Attributes that only apply to function.
 const Attributes FunctionOnly = NoReturn | NoUnwind | ReadNone | ReadOnly | 
-  NoInline | AlwaysInline | OptimizeForSize | StackProtect | StackProtectReq;
+  NoInline | AlwaysInline | OptimizeForSize | StackProtect | StackProtectReq |
+  NoRedZone;
 
 /// @brief Parameter attributes that do not apply to vararg call arguments.
 const Attributes VarArgsIncompatible = StructRet;
-- 
cgit v1.1