Polly 22.0.0git
polly::ReportLoopBound Class Referencefinal

Captures errors with non affine loop bounds. More...

#include <ScopDetectionDiagnostic.h>

Inheritance diagram for polly::ReportLoopBound:
[legend]

Public Member Functions

 ReportLoopBound (Loop *L, const SCEV *LoopCount)
const SCEV * loopCount ()
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 Attributes

Loop * L
const SCEV * LoopCount
const DebugLoc Loc

Additional Inherited Members

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

Detailed Description

Captures errors with non affine loop bounds.

Definition at line 557 of file ScopDetectionDiagnostic.h.

Constructor & Destructor Documentation

◆ ReportLoopBound()

polly::ReportLoopBound::ReportLoopBound ( Loop * L,
const SCEV * LoopCount )

Member Function Documentation

◆ classof()

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

◆ getDebugLoc()

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

Get the source location of this error.

Returns
The debug location for this error.

Reimplemented from polly::RejectReason.

Definition at line 496 of file ScopDetectionDiagnostic.cpp.

References Loc.

◆ getEndUserMessage()

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

◆ getMessage()

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

Generate a reasonable diagnostic message describing this error.

Returns
A debug message representing this error.

Implements polly::RejectReason.

Definition at line 491 of file ScopDetectionDiagnostic.cpp.

References L, and LoopCount.

◆ getRemarkBB()

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

Get the Basic Block containing this remark.

Returns
The Basic Block containing this remark.

Implements polly::RejectReason.

Definition at line 487 of file ScopDetectionDiagnostic.cpp.

References L.

◆ getRemarkName()

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

◆ loopCount()

const SCEV * polly::ReportLoopBound::loopCount ( )
inline

Definition at line 570 of file ScopDetectionDiagnostic.h.

References LoopCount.

Member Data Documentation

◆ L

Loop* polly::ReportLoopBound::L
private

Definition at line 559 of file ScopDetectionDiagnostic.h.

Referenced by getMessage(), getRemarkBB(), and ReportLoopBound().

◆ Loc

const DebugLoc polly::ReportLoopBound::Loc
private

Definition at line 565 of file ScopDetectionDiagnostic.h.

Referenced by getDebugLoc(), and ReportLoopBound().

◆ LoopCount

const SCEV* polly::ReportLoopBound::LoopCount
private

Definition at line 562 of file ScopDetectionDiagnostic.h.

Referenced by getMessage(), loopCount(), and ReportLoopBound().


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