< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotStrategySwitchOp.java

Print this page

        

*** 75,86 **** // Load constant takes one instruction int cbCondPosition = masm.position() + INSTRUCTION_SIZE; boolean canUseShortBranch = masm.hasFeature(CPUFeature.CBCOND) && SPARCControlFlow.isShortBranch(masm, cbCondPosition, hint, target); Register scratchRegister = asRegister(scratch); ! final int byteCount = constant.isCompressed() ? 4 : 8; ! loadFromConstantTable(crb, masm, byteCount, asRegister(constantTableBase), constant, scratchRegister, SPARCDelayedControlTransfer.DUMMY); if (canUseShortBranch) { CBCOND.emit(masm, conditionFlag, conditionCode == CC.Xcc, keyRegister, scratchRegister, target); } else { masm.cmp(keyRegister, scratchRegister); --- 75,85 ---- // Load constant takes one instruction int cbCondPosition = masm.position() + INSTRUCTION_SIZE; boolean canUseShortBranch = masm.hasFeature(CPUFeature.CBCOND) && SPARCControlFlow.isShortBranch(masm, cbCondPosition, hint, target); Register scratchRegister = asRegister(scratch); ! loadFromConstantTable(crb, masm, asRegister(constantTableBase), constant, scratchRegister, SPARCDelayedControlTransfer.DUMMY); if (canUseShortBranch) { CBCOND.emit(masm, conditionFlag, conditionCode == CC.Xcc, keyRegister, scratchRegister, target); } else { masm.cmp(keyRegister, scratchRegister);
< prev index next >