diff options
Diffstat (limited to 'polly/lib/Analysis/ScopDetectionDiagnostic.cpp')
-rw-r--r-- | polly/lib/Analysis/ScopDetectionDiagnostic.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/polly/lib/Analysis/ScopDetectionDiagnostic.cpp b/polly/lib/Analysis/ScopDetectionDiagnostic.cpp index 1943dfc37f1..4eabfc9c9de 100644 --- a/polly/lib/Analysis/ScopDetectionDiagnostic.cpp +++ b/polly/lib/Analysis/ScopDetectionDiagnostic.cpp @@ -349,6 +349,29 @@ bool ReportFuncCall::classof(const RejectReason *RR) { } //===----------------------------------------------------------------------===// +// ReportNonSimpleMemoryAccess + +ReportNonSimpleMemoryAccess::ReportNonSimpleMemoryAccess(Instruction *Inst) + : ReportOther(rrkNonSimpleMemoryAccess), Inst(Inst) {} + +std::string ReportNonSimpleMemoryAccess::getMessage() const { + return "Non-simple memory access: " + *Inst; +} + +const DebugLoc &ReportNonSimpleMemoryAccess::getDebugLoc() const { + return Inst->getDebugLoc(); +} + +std::string ReportNonSimpleMemoryAccess::getEndUserMessage() const { + return "Volatile memory accesses or memory accesses for atomic types " + "are not supported."; +} + +bool ReportNonSimpleMemoryAccess::classof(const RejectReason *RR) { + return RR->getKind() == rrkNonSimpleMemoryAccess; +} + +//===----------------------------------------------------------------------===// // ReportAlias. ReportAlias::ReportAlias(Instruction *Inst, AliasSet &AS) |