struct AAMemoryBehavior

Declaration

struct AAMemoryBehavior : public IRAttribute { /* full declaration omitted */ };

Description

An abstract interface for memory access kind related attributes (readnone/readonly/writeonly).

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4054

Inherits from: IRAttribute

Member Variables

public static const char ID
Unique ID (due to the unique address)

Method Overview

Methods

AAMemoryBehavior(const llvm::IRPosition& IRP,
                 llvm::Attributor& A)

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4058

Parameters

const llvm::IRPosition& IRP
llvm::Attributor& A

static bool classof(
    const llvm::AbstractAttribute* AA)

Description

This function should return true if the type of the \p AA is AAMemoryBehavior

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4107

Parameters

const llvm::AbstractAttribute* AA

static llvm::AAMemoryBehavior& 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:4096

Parameters

const llvm::IRPosition& IRP
llvm::Attributor& A

const char* getIdAddr() const

Description

See AbstractAttribute::getIdAddr()

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4103

const std::string getName() const

Description

See AbstractAttribute::getName()

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4100

bool isAssumedReadNone() const

Description

Return true if we assume that the underlying value is not read or accessed in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4077

bool isAssumedReadOnly() const

Description

Return true if we assume that the underlying value is not accessed (=written) in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4085

bool isAssumedWriteOnly() const

Description

Return true if we assume that the underlying value is not read in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4093

bool isKnownReadNone() const

Description

Return true if we know that the underlying value is not read or accessed in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4073

bool isKnownReadOnly() const

Description

Return true if we know that the underlying value is not accessed (=written) in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4081

bool isKnownWriteOnly() const

Description

Return true if we know that the underlying value is not read in its respective scope.

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:4089