Exemplo n.º 1
0
 private void emitDD() {
   int ln = operands.size();
   for (int i = 0; i < ln; i++) {
     Object o = operands.get(i);
     if (o instanceof Integer) {
       stream.write32(((Integer) o).intValue());
     } else if (o instanceof String) {
       byte[] bytes = ((String) o).getBytes();
       int bln = bytes.length;
       for (int j = 0; j < bln; j++) {
         stream.write8(bytes[j]);
       }
       bln = (4 - bln % 4) % 4;
       for (int j = 0; j < bln; j++) {
         stream.write8(0);
       }
     } else if (o instanceof Identifier) {
       stream.writeObjectRef(new Label(((Identifier) o).name));
     } else {
       throw new IllegalArgumentException("Unknown data: " + o);
     }
   }
 }