/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** {@inheritDoc} */ @Override public final DalvInsn withRegisters(RegisterSpecList registers) { return new CodeAddress(getPosition()); }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** * Sets up the address arrays. */ private void setupArrays(RopMethod method) { BasicBlockList blocks = method.getBlocks(); int sz = blocks.size(); for (int i = 0; i < sz; i++) { BasicBlock one = blocks.get(i); int label = one.getLabel(); Insn insn = one.getInsns().get(0); starts[label] = new CodeAddress(insn.getPosition()); SourcePosition pos = one.getLastInsn().getPosition(); lasts[label] = new CodeAddress(pos); ends[label] = new CodeAddress(pos); } } }
/** {@inheritDoc} */ public void visitFillArrayDataInsn(FillArrayDataInsn insn) { SourcePosition pos = insn.getPosition(); Constant cst = insn.getConstant(); ArrayList<Constant> values = insn.getInitValues(); Rop rop = insn.getOpcode(); if (rop.getBranchingness() != Rop.BRANCH_NONE) { throw new RuntimeException("shouldn't happen"); } CodeAddress dataAddress = new CodeAddress(pos); ArrayData dataInsn = new ArrayData(pos, lastAddress, values, cst); TargetInsn fillArrayDataInsn = new TargetInsn(Dops.FILL_ARRAY_DATA, pos, getRegs(insn), dataAddress); addOutput(lastAddress); addOutput(fillArrayDataInsn); addOutputSuffix(new OddSpacer(pos)); addOutputSuffix(dataAddress); addOutputSuffix(dataInsn); }
/** {@inheritDoc} */ public void visitFillArrayDataInsn(FillArrayDataInsn insn) { SourcePosition pos = insn.getPosition(); Constant cst = insn.getConstant(); ArrayList<Constant> values = insn.getInitValues(); Rop rop = insn.getOpcode(); if (rop.getBranchingness() != Rop.BRANCH_NONE) { throw new RuntimeException("shouldn't happen"); } CodeAddress dataAddress = new CodeAddress(pos); ArrayData dataInsn = new ArrayData(pos, lastAddress, values, cst); TargetInsn fillArrayDataInsn = new TargetInsn(Dops.FILL_ARRAY_DATA, pos, getRegs(insn), dataAddress); addOutput(lastAddress); addOutput(fillArrayDataInsn); addOutputSuffix(new OddSpacer(pos)); addOutputSuffix(dataAddress); addOutputSuffix(dataInsn); }
/** {@inheritDoc} */ @Override public void visitFillArrayDataInsn(FillArrayDataInsn insn) { SourcePosition pos = insn.getPosition(); Constant cst = insn.getConstant(); ArrayList<Constant> values = insn.getInitValues(); Rop rop = insn.getOpcode(); if (rop.getBranchingness() != Rop.BRANCH_NONE) { throw new RuntimeException("shouldn't happen"); } CodeAddress dataAddress = new CodeAddress(pos); ArrayData dataInsn = new ArrayData(pos, lastAddress, values, cst); TargetInsn fillArrayDataInsn = new TargetInsn(Dops.FILL_ARRAY_DATA, pos, getRegs(insn), dataAddress); addOutput(lastAddress); addOutput(fillArrayDataInsn); addOutputSuffix(new OddSpacer(pos)); addOutputSuffix(dataAddress); addOutputSuffix(dataInsn); }
/** {@inheritDoc} */ public void visitFillArrayDataInsn(FillArrayDataInsn insn) { SourcePosition pos = insn.getPosition(); Constant cst = insn.getConstant(); ArrayList<Constant> values = insn.getInitValues(); Rop rop = insn.getOpcode(); if (rop.getBranchingness() != Rop.BRANCH_NONE) { throw new RuntimeException("shouldn't happen"); } CodeAddress dataAddress = new CodeAddress(pos); ArrayData dataInsn = new ArrayData(pos, lastAddress, values, cst); TargetInsn fillArrayDataInsn = new TargetInsn(Dops.FILL_ARRAY_DATA, pos, getRegs(insn), dataAddress); addOutput(lastAddress); addOutput(fillArrayDataInsn); addOutputSuffix(new OddSpacer(pos)); addOutputSuffix(dataAddress); addOutputSuffix(dataInsn); }