From 21dbb99964f0568d2d3d3fc7e2bd5967e7577bd1 Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Tue, 2 Sep 2008 18:33:55 +0000 Subject: [PATCH] Getter and setter for function notes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55638 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Function.h | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/include/llvm/Function.h b/include/llvm/Function.h index 0e852e6ba1e..58edab480ac 100644 --- a/include/llvm/Function.h +++ b/include/llvm/Function.h @@ -51,6 +51,12 @@ template<> struct ilist_traits static int getListOffset(); }; +typedef unsigned FunctionNotes; +const FunctionNotes FP_None = 0; +const FunctionNotes FP_NoInline = 1<<0; +const FunctionNotes FP_AlwaysInline = 1<<1; +const FunctionNotes FP_OptimizeForSize = 1<<2; + class Function : public GlobalValue, public Annotable, public ilist_node { public: @@ -70,7 +76,8 @@ private: mutable ArgumentListType ArgumentList; ///< The formal arguments ValueSymbolTable *SymTab; ///< Symbol table of args/instructions PAListPtr ParamAttrs; ///< Parameter attributes - + FunctionNotes Notes; ///< Function properties + // The Calling Convention is stored in Value::SubclassData. /*unsigned CallingConvention;*/ @@ -148,6 +155,14 @@ public: /// void setParamAttrs(const PAListPtr &attrs) { ParamAttrs = attrs; } + /// getNotes - Return this function properties + /// + const FunctionNotes &getNotes() const { return Notes; } + + /// setNotes - Set properties for this function + /// + void setNotes(const FunctionNotes P) { Notes = P;} + /// hasGC/getGC/setGC/clearGC - The name of the garbage collection algorithm /// to use during code generation. bool hasGC() const; -- 2.34.1