List of usage examples for org.objectweb.asm MethodVisitor subclass-usage
From source file jaspex.speculation.newspec.NopRemoveMethodVisitor.java
/** MethodVisitor que remove os NOPs de um mtodo (ver tambm NopAddBeforeLabelMethodVisitor) **/ public class NopRemoveMethodVisitor extends MethodVisitor { public NopRemoveMethodVisitor(int access, String name, String desc, String signature, String[] exceptions, ClassVisitor cv) { super(Opcodes.ASM4, cv.visitMethod(access, name, desc, signature, exceptions));
From source file jaspex.speculation.newspec.RemoveInlineMarkerMethodVisitor.java
/** Quando feito o inline do cdigo de acesso transaccional a um field pelo ChangeFieldAccessMethodVisitor,
* adicionado uma referncia a um marcador (jaspex.MARKER.beforeInlinedStore) que usado pelo
* DelayGetFutureMethodVisitor.
*
* Como o DelayGetFutureMethodVisitor s opera sobre mtodos $speculative, temos que remover o marcador
* das outras verses (ou de todas, quando estamos a usar newspec).
From source file jaspex.speculation.SpeculativeCtorMethodVisitor.java
/** MethodVisitor que substitui o jaspex/MARKER/Transactional pelo SPECULATIVECTORMARKER na assinatura dos * constructores, e altera o cdigo de mtodos transactificados para usar estas novas verses dos constructores. **/ public class SpeculativeCtorMethodVisitor extends MethodVisitor { private final boolean _isClinit;
From source file jaspex.transactifier.ChangeArrayAccessMethodVisitor.java
/** Transactificao de arrays com nova API backed por Unsafe **/ public class ChangeArrayAccessMethodVisitor extends MethodVisitor { //private static final Logger Log = LoggerFactory.getLogger(ChangeArrayAccessMethodVisitor.class); private final AnalyzerAdapter _analyzerAdapter;
From source file jaspex.transactifier.ChangeClinitMethodVisitor.java
/** MethodVisitor que inicializa os offsets de fields usados pela unsafetrans **/ public class ChangeClinitMethodVisitor extends MethodVisitor { private static final Logger Log = LoggerFactory.getLogger(ChangeClinitMethodVisitor.class); private final boolean _active;
From source file jaspex.transactifier.ChangeFieldAccessMethodVisitor.java
public class ChangeFieldAccessMethodVisitor extends MethodVisitor { private static final Logger Log = LoggerFactory.getLogger(ChangeFieldAccessMethodVisitor.class); private final InfoClass _currentClass; private final boolean _active;
From source file jaspex.transactifier.ChangeObjectMethodsMethodVisitor.java
/** MethodVisitor que substitui chamadas a Object.toString() e Object.hashCode() pela classe mais
* especfica, se a conseguir determinar.
*
* Quando uma classe no redefine o hashCode() e o toString(), por alguma razo tanto o javac como
* o ecj emitem cdigo para chamar Object.toString()/hashCode(), em vez de ser
* ClasseActual.toString()/hashCode(). Isto faz com que mesmo ao adicionarmos um toString/hashCode
From source file jaspex.transactifier.RemoveMonitorsClassVisitor.java
/** Classe que remove MONITORENTER/MONITOREXIT, substituindo-os por um POP da referncia do objecto a fazer lock/unlock **/ public class RemoveMonitorsClassVisitor extends MethodVisitor { public RemoveMonitorsClassVisitor(int access, String name, String desc, String signature, String[] exceptions, ClassVisitor cv) { super(Opcodes.ASM4, cv.visitMethod(access, name, desc, signature, exceptions));
From source file javaone2015.con7442.indyprotector.MethodIndyProtector.java
/** * Replaces invoke* instructions with invokedynamic * * @author Mikhail Dudarev (dudarev@licelus.com) */ public class MethodIndyProtector extends MethodVisitor implements Opcodes {
From source file jnr.ffi.provider.jffi.SkinnyMethodAdapter.java
/** * * @author headius */ public class SkinnyMethodAdapter extends MethodVisitor implements Opcodes { private final static boolean DEBUG = Boolean.getBoolean("jnr.ffi.compile.dump");