/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { return (insn instanceof SimpleInsn) && (insn.getRegisters().size() == 0); }
private Expander(RegisterSpecList regSpecList, BitSet compatRegs, int base, boolean duplicateFirst) { this.regSpecList = regSpecList; this.compatRegs = compatRegs; this.base = base; this.result = new RegisterSpecList(regSpecList.size()); this.duplicateFirst = duplicateFirst; }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!((insn instanceof TargetInsn) && (insn.getRegisters().size() == 0))) { return false; } return true; }
/** * Adds specified insn to the uses list for all of its sources. * @param insn {@code non-null;} insn to process */ private void addToUses(SsaInsn insn) { RegisterSpecList rl = insn.getSources(); int sz = rl.size(); for (int i = 0; i < sz; i++) { useList[rl.get(i).getReg()].add(insn); } } });
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!((insn instanceof TargetInsn) && (insn.getRegisters().size() == 0))) { return false; } TargetInsn ti = (TargetInsn) insn; return ti.hasTargetOffset() ? branchFits(ti) : true; }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!((insn instanceof TargetInsn) && (insn.getRegisters().size() == 0))) { return false; } TargetInsn ti = (TargetInsn) insn; return ti.hasTargetOffset() ? branchFits(ti) : true; }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!((insn instanceof TargetInsn) && (insn.getRegisters().size() == 0))) { return false; } TargetInsn ti = (TargetInsn) insn; return ti.hasTargetOffset() ? branchFits(ti) : true; }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { if (!((insn instanceof TargetInsn) && (insn.getRegisters().size() == 0))) { return false; } TargetInsn ti = (TargetInsn) insn; return ti.hasTargetOffset() ? branchFits(ti) : true; }
public void visitPhiInsn(PhiInsn insn) { RegisterSpecList sources = insn.getSources(); RegisterSpec result = insn.getResult(); int sz = sources.size(); for (int i = 0; i < sz; i++) { RegisterSpec source = sources.get(i); SsaBasicBlock predBlock = blocks.get( insn.predBlockIndexForSourcesIndex(i)); predBlock.addMoveToEnd(result, source); } } }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); if (!((insn instanceof TargetInsn) && (regs.size() == 1) && unsignedFitsInByte(regs.get(0).getReg()))) { return false; } return true; }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 1) && unsignedFitsInByte(regs.get(0).getReg()); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 1) && unsignedFitsInByte(regs.get(0).getReg()); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); if (!((insn instanceof TargetInsn) && (regs.size() == 1) && unsignedFitsInByte(regs.get(0).getReg()))) { return false; } TargetInsn ti = (TargetInsn) insn; return ti.hasTargetOffset() ? branchFits(ti) : true; }
/** {@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 boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 2) && unsignedFitsInByte(regs.get(0).getReg()) && unsignedFitsInShort(regs.get(1).getReg()); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 2) && unsignedFitsInShort(regs.get(0).getReg()) && unsignedFitsInShort(regs.get(1).getReg()); }
/** {@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 boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 3) && unsignedFitsInByte(regs.get(0).getReg()) && unsignedFitsInByte(regs.get(1).getReg()) && unsignedFitsInByte(regs.get(2).getReg()); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 3) && unsignedFitsInByte(regs.get(0).getReg()) && unsignedFitsInByte(regs.get(1).getReg()) && unsignedFitsInByte(regs.get(2).getReg()); }
/** {@inheritDoc} */ @Override public boolean isCompatible(DalvInsn insn) { RegisterSpecList regs = insn.getRegisters(); return (insn instanceof SimpleInsn) && (regs.size() == 3) && unsignedFitsInByte(regs.get(0).getReg()) && unsignedFitsInByte(regs.get(1).getReg()) && unsignedFitsInByte(regs.get(2).getReg()); }