Holds attributes for a function, its return value, and its parameters.
Synopsis
Declared in <llvm/IR/Attributes.h>
class AttributeList;
Description
You access the attributes for each of them via an index into the AttributeList object. The function attributes are at index `AttributeList::FunctionIndex', the return value is at index `AttributeList::ReturnIndex', and the attributes for the parameters start at index `AttributeList::FirstArgIndex'.
Types
Name |
Description |
Iterator over valid attribute indexes, including |
Type Aliases
Name |
Description |
Iterator over attribute sets in this list. |
Enums
Name |
Description |
Indices used to address attribute sets within an |
Member Functions
Name |
Description |
|
Construct an empty attribute list. |
Add the allocsize attribute to the attribute set at the given arg index. Returns a new list because attribute lists are immutable. |
|
Add an attribute to the attribute set at the given index. Returns a new list because attribute lists are immutable. |
|
Add attributes to the attribute set at the given index. Returns a new list because attribute lists are immutable. |
|
Add the dereferenceable_or_null attribute to the attribute set at the given arg index. Returns a new list because attribute lists are immutable. |
|
Add the dereferenceable attribute to the attribute set at the given arg index. Returns a new list because attribute lists are immutable. |
|
Add the dereferenceable attribute to the return‐value attribute set. Returns a new list because attribute lists are immutable. |
|
Add a function attribute to the list. Returns a new list because attribute lists are immutable. |
|
Add function attribute to the list. Returns a new list because attribute lists are immutable. |
|
|
|
Add an argument attribute to the list. Returns a new list because attribute lists are immutable. |
|
Add the range attribute to the attribute set at the return value index. Returns a new list because attribute lists are immutable. |
|
Add a return value attribute to the list. Returns a new list because attribute lists are immutable. |
|
Add a return value attribute to the list. Returns a new list because attribute lists are immutable. |
|
Return an iterator to the first attribute set in this list. |
|
Dump this attribute list to stderr (for debugging). |
|
Return an iterator past the last attribute set in this list. |
|
Return the |
|
Return the attributes at the index as a string. |
|
Return the attribute object that exists at the given index. |
|
The attributes for the specified index are returned. |
|
Get the number of dead_on_return bytes (or zero if unknown) of an arg. |
|
Return the attribute object that exists for the function. |
|
The function attributes are returned. |
|
Get the stack alignment of the function. |
|
Returns memory effects of the function. |
|
Return the number of attribute sets stored in this list. |
|
Return the alignment for the specified function parameter. |
|
|
|
The attributes for the argument or parameter at the given index are returned. |
|
Return the byref type for the specified function parameter. |
|
Return the byval type for the specified function parameter. |
|
Get the number of dereferenceable bytes (or zero if unknown) of an arg. |
|
Get the number of dereferenceable_or_null bytes (or zero if unknown) of an arg. |
|
Return the elementtype type for the specified function parameter. |
|
Return the inalloca type for the specified function parameter. |
|
Get the disallowed floating‐point classes of the argument value. |
|
Return the preallocated type for the specified function parameter. |
|
Get range (or std::nullopt if unknown) of an arg. |
|
Return the stack alignment for the specified function parameter. |
|
Return the sret type for the specified function parameter. |
|
Return a raw pointer that uniquely identifies this attribute list. |
|
Return the alignment of the return value. |
|
Return the attribute for the given attribute kind for the return value. |
|
The attributes for the ret value are returned. |
|
Get the number of dereferenceable bytes (or zero if unknown) of the return value. |
|
Get the number of dereferenceable_or_null bytes (or zero if unknown) of the return value. |
|
Get the disallowed floating‐point classes of the return value. |
|
Get the stack alignment of the return value. |
|
Get the unwind table kind requested for the function. |
|
Return true if |
|
Return true if the attribute exists at the given index. |
|
Return true if attribute exists at the given index. |
|
Return true if the attribute exists for the function. |
|
Return true the attributes exist for the function. |
|
Return true if the attribute exists for the given argument |
|
Return true if attributes exists for the given argument |
|
Return true if this attribute list belongs to the LLVMContext. |
|
Return true if the attribute exists for the return value. |
|
Return true if attributes exist for the return value. |
|
Use this to iterate over the valid attribute indexes. |
|
Try to intersect this AttributeList with Other. Returns std::nullopt if the two lists are inherently incompatible (imply different behavior, not just analysis). |
|
Return true if there are no attributes. |
|
Print this attribute list to stream |
|
Remove the specified attribute at the specified index from this attribute list. Returns a new list because attribute lists are immutable. |
|
Remove the specified attribute at the specified index from this attribute list. Returns a new list because attribute lists are immutable. |
|
|
|
Remove the specified attribute at the function index from this attribute list. Returns a new list because attribute lists are immutable. |
|
|
|
Remove the specified attribute at the specified arg index from this attribute list. Returns a new list because attribute lists are immutable. |
|
|
|
Remove the specified attribute at the return value index from this attribute list. Returns a new list because attribute lists are immutable. |
|
Remove the specified attribute at the return value index from this attribute list. Returns a new list because attribute lists are immutable. |
|
Replace the type contained by attribute |
|
Set the attribute set at the given index. Returns a new list because attribute lists are immutable. |
|
Return true if both lists refer to the same uniquified value. |
|
Return true if the lists refer to different uniquified values. |
Static Member Functions
Name |
Description |
|
Friends
Name |
Description |
Traits type that supplies DenseMap hashing and equality for value type |
|
Internal uniquified storage for an |
|
Immutable set of attributes for one argument, parameter, function, or return. |
|
Internal uniquified storage for an |
|
Mutable builder used with Attribute::get to assemble attributes. |
Non-Member Functions
Name |
Description |
Parse out statepoint directives from the function attributes present in |
|
Return the attributes for an intrinsic. |
Created with MrDocs