/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn), cpi, (short) count, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn), cpi, (short) count, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn), cpi, (short) count, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); int cpi = ((CstInsn) insn).getIndex(); int firstReg = (regs.size() == 0) ? 0 : regs.get(0).getReg(); int count = regs.getWordCount(); write(out, opcodeUnit(insn, count), (short) cpi, (short) firstReg); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { MultiCstInsn mci = (MultiCstInsn) insn; short regB = (short) mci.getIndex(0); // B is the method index short regH = (short) mci.getIndex(1); // H is the call site proto index RegisterSpecList regs = insn.getRegisters(); short regC = 0; if (regs.size() > 0) { regC = (short) regs.get(0).getReg(); } int regA = regs.getWordCount(); // The output format is: AA|op BBBB CCCC HHHH write(out, opcodeUnit(insn,regA), regB, regC, regH); } }
/** {@inheritDoc} */ @Override public void writeTo(AnnotatedOutput out, DalvInsn insn) { MultiCstInsn mci = (MultiCstInsn) insn; short regB = (short) mci.getIndex(0); // B is the method index short regH = (short) mci.getIndex(1); // H is the call site proto index RegisterSpecList regs = insn.getRegisters(); short regC = 0; if (regs.size() > 0) { regC = (short) regs.get(0).getReg(); } int regA = regs.getWordCount(); // The output format is: AA|op BBBB CCCC HHHH write(out, opcodeUnit(insn,regA), regB, regC, regH); } }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (! ALLOW_EXTENDED_OPCODES) { return false; } if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; Constant cst = ci.getConstant(); if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInShort(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (! ALLOW_EXTENDED_OPCODES) { return false; } if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; Constant cst = ci.getConstant(); if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInShort(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (! ALLOW_EXTENDED_OPCODES) { return false; } if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; Constant cst = ci.getConstant(); if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInShort(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; int cpi = ci.getIndex(); Constant cst = ci.getConstant(); if (! unsignedFitsInShort(cpi)) { return false; } if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInByte(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; int cpi = ci.getIndex(); Constant cst = ci.getConstant(); if (! unsignedFitsInShort(cpi)) { return false; } if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInByte(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; int cpi = ci.getIndex(); Constant cst = ci.getConstant(); if (! unsignedFitsInShort(cpi)) { return false; } if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInByte(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; int cpi = ci.getIndex(); Constant cst = ci.getConstant(); if (! unsignedFitsInShort(cpi)) { return false; } if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInByte(regs.getWordCount())); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!(insn instanceof CstInsn)) { return false; } CstInsn ci = (CstInsn) insn; int cpi = ci.getIndex(); Constant cst = ci.getConstant(); if (! unsignedFitsInShort(cpi)) { return false; } if (!((cst instanceof CstMethodRef) || (cst instanceof CstType))) { return false; } RegisterSpecList regs = ci.getRegisters(); int sz = regs.size(); return (regs.size() == 0) || (isRegListSequential(regs) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInByte(regs.getWordCount())); }