Skip to content

Commit cf41b0a

Browse files
committed
Elaborate on EBB-related comment in checkcast/profiled guard coalescer
1 parent 77ba716 commit cf41b0a

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

compiler/optimizer/LocalOpts.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -7756,11 +7756,16 @@ int32_t TR_CheckcastAndProfiledGuardCoalescer::perform()
77567756
"catch block_%d has a non-exception predecessor",
77577757
curBlock->getNumber());
77587758

7759+
// The predecessor is necessarily the textually previous block.
7760+
// Otherwise, the previous block would end with control flow that
7761+
// does not fall through, and checkcastTree would have been unset.
7762+
//
77597763
// This is basically like being in an extended block, except that
77607764
// there won't be any commoning, i.e. there won't be any more
77617765
// occurrences of castObj. However, if castObjAuto is set, it's
77627766
// still possible to find loads that match. Without castObjAuto,
77637767
// it's pointless, so give up.
7768+
//
77647769
if (castObjAuto == NULL)
77657770
{
77667771
checkcastTree = NULL;

0 commit comments

Comments
 (0)