Polly 22.0.0git
polly::ReportAlias Class Referencefinal

Captures errors with aliasing. More...

#include <ScopDetectionDiagnostic.h>

Inheritance diagram for polly::ReportAlias:
[legend]

Public Types

using PointerSnapshotTy = std::vector<const Value *>

Public Member Functions

 ReportAlias (Instruction *Inst, AliasSet &AS)
const PointerSnapshotTygetPointers () const
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.
const DebugLoc & getDebugLoc () const override
 Get the source location of this error.
std::string getEndUserMessage () const override
 Generate a message for the end-user describing 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)

Private Member Functions

std::string formatInvalidAlias (std::string Prefix="", std::string Suffix="") const
 Format an invalid alias set.

Private Attributes

Instruction * Inst
PointerSnapshotTy Pointers

Additional Inherited Members

Static Protected Attributes inherited from polly::RejectReason
static const DebugLoc Unknown = DebugLoc()

Detailed Description

Captures errors with aliasing.

Definition at line 697 of file ScopDetectionDiagnostic.h.

Member Typedef Documentation

◆ PointerSnapshotTy

using polly::ReportAlias::PointerSnapshotTy = std::vector<const Value *>

Definition at line 699 of file ScopDetectionDiagnostic.h.

Constructor & Destructor Documentation

◆ ReportAlias()

polly::ReportAlias::ReportAlias ( Instruction * Inst,
AliasSet & AS )

Member Function Documentation

◆ classof()

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

◆ formatInvalidAlias()

std::string polly::ReportAlias::formatInvalidAlias ( std::string Prefix = "",
std::string Suffix = "" ) const
private

Format an invalid alias set.

Definition at line 651 of file ScopDetectionDiagnostic.cpp.

References assert, Pointers, and polly::Value.

Referenced by getEndUserMessage(), and getMessage().

◆ getDebugLoc()

const DebugLoc & polly::ReportAlias::getDebugLoc ( ) const
overridevirtual

Get the source location of this error.

Returns
The debug location for this error.

Reimplemented from polly::RejectReason.

Definition at line 695 of file ScopDetectionDiagnostic.cpp.

References Inst.

◆ getEndUserMessage()

std::string polly::ReportAlias::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 690 of file ScopDetectionDiagnostic.cpp.

References formatInvalidAlias().

◆ getMessage()

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

Generate a reasonable diagnostic message describing this error.

Returns
A debug message representing this error.

Implements polly::RejectReason.

Definition at line 686 of file ScopDetectionDiagnostic.cpp.

References formatInvalidAlias().

◆ getPointers()

const PointerSnapshotTy & polly::ReportAlias::getPointers ( ) const
inline

Definition at line 717 of file ScopDetectionDiagnostic.h.

References Pointers.

◆ getRemarkBB()

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

Get the Basic Block containing this remark.

Returns
The Basic Block containing this remark.

Implements polly::RejectReason.

Definition at line 684 of file ScopDetectionDiagnostic.cpp.

References Inst.

◆ getRemarkName()

std::string polly::ReportAlias::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 682 of file ScopDetectionDiagnostic.cpp.

Member Data Documentation

◆ Inst

Instruction* polly::ReportAlias::Inst
private

Definition at line 709 of file ScopDetectionDiagnostic.h.

Referenced by getDebugLoc(), getRemarkBB(), and ReportAlias().

◆ Pointers

PointerSnapshotTy polly::ReportAlias::Pointers
mutableprivate

Definition at line 712 of file ScopDetectionDiagnostic.h.

Referenced by formatInvalidAlias(), getPointers(), and ReportAlias().


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