The max loop depth was incorrectly computed for scops that contain a
block from a loop but do not contain the entire loop. We need to
check that the full loop is contained in the block when computing
the max loop depth.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Yes, this looks good. I wonder in which context you run into this? Is it possible to provide a test case that covers this?
Comment Actions
Also, the commit message is slightly inaccurate:
We need to check that the full loop is contained in the block when computing
in the _region_
Comment Actions
Tobi,
I added a test case and also an explanation in the commit message on when we can hit this problem.
These scops occur when a region containing an inner loop is expanded
to include some blocks from the outer loop, but it cannot be fully
expanded to contain the outer loop because the region containing the
outer loop is invalid.