public final class org.graalvm.compiler.nodes.calc.ReinterpretNode extends org.graalvm.compiler.nodes.calc.UnaryNode implements org.graalvm.compiler.nodes.spi.ArithmeticLIRLowerable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.nodes.calc.ReinterpretNode
  super_class: org.graalvm.compiler.nodes.calc.UnaryNode
{
  public static final org.graalvm.compiler.graph.NodeClass<org.graalvm.compiler.nodes.calc.ReinterpretNode> TYPE;
    descriptor: Lorg/graalvm/compiler/graph/NodeClass;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeClass<Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 55
            ldc Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.$assertionsDisabled:Z
         3: .line 57
            ldc Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            invokestatic org.graalvm.compiler.graph.NodeClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            putstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
        start local 1 // jdk.vm.ci.meta.JavaKind to
        start local 2 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 60
            aload 0 /* this */
            aload 1 /* to */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 2 /* value */
            invokespecial org.graalvm.compiler.nodes.calc.ReinterpretNode.<init>:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
         1: .line 61
            return
        end local 2 // org.graalvm.compiler.nodes.ValueNode value
        end local 1 // jdk.vm.ci.meta.JavaKind to
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            0    2     1     to  Ljdk/vm/ci/meta/JavaKind;
            0    2     2  value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
       Name  Flags
      to     
      value  

  public void <init>(org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
        start local 1 // org.graalvm.compiler.core.common.type.Stamp to
        start local 2 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 64
            aload 0 /* this */
            getstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            aload 1 /* to */
            aload 2 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.nodes.calc.ReinterpretNode.getReinterpretStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 2 /* value */
            invokespecial org.graalvm.compiler.nodes.calc.UnaryNode.<init>:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
         1: .line 65
            getstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.$assertionsDisabled:Z
            ifne 2
            aload 1 /* to */
            instanceof org.graalvm.compiler.core.common.type.ArithmeticStamp
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 66
      StackMap locals: org.graalvm.compiler.nodes.calc.ReinterpretNode org.graalvm.compiler.core.common.type.Stamp org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.nodes.ValueNode value
        end local 1 // org.graalvm.compiler.core.common.type.Stamp to
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            0    3     1     to  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    3     2  value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
       Name  Flags
      to     
      value  

  private jdk.vm.ci.meta.SerializableConstant evalConst(jdk.vm.ci.meta.SerializableConstant);
    descriptor: (Ljdk/vm/ci/meta/SerializableConstant;)Ljdk/vm/ci/meta/SerializableConstant;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
        start local 1 // jdk.vm.ci.meta.SerializableConstant c
         0: .line 72
            aload 1 /* c */
            invokeinterface jdk.vm.ci.meta.SerializableConstant.getSerializedSize:()I
            newarray 8
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.nio.ByteBuffer.order:(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
         1: .line 73
            aload 1 /* c */
            aload 2 /* buffer */
            invokeinterface jdk.vm.ci.meta.SerializableConstant.serialize:(Ljava/nio/ByteBuffer;)V
         2: .line 75
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.rewind:()Ljava/nio/ByteBuffer;
            pop
         3: .line 76
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            checkcast org.graalvm.compiler.core.common.type.ArithmeticStamp
            aload 2 /* buffer */
            invokevirtual org.graalvm.compiler.core.common.type.ArithmeticStamp.deserialize:(Ljava/nio/ByteBuffer;)Ljdk/vm/ci/meta/SerializableConstant;
            astore 3 /* ret */
        start local 3 // jdk.vm.ci.meta.SerializableConstant ret
         4: .line 78
            getstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.$assertionsDisabled:Z
            ifne 5
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 79
      StackMap locals: java.nio.ByteBuffer jdk.vm.ci.meta.SerializableConstant
      StackMap stack:
            aload 3 /* ret */
            areturn
        end local 3 // jdk.vm.ci.meta.SerializableConstant ret
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // jdk.vm.ci.meta.SerializableConstant c
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            0    6     1       c  Ljdk/vm/ci/meta/SerializableConstant;
            1    6     2  buffer  Ljava/nio/ByteBuffer;
            4    6     3     ret  Ljdk/vm/ci/meta/SerializableConstant;
    MethodParameters:
      Name  Flags
      c     

  public org.graalvm.compiler.nodes.ValueNode canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
        start local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
        start local 2 // org.graalvm.compiler.nodes.ValueNode forValue
         0: .line 84
            aload 2 /* forValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 2
         1: .line 85
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* this */
            aload 2 /* forValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            checkcast jdk.vm.ci.meta.SerializableConstant
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.evalConst:(Ljdk/vm/ci/meta/SerializableConstant;)Ljdk/vm/ci/meta/SerializableConstant;
            aconst_null
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/MetaAccessProvider;)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
         2: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 2 /* forValue */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.isCompatible:(Lorg/graalvm/compiler/core/common/type/Stamp;)Z
            ifeq 4
         3: .line 88
            aload 2 /* forValue */
            areturn
         4: .line 90
      StackMap locals:
      StackMap stack:
            aload 2 /* forValue */
            instanceof org.graalvm.compiler.nodes.calc.ReinterpretNode
            ifeq 7
         5: .line 91
            aload 2 /* forValue */
            checkcast org.graalvm.compiler.nodes.calc.ReinterpretNode
            astore 3 /* reinterpret */
        start local 3 // org.graalvm.compiler.nodes.calc.ReinterpretNode reinterpret
         6: .line 92
            new org.graalvm.compiler.nodes.calc.ReinterpretNode
            dup
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 3 /* reinterpret */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokespecial org.graalvm.compiler.nodes.calc.ReinterpretNode.<init>:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
            areturn
        end local 3 // org.graalvm.compiler.nodes.calc.ReinterpretNode reinterpret
         7: .line 94
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.graalvm.compiler.nodes.ValueNode forValue
        end local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            0    8     1         tool  Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
            0    8     2     forValue  Lorg/graalvm/compiler/nodes/ValueNode;
            6    7     3  reinterpret  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
    MethodParameters:
          Name  Flags
      tool      
      forValue  

  private static org.graalvm.compiler.core.common.type.IntegerStamp floatToInt(org.graalvm.compiler.core.common.type.FloatStamp);
    descriptor: (Lorg/graalvm/compiler/core/common/type/FloatStamp;)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=11, locals=16, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.FloatStamp stamp
         0: .line 110
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.getBits:()I
            istore 1 /* bits */
        start local 1 // int bits
         1: .line 112
            lconst_1
            iload 1 /* bits */
            iconst_1
            isub
            lshl
            lstore 2 /* signBit */
        start local 2 // long signBit
         2: .line 114
            iload 1 /* bits */
            bipush 64
            if_icmpne 5
         3: .line 115
            ldc Infinity
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 4 /* exponentMask */
        start local 4 // long exponentMask
         4: .line 116
            goto 7
        end local 4 // long exponentMask
         5: .line 117
      StackMap locals: int long
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.$assertionsDisabled:Z
            ifne 6
            iload 1 /* bits */
            bipush 32
            if_icmpeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 118
      StackMap locals:
      StackMap stack:
            ldc Infinity
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            lstore 4 /* exponentMask */
        start local 4 // long exponentMask
         7: .line 121
      StackMap locals: long
      StackMap stack:
            lload 4 /* exponentMask */
            lstore 6 /* positiveInfinity */
        start local 6 // long positiveInfinity
         8: .line 122
            lload 2 /* signBit */
            lload 6 /* positiveInfinity */
            lor
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 8 /* negativeInfinity */
        start local 8 // long negativeInfinity
         9: .line 123
            lload 2 /* signBit */
            lconst_0
            lor
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 10 /* negativeZero */
        start local 10 // long negativeZero
        10: .line 125
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.isNaN:()Z
            ifeq 12
        11: .line 127
            new org.graalvm.compiler.core.common.type.IntegerStamp
            dup
            iload 1 /* bits */
            lload 8 /* negativeInfinity */
            lconst_1
            ladd
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.maxValue:(I)J
            lload 4 /* exponentMask */
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            invokespecial org.graalvm.compiler.core.common.type.IntegerStamp.<init>:(IJJJJ)V
            areturn
        12: .line 131
      StackMap locals: long long long
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.isNonNaN:()Z
            ifeq 27
        13: .line 132
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
            dconst_0
            dcmpg
            ifge 19
        14: .line 133
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.lowerBound:()D
            ldc -Infinity
            dcmpl
            ifle 17
        15: .line 134
            lload 8 /* negativeInfinity */
            lconst_1
            lsub
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        16: .line 135
            goto 28
        end local 12 // long upperBound
        17: .line 136
      StackMap locals:
      StackMap stack:
            lload 8 /* negativeInfinity */
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        18: .line 138
            goto 28
        end local 12 // long upperBound
      StackMap locals:
      StackMap stack:
        19: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
            dconst_0
            dcmpl
            ifne 22
        20: .line 139
            lconst_0
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        21: .line 140
            goto 28
        end local 12 // long upperBound
      StackMap locals:
      StackMap stack:
        22: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
            ldc Infinity
            dcmpg
            ifge 25
        23: .line 141
            lload 6 /* positiveInfinity */
            lconst_1
            lsub
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        24: .line 142
            goto 28
        end local 12 // long upperBound
        25: .line 143
      StackMap locals:
      StackMap stack:
            lload 6 /* positiveInfinity */
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        26: .line 145
            goto 28
        end local 12 // long upperBound
        27: .line 146
      StackMap locals:
      StackMap stack:
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.maxValue:(I)J
            lstore 12 /* upperBound */
        start local 12 // long upperBound
        28: .line 150
      StackMap locals: long
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.lowerBound:()D
            dconst_0
            dcmpl
            ifle 34
        29: .line 151
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.isNonNaN:()Z
            ifeq 32
        30: .line 152
            lconst_1
            lstore 14 /* lowerBound */
        start local 14 // long lowerBound
        31: .line 153
            goto 41
        end local 14 // long lowerBound
        32: .line 154
      StackMap locals:
      StackMap stack:
            lload 8 /* negativeInfinity */
            lconst_1
            ladd
            lstore 14 /* lowerBound */
        start local 14 // long lowerBound
        33: .line 156
            goto 41
        end local 14 // long lowerBound
      StackMap locals:
      StackMap stack:
        34: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
            ldc -Infinity
            dcmpl
            ifne 37
        35: .line 157
            lload 8 /* negativeInfinity */
            lstore 14 /* lowerBound */
        start local 14 // long lowerBound
        36: .line 158
            goto 41
        end local 14 // long lowerBound
      StackMap locals:
      StackMap stack:
        37: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.FloatStamp.upperBound:()D
            dconst_0
            dcmpg
            ifge 40
        38: .line 159
            lload 10 /* negativeZero */
            lconst_1
            ladd
            lstore 14 /* lowerBound */
        start local 14 // long lowerBound
        39: .line 160
            goto 41
        end local 14 // long lowerBound
        40: .line 161
      StackMap locals:
      StackMap stack:
            lload 10 /* negativeZero */
            lstore 14 /* lowerBound */
        start local 14 // long lowerBound
        41: .line 164
      StackMap locals: long
      StackMap stack:
            iload 1 /* bits */
            lload 14 /* lowerBound */
            lload 12 /* upperBound */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 14 // long lowerBound
        end local 12 // long upperBound
        end local 10 // long negativeZero
        end local 8 // long negativeInfinity
        end local 6 // long positiveInfinity
        end local 4 // long exponentMask
        end local 2 // long signBit
        end local 1 // int bits
        end local 0 // org.graalvm.compiler.core.common.type.FloatStamp stamp
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   42     0             stamp  Lorg/graalvm/compiler/core/common/type/FloatStamp;
            1   42     1              bits  I
            2   42     2           signBit  J
            4    5     4      exponentMask  J
            7   42     4      exponentMask  J
            8   42     6  positiveInfinity  J
            9   42     8  negativeInfinity  J
           10   42    10      negativeZero  J
           16   17    12        upperBound  J
           18   19    12        upperBound  J
           21   22    12        upperBound  J
           24   25    12        upperBound  J
           26   27    12        upperBound  J
           28   42    12        upperBound  J
           31   32    14        lowerBound  J
           33   34    14        lowerBound  J
           36   37    14        lowerBound  J
           39   40    14        lowerBound  J
           41   42    14        lowerBound  J
    MethodParameters:
       Name  Flags
      stamp  

  private static org.graalvm.compiler.core.common.type.FloatStamp intToFloat(org.graalvm.compiler.core.common.type.IntegerStamp);
    descriptor: (Lorg/graalvm/compiler/core/common/type/IntegerStamp;)Lorg/graalvm/compiler/core/common/type/FloatStamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=25, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.IntegerStamp stamp
         0: .line 180
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.getBits:()I
            istore 1 /* bits */
        start local 1 // int bits
         1: .line 185
            lconst_1
            iload 1 /* bits */
            iconst_1
            isub
            lshl
            lstore 6 /* signBit */
        start local 6 // long signBit
         2: .line 187
            iload 1 /* bits */
            bipush 64
            if_icmpne 7
         3: .line 188
            ldc Infinity
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 8 /* exponentMask */
        start local 8 // long exponentMask
         4: .line 189
            ldc 4.9E-324
            dstore 2 /* minPositive */
        start local 2 // double minPositive
         5: .line 190
            ldc 1.7976931348623157E308
            dstore 4 /* maxPositive */
        start local 4 // double maxPositive
         6: .line 191
            goto 11
        end local 8 // long exponentMask
        end local 4 // double maxPositive
        end local 2 // double minPositive
         7: .line 192
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp int top top top top long
      StackMap stack:
            getstatic org.graalvm.compiler.nodes.calc.ReinterpretNode.$assertionsDisabled:Z
            ifne 8
            iload 1 /* bits */
            bipush 32
            if_icmpeq 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 193
      StackMap locals:
      StackMap stack:
            ldc Infinity
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            i2l
            lstore 8 /* exponentMask */
        start local 8 // long exponentMask
         9: .line 194
            ldc 1.401298464324817E-45
            dstore 2 /* minPositive */
        start local 2 // double minPositive
        10: .line 195
            ldc 3.4028234663852886E38
            dstore 4 /* maxPositive */
        start local 4 // double maxPositive
        11: .line 198
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp int double double long long
      StackMap stack:
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            lload 6 /* signBit */
            lload 8 /* exponentMask */
            lor
            ldc -1
            lxor
            land
            lstore 10 /* significandMask */
        start local 10 // long significandMask
        12: .line 200
            lload 8 /* exponentMask */
            lstore 12 /* positiveInfinity */
        start local 12 // long positiveInfinity
        13: .line 201
            lload 6 /* signBit */
            lload 12 /* positiveInfinity */
            lor
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 14 /* negativeInfinity */
        start local 14 // long negativeInfinity
        14: .line 202
            lload 6 /* signBit */
            lconst_0
            lor
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 16 /* negativeZero */
        start local 16 // long negativeZero
        15: .line 204
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.downMask:()J
            lload 8 /* exponentMask */
            land
            lload 8 /* exponentMask */
            lcmp
            ifne 17
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.downMask:()J
            lload 10 /* significandMask */
            land
            lconst_0
            lcmp
            ifeq 17
        16: .line 206
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            iload 1 /* bits */
            ldc NaN
            ldc NaN
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(IDDZ)V
            areturn
        17: .line 210
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp int double double long long long long long long
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lload 14 /* negativeInfinity */
            lcmp
            ifge 23
        18: .line 211
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 16 /* negativeZero */
            lcmp
            ifle 21
        19: .line 212
            dload 2 /* minPositive */
            dneg
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        20: .line 213
            goto 41
        end local 18 // double upperBound
        21: .line 214
      StackMap locals:
      StackMap stack:
            ldc -0.0
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        22: .line 216
            goto 41
        end local 18 // double upperBound
      StackMap locals:
      StackMap stack:
        23: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lconst_0
            lcmp
            ifge 34
        24: .line 217
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 14 /* negativeInfinity */
            lcmp
            ifle 26
        25: .line 218
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            iload 1 /* bits */
            ldc NaN
            ldc NaN
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(IDDZ)V
            areturn
        26: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 14 /* negativeInfinity */
            lcmp
            ifne 29
        27: .line 220
            ldc -Infinity
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        28: .line 221
            goto 41
        end local 18 // double upperBound
      StackMap locals:
      StackMap stack:
        29: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 16 /* negativeZero */
            lcmp
            ifle 32
        30: .line 222
            dload 2 /* minPositive */
            dneg
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        31: .line 223
            goto 41
        end local 18 // double upperBound
        32: .line 224
      StackMap locals:
      StackMap stack:
            ldc -0.0
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        33: .line 226
            goto 41
        end local 18 // double upperBound
      StackMap locals:
      StackMap stack:
        34: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lconst_0
            lcmp
            ifne 37
        35: .line 227
            dconst_0
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        36: .line 228
            goto 41
        end local 18 // double upperBound
      StackMap locals:
      StackMap stack:
        37: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lload 12 /* positiveInfinity */
            lcmp
            ifge 40
        38: .line 229
            dload 4 /* maxPositive */
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        39: .line 230
            goto 41
        end local 18 // double upperBound
        40: .line 231
      StackMap locals:
      StackMap stack:
            ldc Infinity
            dstore 18 /* upperBound */
        start local 18 // double upperBound
        41: .line 235
      StackMap locals: double
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 12 /* positiveInfinity */
            lcmp
            ifle 43
        42: .line 236
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            iload 1 /* bits */
            ldc NaN
            ldc NaN
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(IDDZ)V
            areturn
        43: .line 237
      StackMap locals:
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 12 /* positiveInfinity */
            lcmp
            ifne 46
        44: .line 238
            ldc Infinity
            dstore 20 /* lowerBound */
        start local 20 // double lowerBound
        45: .line 239
            goto 53
        end local 20 // double lowerBound
      StackMap locals:
      StackMap stack:
        46: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lconst_0
            lcmp
            ifle 49
        47: .line 240
            dload 2 /* minPositive */
            dstore 20 /* lowerBound */
        start local 20 // double lowerBound
        48: .line 241
            goto 53
        end local 20 // double lowerBound
      StackMap locals:
      StackMap stack:
        49: aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lload 14 /* negativeInfinity */
            lcmp
            ifle 52
        50: .line 242
            dconst_0
            dstore 20 /* lowerBound */
        start local 20 // double lowerBound
        51: .line 243
            goto 53
        end local 20 // double lowerBound
        52: .line 244
      StackMap locals:
      StackMap stack:
            ldc -Infinity
            dstore 20 /* lowerBound */
        start local 20 // double lowerBound
        53: .line 248
      StackMap locals: double
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upMask:()J
            lload 8 /* exponentMask */
            land
            lload 8 /* exponentMask */
            lcmp
            ifeq 56
        54: .line 250
            iconst_1
            istore 22 /* nonNaN */
        start local 22 // boolean nonNaN
        55: .line 251
            goto 65
        end local 22 // boolean nonNaN
        56: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.lowerBound:()J
            lconst_0
            lcmp
            ifge 57
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lload 14 /* negativeInfinity */
            lcmp
            ifle 57
            iconst_1
            goto 58
      StackMap locals:
      StackMap stack:
        57: iconst_0
      StackMap locals:
      StackMap stack: int
        58: istore 23 /* negativeNaNBlock */
        start local 23 // boolean negativeNaNBlock
        59: .line 253
            aload 0 /* stamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upperBound:()J
            lload 12 /* positiveInfinity */
            lcmp
            ifle 60
            iconst_1
            goto 61
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp int double double long long long long long long double double top int
      StackMap stack:
        60: iconst_0
      StackMap locals:
      StackMap stack: int
        61: istore 24 /* positiveNaNBlock */
        start local 24 // boolean positiveNaNBlock
        62: .line 254
            iload 23 /* negativeNaNBlock */
            ifne 63
            iload 24 /* positiveNaNBlock */
            ifne 63
            iconst_1
            goto 64
      StackMap locals: int
      StackMap stack:
        63: iconst_0
      StackMap locals:
      StackMap stack: int
        64: istore 22 /* nonNaN */
        end local 24 // boolean positiveNaNBlock
        end local 23 // boolean negativeNaNBlock
        start local 22 // boolean nonNaN
        65: .line 257
      StackMap locals: org.graalvm.compiler.core.common.type.IntegerStamp int double double long long long long long long double double int
      StackMap stack:
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            iload 1 /* bits */
            dload 20 /* lowerBound */
            dload 18 /* upperBound */
            iload 22 /* nonNaN */
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(IDDZ)V
            areturn
        end local 22 // boolean nonNaN
        end local 20 // double lowerBound
        end local 18 // double upperBound
        end local 16 // long negativeZero
        end local 14 // long negativeInfinity
        end local 12 // long positiveInfinity
        end local 10 // long significandMask
        end local 8 // long exponentMask
        end local 6 // long signBit
        end local 4 // double maxPositive
        end local 2 // double minPositive
        end local 1 // int bits
        end local 0 // org.graalvm.compiler.core.common.type.IntegerStamp stamp
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   66     0             stamp  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            1   66     1              bits  I
            5    7     2       minPositive  D
           10   66     2       minPositive  D
            6    7     4       maxPositive  D
           11   66     4       maxPositive  D
            2   66     6           signBit  J
            4    7     8      exponentMask  J
            9   66     8      exponentMask  J
           12   66    10   significandMask  J
           13   66    12  positiveInfinity  J
           14   66    14  negativeInfinity  J
           15   66    16      negativeZero  J
           20   21    18        upperBound  D
           22   23    18        upperBound  D
           28   29    18        upperBound  D
           31   32    18        upperBound  D
           33   34    18        upperBound  D
           36   37    18        upperBound  D
           39   40    18        upperBound  D
           41   66    18        upperBound  D
           45   46    20        lowerBound  D
           48   49    20        lowerBound  D
           51   52    20        lowerBound  D
           53   66    20        lowerBound  D
           55   56    22            nonNaN  Z
           65   66    22            nonNaN  Z
           59   65    23  negativeNaNBlock  Z
           62   65    24  positiveNaNBlock  Z
    MethodParameters:
       Name  Flags
      stamp  

  private static org.graalvm.compiler.core.common.type.Stamp getReinterpretStamp(org.graalvm.compiler.core.common.type.Stamp, org.graalvm.compiler.core.common.type.Stamp);
    descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.type.Stamp toStamp
        start local 1 // org.graalvm.compiler.core.common.type.Stamp fromStamp
         0: .line 261
            aload 0 /* toStamp */
            instanceof org.graalvm.compiler.core.common.type.IntegerStamp
            ifeq 2
            aload 1 /* fromStamp */
            instanceof org.graalvm.compiler.core.common.type.FloatStamp
            ifeq 2
         1: .line 262
            aload 1 /* fromStamp */
            checkcast org.graalvm.compiler.core.common.type.FloatStamp
            invokestatic org.graalvm.compiler.nodes.calc.ReinterpretNode.floatToInt:(Lorg/graalvm/compiler/core/common/type/FloatStamp;)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
         2: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* toStamp */
            instanceof org.graalvm.compiler.core.common.type.FloatStamp
            ifeq 4
            aload 1 /* fromStamp */
            instanceof org.graalvm.compiler.core.common.type.IntegerStamp
            ifeq 4
         3: .line 264
            aload 1 /* fromStamp */
            checkcast org.graalvm.compiler.core.common.type.IntegerStamp
            invokestatic org.graalvm.compiler.nodes.calc.ReinterpretNode.intToFloat:(Lorg/graalvm/compiler/core/common/type/IntegerStamp;)Lorg/graalvm/compiler/core/common/type/FloatStamp;
            areturn
         4: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* toStamp */
            areturn
        end local 1 // org.graalvm.compiler.core.common.type.Stamp fromStamp
        end local 0 // org.graalvm.compiler.core.common.type.Stamp toStamp
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    toStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    5     1  fromStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
           Name  Flags
      toStamp    
      fromStamp  

  public boolean inferStamp();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
         0: .line 272
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.nodes.calc.ReinterpretNode.getReinterpretStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.updateStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;)Z
            ireturn
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;

  public void generate(org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool, org.graalvm.compiler.lir.gen.ArithmeticLIRGeneratorTool);
    descriptor: (Lorg/graalvm/compiler/nodes/spi/NodeLIRBuilderTool;Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
        start local 1 // org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool builder
        start local 2 // org.graalvm.compiler.lir.gen.ArithmeticLIRGeneratorTool gen
         0: .line 277
            aload 1 /* builder */
            invokeinterface org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool.getLIRGeneratorTool:()Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 3 /* kind */
        start local 3 // org.graalvm.compiler.core.common.LIRKind kind
         1: .line 278
            aload 1 /* builder */
            aload 0 /* this */
            aload 2 /* gen */
            aload 3 /* kind */
            aload 1 /* builder */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokeinterface org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
            invokeinterface org.graalvm.compiler.lir.gen.ArithmeticLIRGeneratorTool.emitReinterpret:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            invokeinterface org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool.setResult:(Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            pop
         2: .line 279
            return
        end local 3 // org.graalvm.compiler.core.common.LIRKind kind
        end local 2 // org.graalvm.compiler.lir.gen.ArithmeticLIRGeneratorTool gen
        end local 1 // org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool builder
        end local 0 // org.graalvm.compiler.nodes.calc.ReinterpretNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/nodes/calc/ReinterpretNode;
            0    3     1  builder  Lorg/graalvm/compiler/nodes/spi/NodeLIRBuilderTool;
            0    3     2      gen  Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;
            1    3     3     kind  Lorg/graalvm/compiler/core/common/LIRKind;
    MethodParameters:
         Name  Flags
      builder  
      gen      

  public static org.graalvm.compiler.nodes.ValueNode reinterpret(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // jdk.vm.ci.meta.JavaKind toKind
        start local 1 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 282
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            new org.graalvm.compiler.nodes.calc.ReinterpretNode
            dup
            aload 0 /* toKind */
            aload 1 /* value */
            invokespecial org.graalvm.compiler.nodes.calc.ReinterpretNode.<init>:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            areturn
        end local 1 // org.graalvm.compiler.nodes.ValueNode value
        end local 0 // jdk.vm.ci.meta.JavaKind toKind
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  toKind  Ljdk/vm/ci/meta/JavaKind;
            0    1     1   value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
        Name  Flags
      toKind  
      value   

  public static native float reinterpret(jdk.vm.ci.meta.JavaKind, int);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;I)F
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
    MethodParameters:
       Name  Flags
      kind   
      value  

  public static native int reinterpret(jdk.vm.ci.meta.JavaKind, float);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;F)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
    MethodParameters:
       Name  Flags
      kind   
      value  

  public static native double reinterpret(jdk.vm.ci.meta.JavaKind, long);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;J)D
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
    MethodParameters:
       Name  Flags
      kind   
      value  

  public static native long reinterpret(jdk.vm.ci.meta.JavaKind, double);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;D)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
    MethodParameters:
       Name  Flags
      kind   
      value  

  public org.graalvm.compiler.graph.Node canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokevirtual org.graalvm.compiler.nodes.calc.ReinterpretNode.canonical:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ReinterpretNode.java"
InnerClasses:
  public abstract ConstantNodeParameter = org.graalvm.compiler.graph.Node$ConstantNodeParameter of org.graalvm.compiler.graph.Node
  public abstract NodeIntrinsic = org.graalvm.compiler.graph.Node$NodeIntrinsic of org.graalvm.compiler.graph.Node
  public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.nodeinfo.NodeInfo(cycles = org.graalvm.compiler.nodeinfo.NodeCycles.CYCLES_1:Lorg/graalvm/compiler/nodeinfo/NodeCycles;)