Available Methods
- ASM5 ( )
- ASM7 ( )
- ACC_STATIC
- ACC_PUBLIC
- ACC_PRIVATE
- ASM6 ( )
- INVOKESTATIC
- ACC_ABSTRACT
- ASM4 ( )
- ACC_PROTECTED
- ACC_INTERFACE
- ACC_SYNTHETIC
- ACC_FINAL
- RETURN
- INVOKEVIRTUAL
- ASM8 ( )
- INVOKEINTERFACE
- INVOKESPECIAL
- IRETURN
- ICONST_0 ( )
- PUTFIELD
- GETSTATIC
- GETFIELD
- DLOAD
- ACC_NATIVE
- ALOAD
- SIPUSH
- ICONST_2 ( )
- ILOAD
- ICONST_3 ( )
- LSTORE
- IFNONNULL
- ISTORE
- ICONST_4 ( )
- F_NEW
- ICONST_1 ( )
- DRETURN
- ACC_ENUM
- IF_ICMPEQ
- DCONST_1 ( )
- DCONST_0 ( )
- BIPUSH
- LMUL
- PUTSTATIC
- FSTORE
- DSTORE
- FRETURN
- DADD
- SALOAD
- ICONST_5 ( )
- DUP
- LLOAD
- ATHROW
- FLOAD
- F_SAME
- DASTORE
- ACC_DEPRECATED
- GOTO
- ASTORE
- DUP2 ( )
- ACC_BRIDGE
- T_BOOLEAN
- LRETURN
- IOR
- ACC_VOLATILE
- DALOAD
- LXOR
- NEWARRAY
- DNEG
- T_BYTE
- MULTIANEWARRAY
- T_CHAR
- IFEQ
- NOP
- I2S ( )
- IF_ICMPGE
- LREM
- INEG
- ARETURN
- T_INT
- T_FLOAT
- FCONST_1 ( )
- F_SAME1 ( )
- NEW
- LCMP
- FNEG
- LCONST_1 ( )
- LOR
- POP2 ( )
- IMUL
- FCONST_2 ( )
- DCMPL
- FCONST_0 ( )
- DUP_X1 ( )
- LDC
- F_APPEND
- ICONST_M1 ( )
- LSHR
- IF_ICMPLE
- LALOAD
- FREM
- ACC_ANNOTATION
- IF_ACMPEQ
- BALOAD
- ACC_SYNCHRONIZED
- BASTORE
- FALOAD
- AALOAD
- LSHL
- T_SHORT
- ISUB
- LOOKUPSWITCH
- IFNE
- IALOAD
- H_INVOKEINTERFACE
- LDIV
- ISHR
- ACC_STRICT
- LONG
- IF_ICMPLT
- LADD
- CHECKCAST
- IFLT
- LAND
- FMUL
- IF_ICMPGT
- LCONST_0 ( )
- T_DOUBLE
- FADD
- F_CHOP
- IFLE
- H_PUTSTATIC
- DCMPG
- F2L ( )
- IDIV
- POP
- ARRAYLENGTH
- DUP2_X1 ( )
- DDIV
- L2D ( )
- FCMPL
- ANEWARRAY
- FASTORE
- MONITOREXIT
- F_FULL
- IF_ICMPNE
- LSUB
- FSUB
- ISHL
- H_INVOKEVIRTUAL
- IXOR
- ACC_VARARGS
- MONITORENTER
- IAND
- DMUL
- F2I ( )
- DREM
- DSUB
- V1_7 ( )
- DUP2_X2 ( )
- T_LONG
- IREM
- ACC_SUPER
- ACONST_NULL
- V1_8 ( )
- H_GETFIELD
- FCMPG
- IFNULL
- ACC_TRANSIENT
- H_INVOKESTATIC
- IADD
- IASTORE
- D2I ( )
- AASTORE
- UNINITIALIZED_THIS
- LUSHR
- SWAP
- H_GETSTATIC
- INTEGER
- TOP
- ACC_TRANSITIVE
- D2F ( )
- LNEG
- IFGE
- CASTORE
- CALOAD
- JSR
- F2D ( )
- L2F ( )
- D2L ( )
- LASTORE
- I2C ( )
- H_NEWINVOKESPECIAL
- IFGT
- NULL
- I2F ( )
- L2I ( )
- INVOKEDYNAMIC
- V1_5 ( )
- IUSHR
- DUP_X2 ( )
- SASTORE
- SOURCE_DEPRECATED
- V1_6 ( )
- FDIV
- IINC
- ACC_MODULE
- TABLESWITCH
- RET
- IF_ACMPNE
- H_INVOKESPECIAL
- I2L ( )
- V1_3 ( )
- V1_1 ( )
- DOUBLE
- H_PUTFIELD
- V1_2 ( )
- INSTANCEOF
- I2B ( )
- ACC_MANDATED
- V1_4 ( )
- V11 ( )
- SOURCE_MASK
Related Classes
- java.util.Arrays
- java.io.File
- java.util.Collections
- java.io.InputStream
- java.util.Iterator
- java.lang.reflect.Method
- java.util.LinkedList
- java.util.concurrent.atomic.AtomicInteger
- java.lang.reflect.Modifier
- com.google.common.collect.ImmutableList
- java.util.ListIterator
- java.util.jar.JarEntry
- org.objectweb.asm.ClassReader
- org.objectweb.asm.MethodVisitor
- org.objectweb.asm.ClassWriter
- org.apache.commons.lang3.Validate
- org.objectweb.asm.Type
- org.objectweb.asm.ClassVisitor
- org.objectweb.asm.Label
- org.objectweb.asm.FieldVisitor
- org.objectweb.asm.tree.ClassNode
- org.objectweb.asm.tree.MethodNode
- org.objectweb.asm.AnnotationVisitor
- org.objectweb.asm.tree.AbstractInsnNode
- org.objectweb.asm.tree.MethodInsnNode
Java Code Examples for org.objectweb.asm.Opcodes#DNEG
The following examples show how to use
org.objectweb.asm.Opcodes#DNEG .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ReturnValuesMutator.java From pitest with Apache License 2.0 | 6 votes |
/** * Mutates a primitive double return (<code>Opcode.DRETURN</code>). The * strategy used was translated from jumble BCEL code. The following is * complicated by the problem of <tt>NaN</tt>s. By default the new value is * <code>-(x + 1)</code>, but this doesn't work for <tt>NaN</tt>s. But for a * <tt>NaN</tt> <code>x != x</code> is true, and we use this to detect them. * * @see #mutatePrimitiveFloatReturn() */ private void mutatePrimitiveDoubleReturn() { if (shouldMutate("primitive double", "(x != NaN)? -(x + 1) : -1 ")) { final Label label = new Label(); super.visitInsn(Opcodes.DUP2); super.visitInsn(Opcodes.DUP2); super.visitInsn(Opcodes.DCMPG); super.visitJumpInsn(Opcodes.IFEQ, label); super.visitInsn(Opcodes.POP2); super.visitInsn(Opcodes.DCONST_0); // the following code is executed in NaN case, too super.visitLabel(label); super.visitInsn(Opcodes.DCONST_1); super.visitInsn(Opcodes.DADD); super.visitInsn(Opcodes.DNEG); super.visitInsn(Opcodes.DRETURN); } }
Example 2
Source File: InstructionAssembler.java From es6draft with MIT License | 6 votes |
public final void neg(Type type) { switch (type.getOpcode(Opcodes.INEG)) { case Opcodes.INEG: ineg(); return; case Opcodes.LNEG: lneg(); return; case Opcodes.FNEG: fneg(); return; case Opcodes.DNEG: dneg(); return; default: throw new IllegalArgumentException(); } }
Example 3
Source File: TypeUtils.java From maple-ir with GNU General Public License v3.0 | 5 votes |
public static int getNegateOpcode(Type type) { if (type == Type.INT_TYPE || type == Type.SHORT_TYPE || type == Type.BYTE_TYPE) { return Opcodes.INEG; } else if (type == Type.LONG_TYPE) { return Opcodes.LNEG; } else if (type == Type.FLOAT_TYPE) { return Opcodes.FNEG; } else if (type == Type.DOUBLE_TYPE) { return Opcodes.DNEG; } else { throw new IllegalArgumentException(type.toString()); } }
Example 4
Source File: StackHelper.java From zelixkiller with GNU General Public License v3.0 | 5 votes |
public InsnValue invertValue(AbstractInsnNode insn, InsnValue value) { Object obj = value.getValue(); switch (insn.getOpcode()) { case Opcodes.INEG: if (obj == null) { return InsnValue.INT_VALUE; } return InsnValue.intValue(-1 * (int) obj); case Opcodes.LNEG: if (obj == null) { return InsnValue.LONG_VALUE; } return InsnValue.longValue(-1L * (long) obj); case Opcodes.FNEG: if (obj == null) { return InsnValue.FLOAT_VALUE; } return InsnValue.floatValue(-1F * (float) obj); case Opcodes.DNEG: if (obj == null) { return InsnValue.DOUBLE_VALUE; } return InsnValue.doubleValue(-1D * (double) obj); } return null; }
Example 5
Source File: ArithmeticExpression.java From CodenameOne with GNU General Public License v2.0 | 4 votes |
public static boolean isArithmeticOp(Instruction instr) { switch (instr.getOpcode()) { case Opcodes.ISHL: case Opcodes.ISHR: case Opcodes.LSHL: case Opcodes.LSHR: case Opcodes.IUSHR: case Opcodes.LUSHR: case Opcodes.DCMPG: case Opcodes.DCMPL: case Opcodes.FCMPG: case Opcodes.FCMPL: case Opcodes.LCMP: case Opcodes.FNEG: case Opcodes.DNEG: case Opcodes.INEG: case Opcodes.D2F: case Opcodes.D2I: case Opcodes.D2L: case Opcodes.F2D: case Opcodes.F2I: case Opcodes.F2L: case Opcodes.L2D: case Opcodes.L2F: case Opcodes.L2I: case Opcodes.I2L: case Opcodes.I2B: case Opcodes.I2C: case Opcodes.I2D: case Opcodes.I2F: case Opcodes.I2S: case Opcodes.IOR: case Opcodes.LOR: case Opcodes.IXOR: case Opcodes.LXOR: case Opcodes.IAND: case Opcodes.LAND: case Opcodes.FADD: case Opcodes.DADD: case Opcodes.IADD: case Opcodes.LADD: case Opcodes.FSUB: case Opcodes.DSUB: case Opcodes.ISUB: case Opcodes.LSUB: case Opcodes.FDIV: case Opcodes.DDIV: case Opcodes.LDIV: case Opcodes.IDIV: case Opcodes.IREM: case Opcodes.FREM: case Opcodes.DREM: case Opcodes.LREM: case Opcodes.FMUL: case Opcodes.DMUL: case Opcodes.IMUL: case Opcodes.LMUL: return true; } return false; }