ScopInfo: Return immediately if scop is unprofitable and marked invalid
As we already log an error when calling invalid, scops unprofitable scops are in any case marked invalid, but returning immediately safes (a tiny bit of) compile time and is consistent with our use of 'invalid' in the remainder of the file. Found by inspection. llvm-svn: 256140
This commit is contained in:
parent
bfaf1ae309
commit
594882573e
|
@ -1160,7 +1160,7 @@ bool ScopDetection::isValidRegion(DetectionContext &Context) const {
|
|||
|
||||
int NumLoops = countBeneficialLoops(&CurRegion);
|
||||
if (!PollyProcessUnprofitable && NumLoops < 2)
|
||||
invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
return invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
|
||||
if (!allBlocksValid(Context))
|
||||
return false;
|
||||
|
@ -1168,12 +1168,12 @@ bool ScopDetection::isValidRegion(DetectionContext &Context) const {
|
|||
// We can probably not do a lot on scops that only write or only read
|
||||
// data.
|
||||
if (!PollyProcessUnprofitable && (!Context.hasStores || !Context.hasLoads))
|
||||
invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
return invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
|
||||
// Check if there are sufficent non-overapproximated loops.
|
||||
int NumAffineLoops = NumLoops - Context.BoxedLoopsSet.size();
|
||||
if (!PollyProcessUnprofitable && NumAffineLoops < 2)
|
||||
invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
return invalid<ReportUnprofitable>(Context, /*Assert=*/true, &CurRegion);
|
||||
|
||||
DEBUG(dbgs() << "OK\n");
|
||||
return true;
|
||||
|
|
Loading…
Reference in New Issue