diff options
Diffstat (limited to 'contrib/llvm/include/llvm/IR/Function.h')
-rw-r--r-- | contrib/llvm/include/llvm/IR/Function.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/contrib/llvm/include/llvm/IR/Function.h b/contrib/llvm/include/llvm/IR/Function.h index 2a98393..4f64cae 100644 --- a/contrib/llvm/include/llvm/IR/Function.h +++ b/contrib/llvm/include/llvm/IR/Function.h @@ -66,7 +66,8 @@ private: * bit 2 : HasPrologueData * bit 3 : HasPersonalityFn * bits 4-13 : CallingConvention - * bits 14-15 : [reserved] + * bits 14 : HasGC + * bits 15 : [reserved] */ /// Bits from GlobalObject::GlobalObjectSubclassData. @@ -220,9 +221,11 @@ public: /// hasGC/getGC/setGC/clearGC - The name of the garbage collection algorithm /// to use during code generation. - bool hasGC() const; - const char *getGC() const; - void setGC(const char *Str); + bool hasGC() const { + return getSubclassDataFromValue() & (1<<14); + } + const std::string &getGC() const; + void setGC(const std::string Str); void clearGC(); /// @brief adds the attribute to the list of attributes. |