Skip to content

Commit

Permalink
Replace references to findOrCreateRuntimeHelper on ARM
Browse files Browse the repository at this point in the history
Use API with default boolean parameters.

Issue: #5601

Signed-off-by: Daryl Maier <maier@ca.ibm.com>
  • Loading branch information
0xdaryl committed Oct 9, 2020
1 parent a7d6c1a commit a64551a
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 22 deletions.
12 changes: 6 additions & 6 deletions compiler/arm/codegen/BinaryEvaluator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -447,9 +447,9 @@ TR::Register *OMR::ARM::TreeEvaluator::lmulEvaluator(TR::Node *node, TR::CodeGen
}

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongMultiply, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongMultiply)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongMultiply, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongMultiply));

cg->machine()->setLinkRegisterKilled(true);
node->setRegister(trgReg);
Expand Down Expand Up @@ -667,7 +667,7 @@ static TR::Register *idivAndIRemHelper(TR::Node *node, bool isDivide, TR::CodeGe
TR::addDependency(dependencies, dd_reg, TR::RealRegister::gr0, TR_GPR, cg);
TR::addDependency(dependencies, dr_reg, TR::RealRegister::gr1, TR_GPR, cg);

TR::SymbolReference *helper = cg->symRefTab()->findOrCreateRuntimeHelper(isDivide ? TR_ARMintDivide : TR_ARMintRemainder, false, false, false);
TR::SymbolReference *helper = cg->symRefTab()->findOrCreateRuntimeHelper(isDivide ? TR_ARMintDivide : TR_ARMintRemainder);

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)helper->getMethodAddress(),
Expand Down Expand Up @@ -771,9 +771,9 @@ static TR::Register *ldivAndLRemHelper(TR::Node *node, bool isDivide, TR::CodeGe
}

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongDivide, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongDivide)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongDivide, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlongDivide));

cg->machine()->setLinkRegisterKilled(true);
node->setRegister(trgReg);
Expand Down Expand Up @@ -1005,7 +1005,7 @@ static TR::Register *longRightShiftEvaluator(TR::Node *node, bool isLogical, TR:
TR::addDependency(dependencies, trgReg->getLowOrder(), TR::RealRegister::gr0, TR_GPR, cg);
TR::addDependency(dependencies, trgReg->getHighOrder(), TR::RealRegister::gr1, TR_GPR, cg);
TR::addDependency(dependencies, shiftAmountReg, TR::RealRegister::gr2, TR_GPR, cg);
TR::SymbolReference *longShiftHelper = cg->symRefTab()->findOrCreateRuntimeHelper(isLogical ? TR_ARMlongShiftRightLogical : TR_ARMlongShiftRightArithmetic, false, false, false);
TR::SymbolReference *longShiftHelper = cg->symRefTab()->findOrCreateRuntimeHelper(isLogical ? TR_ARMlongShiftRightLogical : TR_ARMlongShiftRightArithmetic);

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)longShiftHelper->getMethodAddress(),
Expand Down
26 changes: 13 additions & 13 deletions compiler/arm/codegen/FPTreeEvaluator.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2000, 2019 IBM Corp. and others
* Copyright (c) 2000, 2020 IBM Corp. and others
*
* This program and the accompanying materials are made available under
* the terms of the Eclipse Public License 2.0 which accompanies this
Expand Down Expand Up @@ -269,9 +269,9 @@ static TR::Register *callLong2DoubleHelper(TR::Node *node, TR::CodeGenerator *cg
dependencies->stopAddingConditions();

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Double, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Double)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Double, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Double));

if (noFPRA)
{
Expand Down Expand Up @@ -356,9 +356,9 @@ static TR::Register *callLong2FloatHelper(TR::Node *node, TR::CodeGenerator *cg)
dependencies->stopAddingConditions();

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Float, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Float)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Float, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMlong2Float));

