private void ifNotEqJmp ( MethodVisitor mv , int param , int value , Label label ) { mv . visitVarInsn ( ILOAD , param ) ; if ( value == 0 ) { /* notest forvalue 0 */ mv . visitJumpInsn ( IFNE , label ) ; } else if ( value == 1 ) { mv . visitInsn ( ICONST_1 ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else if ( value == 2 ) { mv . visitInsn ( ICONST_2 ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else if ( value == 3 ) { mv . visitInsn ( ICONST_3 ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else if ( value == 4 ) { mv . visitInsn ( ICONST_4 ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else if ( value == 5 ) { mv . visitInsn ( ICONST_5 ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else if ( value >= 6 ) { mv . visitIntInsn ( BIPUSH , value ) ; mv . visitJumpInsn ( IF_ICMPNE , label ) ; } else { throw new RuntimeException ( "non supported negative values" ) ; } }
dump a Jump if not EQ