Package objot.bytecode

Examples of objot.bytecode.Instruction.insU2()


    s.ins0(ILOAD2);
    long sw = s.insSwitchTable(0, ds.length - 1);
    int sw0 = s.addr; // default
    s.switchTableHere(sw, -1);
    int exCi = p.cons.addClass(ClassCastException.class);
    s.insU2(NEW, exCi);
    s.ins0(DUP);
    s.insU2(INVOKESPECIAL, p.cons.addCtor0(exCi));
    s.ins0(ATHROW);
    Property d;
    for (int i = 0; i < ds.length && (d = ds[i]) != null; i++)
View Full Code Here


    int sw0 = s.addr; // default
    s.switchTableHere(sw, -1);
    int exCi = p.cons.addClass(ClassCastException.class);
    s.insU2(NEW, exCi);
    s.ins0(DUP);
    s.insU2(INVOKESPECIAL, p.cons.addCtor0(exCi));
    s.ins0(ATHROW);
    Property d;
    for (int i = 0; i < ds.length && (d = ds[i]) != null; i++)
      if (type == 0 ? d.cla.isPrimitive() && d.cla != boolean.class //
      : type == 1 ? d.cla != int.class && d.cla != long.class //
View Full Code Here

        s.switchTableHere(sw, i);
        if (type == 0)
          if (d.cla == boolean.class)
            s.insUnboxNarrow(d.cla);
          else
            s.insU2(CHECKCAST, p.cons.addClass(d.cla));
        else if (type == 1 && d.cla == int.class)
          s.ins0(L2I);
        else if (type == 2 && d.cla == float.class)
          s.ins0(D2F);
        if (d.field != null)
View Full Code Here

        else if (type == 1 && d.cla == int.class)
          s.ins0(L2I);
        else if (type == 2 && d.cla == float.class)
          s.ins0(D2F);
        if (d.field != null)
          s.insU2(PUTFIELD, p.cons.addField(d.field));
        else
          s.insU2(INVOKEVIRTUAL, p.cons.addProc(d.method));
        s.ins0(RETURN);
      }
    p.getCode().setIns(s, false);
View Full Code Here

        else if (type == 2 && d.cla == float.class)
          s.ins0(D2F);
        if (d.field != null)
          s.insU2(PUTFIELD, p.cons.addField(d.field));
        else
          s.insU2(INVOKEVIRTUAL, p.cons.addProc(d.method));
        s.ins0(RETURN);
      }
    p.getCode().setIns(s, false);
    p.getCode().setLocalN(5);
    p.getCode().setStackN(5);
View Full Code Here

        s.insU2(INVOKEVIRTUAL, get0Ci); // get0
        s.ins0(ARETURN);
        s.jumpHere(j);

        s.ins0(ILOAD2); // j
        s.insU2(INVOKEVIRTUAL, get0Ci); // get0
        s.ins0(DUP);
        s.ins0(ILOAD2);
        j = s.insJump(IFIL0);
        s.ins0(ALOAD0);
        s.ins0(SWAP); // o, this, o
View Full Code Here

        s.ins0(DUP);
        s.ins0(ILOAD2);
        j = s.insJump(IFIL0);
        s.ins0(ALOAD0);
        s.ins0(SWAP); // o, this, o
        s.insU2(PUTFIELD, fCis[i]); // cache
        s.ins0(ARETURN);
        s.jumpHere(j);
        s.ins0(ARETURN);
      }
      else
View Full Code Here

      {
        s.switchTableHere(sw, i0 - i);
        s.ins0(ALOAD0);
        s.ins0(ALOAD2);
        s.insNarrow(c.box);
        s.insU2(PUTFIELD, fCis[i]);
        s.ins0(ICONST1);
        s.ins0(IRETURN);
      }
      else if (c.mode == Parent.class)
      {
View Full Code Here

      else if (c.mode == Parent.class)
      {
        s.switchTableHere(sw, i0 - i);
        s.ins0(ALOAD0);
        int loop = s.addr; // n
        s.insU2(GETFIELD, parentCi); // n
        s.ins0(DUP);
        s.insU2(LDCW, cCis[i]);
        s.insU2(INVOKEVIRTUAL, indexCi); // n, j
        s.ins0(DUP);
        s.ins0(ISTORE3);
View Full Code Here

        s.switchTableHere(sw, i0 - i);
        s.ins0(ALOAD0);
        int loop = s.addr; // n
        s.insU2(GETFIELD, parentCi); // n
        s.ins0(DUP);
        s.insU2(LDCW, cCis[i]);
        s.insU2(INVOKEVIRTUAL, indexCi); // n, j
        s.ins0(DUP);
        s.ins0(ISTORE3);
        s.jump(s.insJump(IFIE0), loop);
        s.ins0(ILOAD3); // j
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.