@Override public void generate(NodeLIRBuilderTool gen) { ((SubstrateLIRGenerator) gen.getLIRGeneratorTool()).emitDeadEnd(); } }
@Override public void generate(NodeLIRBuilderTool generator) { SubstrateLIRGenerator sgenerator = (SubstrateLIRGenerator) generator.getLIRGeneratorTool(); Value result = sgenerator.emitReadInstructionPointer(); generator.setResult(this, result); } }
@Override public void generate(NodeLIRBuilderTool gen) { LIRGeneratorTool lirGenTool = gen.getLIRGeneratorTool(); AllocatableValue resultOperand = lirGenTool.resultOperandFor(result.getStackKind(), LIRKind.fromJavaKind(lirGenTool.target().arch, result.getStackKind())); lirGenTool.emitMove(resultOperand, gen.operand(result)); ((SubstrateLIRGenerator) lirGenTool).emitFarReturn(resultOperand, gen.operand(sp), gen.operand(ip)); } }