Polly 22.0.0git
polly::ReportNonAffineAccess Class Referencefinal

Captures a non-affine access function. More...

#include <ScopDetectionDiagnostic.h>

Inheritance diagram for polly::ReportNonAffineAccess:
[legend]

Public Member Functions

 ReportNonAffineAccess (const SCEV *AccessFunction, const Instruction *Inst, const Value *V)
const SCEV * get ()
RejectReason interface
std::string getRemarkName () const override
 Generate the remark name to identify this remark.
const BasicBlock * getRemarkBB () const override
 Get the Basic Block containing this remark.
std::string getMessage () const override
 Generate a reasonable diagnostic message describing this error.
std::string getEndUserMessage () const override
 Generate a message for the end-user describing this error.
Public Member Functions inherited from polly::ReportAffFunc
 ReportAffFunc (const RejectReasonKind K, const Instruction *Inst)
const DebugLoc & getDebugLoc () const override
 Get the source location of this error.
Public Member Functions inherited from polly::RejectReason
 RejectReason (RejectReasonKind K)
virtual ~RejectReason ()=default
RejectReasonKind getKind () const

Static Public Member Functions

LLVM-RTTI interface
static bool classof (const RejectReason *RR)
Static Public Member Functions inherited from polly::ReportAffFunc
static bool classof (const RejectReason *RR)

Private Attributes

const SCEV * AccessFunction
const ValueBaseValue

Additional Inherited Members

Protected Attributes inherited from polly::ReportAffFunc
const Instruction * Inst
Static Protected Attributes inherited from polly::RejectReason
static const DebugLoc Unknown = DebugLoc()

Detailed Description

Captures a non-affine access function.

Definition at line 501 of file ScopDetectionDiagnostic.h.

Constructor & Destructor Documentation

◆ ReportNonAffineAccess()

polly::ReportNonAffineAccess::ReportNonAffineAccess ( const SCEV * AccessFunction,
const Instruction * Inst,
const Value * V )
inline

Member Function Documentation

◆ classof()

bool polly::ReportNonAffineAccess::classof ( const RejectReason * RR)
static

◆ get()

const SCEV * polly::ReportNonAffineAccess::get ( )
inline

Definition at line 514 of file ScopDetectionDiagnostic.h.

References AccessFunction.

◆ getEndUserMessage()

std::string polly::ReportNonAffineAccess::getEndUserMessage ( ) const
overridevirtual

Generate a message for the end-user describing this error.

The message provided has to be suitable for the end-user. So it should not reference any LLVM internal data structures or terminology. Ideally, the message helps the end-user to increase the size of the regions amenable to Polly.

Returns
A short message representing this error.

Reimplemented from polly::RejectReason.

Definition at line 472 of file ScopDetectionDiagnostic.cpp.

References BaseValue.

◆ getMessage()

std::string polly::ReportNonAffineAccess::getMessage ( ) const
overridevirtual

Generate a reasonable diagnostic message describing this error.

Returns
A debug message representing this error.

Implements polly::RejectReason.

Definition at line 464 of file ScopDetectionDiagnostic.cpp.

References AccessFunction.

◆ getRemarkBB()

const BasicBlock * polly::ReportNonAffineAccess::getRemarkBB ( ) const
overridevirtual

Get the Basic Block containing this remark.

Returns
The Basic Block containing this remark.

Implements polly::RejectReason.

Definition at line 460 of file ScopDetectionDiagnostic.cpp.

References polly::ReportAffFunc::Inst.

◆ getRemarkName()

std::string polly::ReportNonAffineAccess::getRemarkName ( ) const
overridevirtual

Generate the remark name to identify this remark.

Returns
A short string that identifies the error.

Implements polly::RejectReason.

Definition at line 456 of file ScopDetectionDiagnostic.cpp.

Member Data Documentation

◆ AccessFunction

const SCEV* polly::ReportNonAffineAccess::AccessFunction
private

Definition at line 503 of file ScopDetectionDiagnostic.h.

Referenced by get(), getMessage(), and ReportNonAffineAccess().

◆ BaseValue

const Value* polly::ReportNonAffineAccess::BaseValue
private

Definition at line 506 of file ScopDetectionDiagnostic.h.

Referenced by getEndUserMessage(), and ReportNonAffineAccess().


The documentation for this class was generated from the following files: