/** * Adds fields and methods as necessary to load a class constant of * an object type. */ private void setObject(String name) { BCField field = addClassField(name); BCMethod method = addClassLoadMethod(); // copied from the way jikes loads classes _code.getstatic().setField(field); JumpInstruction ifnull = _code.ifnull(); _code.getstatic().setField(field); JumpInstruction go2 = _code.go2(); ifnull.setTarget(_code.constant().setValue(name)); _code.invokestatic().setMethod(method); _code.dup(); _code.putstatic().setField(field); go2.setTarget(_code.nop()); }
new Class[]{ String.class, boolean.class, ClassLoader.class }); code.putstatic().setField(type); Instruction go2 = code.go2(); jumps.add(go2); handler.setTryEnd(go2);
new Class[]{ String.class, boolean.class, ClassLoader.class }); code.putstatic().setField(type); Instruction go2 = code.go2(); jumps.add(go2); handler.setTryEnd(go2);
/** * Adds fields and methods as necessary to load a class constant of * an object type. */ private void setObject(String name) { BCField field = addClassField(name); BCMethod method = addClassLoadMethod(); // copied from the way jikes loads classes _code.getstatic().setField(field); JumpInstruction ifnull = _code.ifnull(); _code.getstatic().setField(field); JumpInstruction go2 = _code.go2(); ifnull.setTarget(_code.constant().setValue(name)); _code.invokestatic().setMethod(method); _code.dup(); _code.putstatic().setField(field); go2.setTarget(_code.nop()); }
new Class[]{ String.class, boolean.class, ClassLoader.class }); code.putstatic().setField(type); Instruction go2 = code.go2(); jumps.add(go2); handler.setTryEnd(go2);
new Class[]{ String.class, boolean.class, ClassLoader.class }); code.putstatic().setField(type); Instruction go2 = code.go2(); jumps.add(go2); handler.setTryEnd(go2);
new Class[]{ String.class, boolean.class, ClassLoader.class }); code.putstatic().setField(type); Instruction go2 = code.go2(); jumps.add(go2); handler.setTryEnd(go2);
jumps2.add(code.go2());
jumps2.add(code.go2());
jumps2.add(code.go2());
jumps2.add(code.go2());
jumps2.add(code.go2());
new Class[] { int.class }); jumps2.add(code.go2());
new Class[] { int.class }); jumps2.add(code.go2());
new Class[] { int.class }); jumps2.add(code.go2());
JumpInstruction go2 = code.go2(); Instruction flse = code.constant().setValue(0); ifneg.setTarget(flse);
JumpInstruction go2 = code.go2(); Instruction flse = code.constant().setValue(0); ifneg.setTarget(flse);
JumpInstruction go2 = code.go2(); Instruction flse = code.constant().setValue(0); ifneg.setTarget(flse);
JumpInstruction go2 = code.go2(); Instruction flse = code.constant().setValue(0); ifneg.setTarget(flse);
JumpInstruction go2 = code.go2(); Instruction flse = code.constant().setValue(0); ifneg.setTarget(flse);