Package org.objectweb.asm

Examples of org.objectweb.asm.CodeVisitor.visitJumpInsn()


        mv = cv.visitMethod(ACC_PUBLIC, f.getGetter(), "()" + ftd, null, null);
        if (f.isReference) {
            // if ( (speedoReferenceState != null)
            generateGetRefState(mv, false);
            Label l1 = new Label();
            mv.visitJumpInsn(IFNULL, l1);
            // && (speedoReferenceState.getDetachedStatus() != DetachedLifeCycle.DETACHED_NONE)
            generateGetRefState(mv, false);
            mv.visitMethodInsn(INVOKEVIRTUAL, xfieldsAncestorJCN, "getDetachedStatus", "()B");
            Util.visitIntConstant(mv, DetachedLifeCycle.DETACHED_NONE);
            mv.visitInsn(I2B);
View Full Code Here


            // && (speedoReferenceState.getDetachedStatus() != DetachedLifeCycle.DETACHED_NONE)
            generateGetRefState(mv, false);
            mv.visitMethodInsn(INVOKEVIRTUAL, xfieldsAncestorJCN, "getDetachedStatus", "()B");
            Util.visitIntConstant(mv, DetachedLifeCycle.DETACHED_NONE);
            mv.visitInsn(I2B);
            mv.visitJumpInsn(IF_ICMPEQ, l1);
            // && !(($classNameFields) speedoReferenceState).${f.name}Loaded
            generateGetRefState(mv, true);
            mv.visitFieldInsn(GETFIELD, xfieldsJCN, f.getName() + "Loaded", "Z");
            mv.visitJumpInsn(IFNE, l1);
            {
View Full Code Here

            mv.visitInsn(I2B);
            mv.visitJumpInsn(IF_ICMPEQ, l1);
            // && !(($classNameFields) speedoReferenceState).${f.name}Loaded
            generateGetRefState(mv, true);
            mv.visitFieldInsn(GETFIELD, xfieldsJCN, f.getName() + "Loaded", "Z");
            mv.visitJumpInsn(IFNE, l1);
            {
                mv.visitTypeInsn(NEW, personality.getDetachedFieldAccessExceptionClassNameSlash());
                mv.visitInsn(DUP);
                mv.visitLdcInsn("Field " + f.getName() + " cannot be accessed: not loaded when the object has been detached");
                mv.visitMethodInsn(INVOKESPECIAL, personality.getDetachedFieldAccessExceptionClassNameSlash(), "<init>", "(Ljava/lang/String;)V");
View Full Code Here

        //if (!speedoIsActive()) {
        mv.visitVarInsn(ALOAD, 0);
        mv.visitMethodInsn(INVOKEVIRTUAL, classToWrite, ISACTIVE_FIELD_NAME, "()Z");
        Label l1 = new Label();
        mv.visitJumpInsn(IFNE, l1);
        {
            //if(speedoReferenceState.getDetachedStatus() != DetachedLifeCycle.DETACHED_NONE) {
            generateGetRefState(mv, false);
            mv.visitMethodInsn(INVOKEVIRTUAL, xfieldsAncestorJCN, "getDetachedStatus", "()B");
            Util.visitIntConstant(mv, DetachedLifeCycle.DETACHED_NONE);
View Full Code Here

            generateGetRefState(mv, false);
            mv.visitMethodInsn(INVOKEVIRTUAL, xfieldsAncestorJCN, "getDetachedStatus", "()B");
            Util.visitIntConstant(mv, DetachedLifeCycle.DETACHED_NONE);
            mv.visitInsn(I2B);
            Label l3 = new Label();
            mv.visitJumpInsn(IF_ICMPEQ, l3);
            {
                //if (!(($classNameFields) speedoReferenceState).${f.name}Loaded ) {
                generateGetRefState(mv, true);
                mv.visitFieldInsn(GETFIELD, xfieldsJCN, f.getName() + "Loaded", "Z");
                Label l5 = new Label();
View Full Code Here

            {
                //if (!(($classNameFields) speedoReferenceState).${f.name}Loaded ) {
                generateGetRefState(mv, true);
                mv.visitFieldInsn(GETFIELD, xfieldsJCN, f.getName() + "Loaded", "Z");
                Label l5 = new Label();
                mv.visitJumpInsn(IFNE, l5);
                {
                    //throw new DetachedFieldAccessException("Field $f.name cannot be accessed: not loaded when the object has been detached");
                    mv.visitTypeInsn(NEW, personality.getDetachedFieldAccessExceptionClassNameSlash());
                    mv.visitInsn(DUP);
                    mv.visitLdcInsn("Field " + f.getName()
View Full Code Here

                //? speedoGetHome().getPOManagerFactory().lookup()
                //: null);
        mv.visitVarInsn(ALOAD, 0);
        mv.visitFieldInsn(GETFIELD, classToWrite, ISACTIVE_FIELD_NAME, "Z");
        Label l1 = new Label();
        mv.visitJumpInsn(IFEQ, l1);
        mv.visitVarInsn(ALOAD, 0);
        mv.visitMethodInsn(INVOKEVIRTUAL, classToWrite, "speedoGetHome",
                "()" + JT_HOME);
        mv.visitMethodInsn(INVOKEINTERFACE, JCN_HOME, "getPOManagerFactory",
                "()" + JT_POMF);
View Full Code Here

                "()" + JT_HOME);
        mv.visitMethodInsn(INVOKEINTERFACE, JCN_HOME, "getPOManagerFactory",
                "()" + JT_POMF);
        mv.visitMethodInsn(INVOKEINTERFACE, JCN_POMF, "lookup", "()" + JT_POM);
        Label l2 = new Label();
        mv.visitJumpInsn(GOTO, l2);
        mv.visitLabel(l1);
        mv.visitInsn(ACONST_NULL);
        mv.visitLabel(l2);
        mv.visitInsn(ARETURN);
        mv.visitMaxs(0, 0);
View Full Code Here

        cv.visitVarInsn(ASTORE, 4);

        //if (fields == null) {
        cv.visitVarInsn(ALOAD, 2);
        Label labelElse = new Label();
        cv.visitJumpInsn(IFNONNULL, labelElse);
        Label labelEnd = new Label();
        {
            //sa.indexFieldModified(0xffffffff, false);
            cv.visitVarInsn(ALOAD, 4);
            cv.visitLdcInsn(new Integer(0xffffffff));
View Full Code Here

        //    return false;
        //}
        mv.visitVarInsn(ALOAD, 0);
        mv.visitFieldInsn(GETFIELD, classToWrite, ISACTIVE_FIELD_NAME, "Z");
        Label l1 = new Label();
        mv.visitJumpInsn(IFNE, l1);
        mv.visitInsn(ICONST_0);
        mv.visitInsn(IRETURN);
        mv.visitLabel(l1);

        //StateItf sa = speedoGetState();
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.