Polly 19.0.0git
Public Member Functions | Private Attributes | List of all members
polly::ReportLoopHasNoExit Class Referencefinal

Captures errors when loop has no exit. More...

#include <ScopDetectionDiagnostic.h>

Inheritance diagram for polly::ReportLoopHasNoExit:
Inheritance graph
[legend]

Public Member Functions

 ReportLoopHasNoExit (Loop *L)
 
RejectReason interface
std::string getRemarkName () const override
 Generate the remark name to identify this remark.
 
const Value * 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
 
virtual std::string getRemarkName () const =0
 Generate the remark name to identify this remark.
 
virtual const Value * getRemarkBB () const =0
 Get the Basic Block containing this remark.
 
virtual std::string getMessage () const =0
 Generate a reasonable diagnostic message describing this error.
 
virtual std::string getEndUserMessage () const
 Generate a message for the end-user describing this error.
 
virtual const DebugLoc & getDebugLoc () const
 Get the source location of this error.
 

Static Public Member Functions

LLVM-RTTI interface
static bool classof (const RejectReason *RR)
 

Private Attributes

Loop * L
 The loop that has no exit.
 
const DebugLoc Loc
 

Additional Inherited Members

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

Detailed Description

Captures errors when loop has no exit.

Definition at line 589 of file ScopDetectionDiagnostic.h.

Constructor & Destructor Documentation

◆ ReportLoopHasNoExit()

polly::ReportLoopHasNoExit::ReportLoopHasNoExit ( Loop *  L)
inline

Definition at line 596 of file ScopDetectionDiagnostic.h.

Member Function Documentation

◆ classof()

bool polly::ReportLoopHasNoExit::classof ( const RejectReason RR)
static

◆ getDebugLoc()

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

Get the source location of this error.

Returns
The debug location for this error.

Reimplemented from polly::RejectReason.

Definition at line 520 of file ScopDetectionDiagnostic.cpp.

References Loc.

◆ getEndUserMessage()

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

◆ getMessage()

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

Generate a reasonable diagnostic message describing this error.

Returns
A debug message representing this error.

Implements polly::RejectReason.

Definition at line 512 of file ScopDetectionDiagnostic.cpp.

References L.

◆ getRemarkBB()

const Value * polly::ReportLoopHasNoExit::getRemarkBB ( ) const
overridevirtual

Get the Basic Block containing this remark.

Returns
The Basic Block containing this remark.

Implements polly::RejectReason.

Definition at line 510 of file ScopDetectionDiagnostic.cpp.

References L, and polly::Value.

◆ getRemarkName()

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

Member Data Documentation

◆ L

Loop* polly::ReportLoopHasNoExit::L
private

The loop that has no exit.

Definition at line 591 of file ScopDetectionDiagnostic.h.

Referenced by getMessage(), and getRemarkBB().

◆ Loc

const DebugLoc polly::ReportLoopHasNoExit::Loc
private

Definition at line 593 of file ScopDetectionDiagnostic.h.

Referenced by getDebugLoc().


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