Skip to content

Commit 6b84dcc

Browse files
authored
Merge pull request #20271 from rmnattas/svm-48
(0.48) Disable inlined instanceOf guess tests for AOT non-SVM compilations
2 parents 56fd9d6 + 39eeef2 commit 6b84dcc

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

runtime/compiler/p/codegen/J9TreeEvaluator.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4542,7 +4542,7 @@ TR::Register * J9::Power::TreeEvaluator::VMgenCoreInstanceofEvaluator(TR::Node *
45424542
}
45434543
}
45444544

4545-
if (testCache)
4545+
if (testCache && (!comp->compileRelocatableCode() || comp->getOption(TR_UseSymbolValidationManager)))
45464546
{
45474547
// The cached value could have been from a previously successful checkcast or instanceof.
45484548
// An answer of 0 in the low order bit indicates 'success' (the cast or instanceof was successful).
@@ -4551,6 +4551,7 @@ TR::Register * J9::Power::TreeEvaluator::VMgenCoreInstanceofEvaluator(TR::Node *
45514551
// must be off (success) from a previous checkcast or instanceof. If the low order bit is on, it is guaranteed not to
45524552
// compare and we will take the slow path.
45534553
// Generate inline test for instanceOf
4554+
// Don't inline test when AOT && non-SVM compilation
45544555
genInlineTest(node, castClassAddr, guessClassArray, num_PICS, objClassReg, resultReg, crReg, scratch1Reg, scratch2Reg, false, needResult, res0Label, res1Label, doneLabel,
45554556
callLabel, testCastClassIsSuper, iCursor, cg);
45564557
}

0 commit comments

Comments
 (0)