mirror of
https://github.com/RPCSX/llvm.git
synced 2025-03-03 02:17:41 +00:00
Add comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165958 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
32522201a8
commit
5a0eeb5a9d
@ -52,6 +52,7 @@ public:
|
||||
/// uwtable + nounwind = Needs an entry because the ABI says so.
|
||||
|
||||
enum AttrVal {
|
||||
// IR-Level Attributes
|
||||
None = 0, ///< No attributes have been set
|
||||
AddressSafety = 1, ///< Address safety checking is on.
|
||||
Alignment = 2, ///< Alignment of parameter (5 bits)
|
||||
@ -120,23 +121,38 @@ public:
|
||||
|
||||
void clear() { Bits = 0; }
|
||||
|
||||
bool hasAttribute(Attributes::AttrVal A) const;
|
||||
bool hasAttributes() const;
|
||||
bool hasAttributes(const Attributes &A) const;
|
||||
bool hasAlignmentAttr() const;
|
||||
|
||||
uint64_t getAlignment() const;
|
||||
uint64_t getStackAlignment() const;
|
||||
|
||||
/// addAttribute - Add an attribute to the builder.
|
||||
Builder &addAttribute(Attributes::AttrVal Val);
|
||||
|
||||
/// removeAttribute - Remove an attribute from the builder.
|
||||
Builder &removeAttribute(Attributes::AttrVal Val);
|
||||
|
||||
/// addAttribute - Add the attributes from A to the builder.
|
||||
Builder &addAttributes(const Attributes &A);
|
||||
|
||||
/// removeAttribute - Remove the attributes from A from the builder.
|
||||
Builder &removeAttributes(const Attributes &A);
|
||||
|
||||
/// addRawValue - Add the raw value to the internal representation. This
|
||||
/// should be used ONLY for decoding bitcode!
|
||||
Builder &addRawValue(uint64_t Val);
|
||||
/// hasAttribute - Return true if the builder has the specified attribute.
|
||||
bool hasAttribute(Attributes::AttrVal A) const;
|
||||
|
||||
/// hasAttributes - Return true if the builder has IR-level attributes.
|
||||
bool hasAttributes() const;
|
||||
|
||||
/// hasAttributes - Return true if the builder has any attribute that's in
|
||||
/// the specified attribute.
|
||||
bool hasAttributes(const Attributes &A) const;
|
||||
|
||||
/// hasAlignmentAttr - Return true if the builder has an alignment
|
||||
/// attribute.
|
||||
bool hasAlignmentAttr() const;
|
||||
|
||||
/// getAlignment - Retrieve the alignment attribute, if it exists.
|
||||
uint64_t getAlignment() const;
|
||||
|
||||
/// getStackAlignment - Retrieve the stack alignment attribute, if it
|
||||
/// exists.
|
||||
uint64_t getStackAlignment() const;
|
||||
|
||||
/// addAlignmentAttr - This turns an int alignment (which must be a power of
|
||||
/// 2) into the form used internally in Attributes.
|
||||
@ -146,6 +162,10 @@ public:
|
||||
/// a power of 2) into the form used internally in Attributes.
|
||||
Builder &addStackAlignmentAttr(unsigned Align);
|
||||
|
||||
/// addRawValue - Add the raw value to the internal representation.
|
||||
/// N.B. This should be used ONLY for decoding LLVM bitcode!
|
||||
Builder &addRawValue(uint64_t Val);
|
||||
|
||||
/// @brief Remove attributes that are used on functions only.
|
||||
void removeFunctionOnlyAttrs() {
|
||||
removeAttribute(Attributes::NoReturn)
|
||||
|
Loading…
x
Reference in New Issue
Block a user