Package erjang.beam

Examples of erjang.beam.Arg


      }
      private Arg arg(Operands.Float flt) {
        return new Arg(flt.literalValue(), Type.DOUBLE_TYPE);
      }
      private Arg arg(Operands.Literal lit) {
        return new Arg(lit.literalValue());
      }
View Full Code Here


      private Arg decode_value(EObject src) {

        if (src instanceof ETuple2) {
          ETuple2 tup = (ETuple2) src;
          if (tup.elem1 == ATOM_ATOM) {
            return new Arg(tup.elem2, EATOM_TYPE);
          } else if (tup.elem1 == LITERAL_ATOM) {
            return new Arg(tup.elem2);
          } else if (tup.elem1 == INTEGER_ATOM) {
            return new Arg(tup.elem2);
          } else if (tup.elem1 == FLOAT_ATOM) {
            return new Arg(tup.elem2);
          }

        } else if (src == NIL_ATOM) {
          return new Arg(ERT.NIL, ENIL_TYPE);

        }

        throw new Error("unknown value:" + src);
View Full Code Here

        if (src instanceof ETuple2) {
          ETuple2 tup = (ETuple2) src;
          if (tup.elem1 == X_ATOM) {
            int xreg = tup.elem2.asInt();
            return new Arg(Arg.Kind.X, xreg);
          } else if (tup.elem1 == Y_ATOM) {
            int yreg = tup.elem2.asInt();
            return new Arg(Arg.Kind.Y, current.get_ypos(yreg));
          } else if (tup.elem1 == FR_ATOM) {
            int freg = tup.elem2.asInt();
            return new Arg(Arg.Kind.F, freg);
          }
        }

        throw new Error();
View Full Code Here

              int this_fail = decode_labelref(((Insn.L)insn_).label, this.map[insn_idx].exh);
              int next_fail = decode_labelref(((Insn.L)next_insn).label, this.map[insn_idx+1].exh);

              if (this_fail == next_fail) {

                Arg this_arg = src_arg(insn_idx, ((Insn.LD)insn_).dest);
                Arg next_arg = src_arg(insn_idx+1, ((Insn.LD)next_insn).dest);

                if (this_arg.equals(next_arg)) {
                  // SKIP THIS INSTRUCTION!                 
                  continue next_insn;
                }
View Full Code Here

TOP

Related Classes of erjang.beam.Arg

Copyright © 2018 www.massapicom. 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.