Live interval splitting:
[oota-llvm.git] / include / llvm / ParameterAttributes.h
index c2d60786c259ff08446b0e228364fb6d4d73ff96..5d3ef9aba72ee59bc9aa610af131a3ef67580c9e 100644 (file)
@@ -29,14 +29,18 @@ namespace ParamAttr {
 /// results.
 /// @brief Function parameter attributes.
 enum Attributes {
-  None       = 0,      ///< No attributes have been set
-  ZExt       = 1 << 0, ///< zero extended before/after call
-  SExt       = 1 << 1, ///< sign extended before/after call
-  NoReturn   = 1 << 2, ///< mark the function as not returning
-  InReg      = 1 << 3, ///< force argument to be passed in register
-  StructRet  = 1 << 4, ///< hidden pointer to structure to return
-  NoUnwind   = 1 << 5, ///< Function doesn't unwind stack
-  NoAlias    = 1 << 6  ///< Considered to not alias after call.
+  None       = 0,       ///< No attributes have been set
+  ZExt       = 1 << 0,  ///< Zero extended before/after call
+  SExt       = 1 << 1,  ///< Sign extended before/after call
+  NoReturn   = 1 << 2,  ///< Mark the function as not returning
+  InReg      = 1 << 3,  ///< Force argument to be passed in register
+  StructRet  = 1 << 4,  ///< Hidden pointer to structure to return
+  NoUnwind   = 1 << 5,  ///< Function doesn't unwind stack
+  NoAlias    = 1 << 6,  ///< Considered to not alias after call
+  ByVal      = 1 << 7,  ///< Pass structure by value
+  Nest       = 1 << 8,  ///< Nested function static chain
+  Pure       = 1 << 9,  ///< Function is pure
+  Const      = 1 << 10  ///< Function is const
 };
 
 }