struct AADereferenceable
Declaration
struct AADereferenceable : public IRAttribute { /* full declaration omitted */ };
Description
An abstract interface for all dereferenceable attribute.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3680
Inherits from: IRAttribute
Member Variables
- public static const char ID
- Unique ID (due to the unique address)
Method Overview
- public AADereferenceable(const llvm::IRPosition & IRP, llvm::Attributor & A)
- public static bool classof(const llvm::AbstractAttribute * AA)
- public static llvm::AADereferenceable & createForPosition(const llvm::IRPosition & IRP, llvm::Attributor & A)
- public uint32_t getAssumedDereferenceableBytes() const
- public const char * getIdAddr() const
- public uint32_t getKnownDereferenceableBytes() const
- public const std::string getName() const
- public bool isAssumedGlobal() const
- public bool isAssumedNonNull() const
- public bool isKnownGlobal() const
- public bool isKnownNonNull() const
Methods
¶AADereferenceable(const llvm::IRPosition& IRP,
llvm::Attributor& A)
AADereferenceable(const llvm::IRPosition& IRP,
llvm::Attributor& A)
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3683
Parameters
- const llvm::IRPosition& IRP
- llvm::Attributor& A
¶static bool classof(
const llvm::AbstractAttribute* AA)
static bool classof(
const llvm::AbstractAttribute* AA)
Description
This function should return true if the type of the \p AA is AADereferenceable
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3725
Parameters
- const llvm::AbstractAttribute* AA
¶static llvm::AADereferenceable& createForPosition(
const llvm::IRPosition& IRP,
llvm::Attributor& A)
static llvm::AADereferenceable& createForPosition(
const llvm::IRPosition& IRP,
llvm::Attributor& A)
Description
Create an abstract attribute view for the position \p IRP.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3714
Parameters
- const llvm::IRPosition& IRP
- llvm::Attributor& A
¶uint32_t getAssumedDereferenceableBytes() const
uint32_t getAssumedDereferenceableBytes() const
Description
Return assumed dereferenceable bytes.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3704
¶const char* getIdAddr() const
const char* getIdAddr() const
Description
See AbstractAttribute::getIdAddr()
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3721
¶uint32_t getKnownDereferenceableBytes() const
uint32_t getKnownDereferenceableBytes() const
Description
Return known dereferenceable bytes.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3709
¶const std::string getName() const
const std::string getName() const
Description
See AbstractAttribute::getName()
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3718
¶bool isAssumedGlobal() const
bool isAssumedGlobal() const
Description
Return true if we assume that underlying value is dereferenceable(_or_null) globally.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3697
¶bool isAssumedNonNull() const
bool isAssumedNonNull() const
Description
Return true if we assume that the underlying value is nonnull.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3686
¶bool isKnownGlobal() const
bool isKnownGlobal() const
Description
Return true if we know that underlying value is dereferenceable(_or_null) globally.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3701
¶bool isKnownNonNull() const
bool isKnownNonNull() const
Description
Return true if we know that the underlying value is nonnull.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:3691