Merge pull request #4246 from RasmusWL/java-fix-ssa-varBlockReaches

Java: Minor fixup for SSA AdjacentUsesImpl::varBlockReaches
This commit is contained in:
Anders Schack-Mulligen
2020-09-21 13:28:20 +02:00
committed by GitHub
2 changed files with 6 additions and 2 deletions

View File

@@ -779,7 +779,9 @@ private module SsaImpl {
* between `b1` and `b2`.
*/
private predicate varBlockReaches(TrackedVar v, BasicBlock b1, BasicBlock b2) {
varOccursInBlock(v, b1) and b2 = b1.getABBSuccessor()
varOccursInBlock(v, b1) and
b2 = b1.getABBSuccessor() and
blockPrecedesVar(v, b2)
or
exists(BasicBlock mid |
varBlockReaches(v, b1, mid) and

View File

@@ -330,7 +330,9 @@ private module SsaImpl {
* between `b1` and `b2`.
*/
private predicate varBlockReaches(BaseSsaSourceVariable v, BasicBlock b1, BasicBlock b2) {
varOccursInBlock(v, b1) and b2 = b1.getABBSuccessor()
varOccursInBlock(v, b1) and
b2 = b1.getABBSuccessor() and
blockPrecedesVar(v, b2)
or
exists(BasicBlock mid |
varBlockReaches(v, b1, mid) and