if (noFPRA)
{
Expand Down Expand Up @@ -467,9 +467,9 @@ static TR::Register *callDouble2LongHelper(TR::Node *node, TR::CodeGenerator *cg
dependencies->stopAddingConditions();

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdouble2Long, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdouble2Long)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdouble2Long, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdouble2Long));

//dependencies->stopUsingDepRegs(cg, trgReg);

Expand Down Expand Up @@ -554,9 +554,9 @@ static TR::Register *callFloat2LongHelper(TR::Node *node, TR::CodeGenerator *cg)
dependencies->stopAddingConditions();

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloat2Long, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloat2Long)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloat2Long, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloat2Long));

//dependencies->stopUsingDepRegs(cg, trgReg);
//cg->stopUsingRegister(dummyReg);
Expand Down Expand Up @@ -676,9 +676,9 @@ static TR::Register *callDoubleRemainderHelper(TR::Node *node, TR::CodeGenerator
}
dependencies->stopAddingConditions();
generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdoubleRemainder, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdoubleRemainder)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdoubleRemainder, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMdoubleRemainder));

if (noFPRA)
{
Expand Down Expand Up @@ -779,9 +779,9 @@ static TR::Register *callFloatRemainderHelper(TR::Node *node, TR::CodeGenerator
dependencies->stopAddingConditions();

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloatRemainder, false, false, false)->getMethodAddress(),
node, (uintptr_t)cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloatRemainder)->getMethodAddress(),
dependencies,
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloatRemainder, false, false, false));
cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMfloatRemainder));

if (noFPRA)
{
Expand Down
4 changes: 2 additions & 2 deletions compiler/arm/codegen/OMRCodeGenerator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -457,9 +457,9 @@ TR::Instruction *OMR::ARM::CodeGenerator::generateSwitchToInterpreterPrePrologue
TR::Register *gr4 = self()->machine()->getRealRegister(TR::RealRegister::gr4);
TR::Register *lr = self()->machine()->getRealRegister(TR::RealRegister::gr14); // link register
TR::ResolvedMethodSymbol *methodSymbol = comp->getJittedMethodSymbol();
TR::SymbolReference *revertToInterpreterSymRef = self()->symRefTab()->findOrCreateRuntimeHelper(TR_ARMrevertToInterpreterGlue, false, false, false);
TR::SymbolReference *revertToInterpreterSymRef = self()->symRefTab()->findOrCreateRuntimeHelper(TR_ARMrevertToInterpreterGlue);
uintptr_t ramMethod = (uintptr_t)methodSymbol->getResolvedMethod()->resolvedMethodAddress();
TR::SymbolReference *helperSymRef = self()->symRefTab()->findOrCreateRuntimeHelper(directToInterpreterHelper(methodSymbol, self()), false, false, false);
TR::SymbolReference *helperSymRef = self()->symRefTab()->findOrCreateRuntimeHelper(directToInterpreterHelper(methodSymbol, self()));
uintptr_t helperAddr = (uintptr_t)helperSymRef->getMethodAddress();

// gr4 must contain the saved LR; see Recompilation.s
Expand Down
2 changes: 1 addition & 1 deletion compiler/arm/codegen/OMRTreeEvaluator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -971,7 +971,7 @@ TR::Register *OMR::ARM::TreeEvaluator::arraycopyEvaluator(TR::Node *node, TR::Co
TR::addDependency(deps, srcAddrReg, TR::RealRegister::gr1, TR_GPR, cg);
TR::addDependency(deps, dstAddrReg, TR::RealRegister::gr2, TR_GPR, cg);

arrayCopyHelper = cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMarrayCopy, false, false, false);
arrayCopyHelper = cg->symRefTab()->findOrCreateRuntimeHelper(TR_ARMarrayCopy);

generateImmSymInstruction(cg, ARMOp_bl,
node, (uintptr_t)arrayCopyHelper->getMethodAddress(),
Expand Down

0 comments on commit a64551a

Please sign in to comment.