llvm::AADereferenceable

An abstract interface for all dereferenceable attribute.

Synopsis

Declared in <llvm/Transforms/IPO/Attributor.h>

struct AADereferenceable
    : IRAttribute<Attribute::Dereferenceable, StateWrapper<DerefState, AbstractAttribute>, AADereferenceable>

Base Classes

NameDescription
IRAttribute<Attribute::Dereferenceable, StateWrapper<DerefState, AbstractAttribute>, AADereferenceable>Helper class that provides common functionality to manifest IR attributes.

Member Functions

NameDescription
AADereferenceable [constructor]Create a AADereferenceable for the position IRP.
getAssumedDereferenceableBytes Return assumed dereferenceable bytes.
getAttrKind Return the kind that identifies the abstract attribute implementation.
getDeducedAttributes [virtual]Return the deduced attributes in Attrs.
getIdAddr [virtual]See AbstractAttribute::getIdAddr()
getKnownDereferenceableBytes Return known dereferenceable bytes.
getName [virtual]See AbstractAttribute::getName()
isAssumedGlobal Return true if we assume that underlying value is dereferenceable(_or_null) globally.
isKnownGlobal Return true if we know that underlying value is dereferenceable(_or_null) globally.
manifest [virtual]See AbstractAttribute::manifest(...).

Static Member Functions

NameDescription
classof This function should return true if the type of the AA is AADereferenceable
createForPosition Create an abstract attribute view for the position IRP.
hasTrivialInitializer Most boolean IRAttribute AAs don't do anything non-trivial in their initializers while non-boolean ones often do. Subclasses can change this.
isImpliedByIR Return true if the IR already implies this attribute.
isImpliedByPoison Return true if the IR attribute(s) associated with this AA are implied for an poison value.
isImpliedByUndef Return true if the IR attribute(s) associated with this AA are implied for an undef value.
isValidIRPositionForInit See AbstractAttribute::isValidIRPositionForInit

Static Data Members

NameDescription
ID Unique ID (due to the unique address)
IRAttributeKind Compile time access to the IR attribute kind.