public abstract class com.oracle.truffle.js.builtins.math.AsinhNode extends com.oracle.truffle.js.builtins.math.MathOperation
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.js.builtins.math.AsinhNode
  super_class: com.oracle.truffle.js.builtins.math.MathOperation
{
  private final com.oracle.truffle.api.profiles.ConditionProfile isNegative;
    descriptor: Lcom/oracle/truffle/api/profiles/ConditionProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.nodes.function.JSBuiltin);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
        start local 1 // com.oracle.truffle.js.runtime.JSContext context
        start local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
         0: .line 52
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* builtin */
            invokespecial com.oracle.truffle.js.builtins.math.MathOperation.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
         1: .line 55
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.ConditionProfile.createBinaryProfile:()Lcom/oracle/truffle/api/profiles/ConditionProfile;
            putfield com.oracle.truffle.js.builtins.math.AsinhNode.isNegative:Lcom/oracle/truffle/api/profiles/ConditionProfile;
         2: .line 53
            return
        end local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
        end local 1 // com.oracle.truffle.js.runtime.JSContext context
        end local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/oracle/truffle/js/builtins/math/AsinhNode;
            0    3     1  context  Lcom/oracle/truffle/js/runtime/JSContext;
            0    3     2  builtin  Lcom/oracle/truffle/js/nodes/function/JSBuiltin;
    MethodParameters:
         Name  Flags
      context  
      builtin  

  protected double asinhDouble(double);
    descriptor: (D)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
        start local 1 // double x
         0: .line 59
            dload 1 /* x */
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.isNegativeZero:(D)Z
            ifeq 2
         1: .line 60
            ldc -0.0
            dreturn
         2: .line 62
      StackMap locals:
      StackMap stack:
            dload 1 /* x */
            dconst_0
            dcmpg
            ifge 4
            dload 1 /* x */
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifeq 4
         3: .line 63
            dload 1 /* x */
            dreturn
         4: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.builtins.math.AsinhNode.isNegative:Lcom/oracle/truffle/api/profiles/ConditionProfile;
            dload 1 /* x */
            dconst_0
            dcmpg
            ifge 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile
         5: iconst_0
      StackMap locals: com.oracle.truffle.js.builtins.math.AsinhNode double
      StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile int
         6: invokevirtual com.oracle.truffle.api.profiles.ConditionProfile.profile:(Z)Z
            ifeq 8
         7: .line 66
            dload 1 /* x */
            dneg
            invokestatic com.oracle.truffle.js.builtins.math.AsinhNode.asinhImpl:(D)D
            dneg
            dreturn
         8: .line 68
      StackMap locals:
      StackMap stack:
            dload 1 /* x */
            invokestatic com.oracle.truffle.js.builtins.math.AsinhNode.asinhImpl:(D)D
            dreturn
        end local 1 // double x
        end local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/oracle/truffle/js/builtins/math/AsinhNode;
            0    9     1     x  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      x     

  private static double asinhImpl(double);
    descriptor: (D)D
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // double x
         0: .line 73
            dload 0 /* x */
            dload 0 /* x */
            dload 0 /* x */
            dmul
            dconst_1
            dadd
            invokestatic java.lang.Math.sqrt:(D)D
            dadd
            invokestatic java.lang.Math.log:(D)D
            dreturn
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  D
    MethodParameters:
      Name  Flags
      x     

  protected double asinhGeneric(java.lang.Object);
    descriptor: (Ljava/lang/Object;)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
        start local 1 // java.lang.Object a
         0: .line 78
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual com.oracle.truffle.js.builtins.math.AsinhNode.toDouble:(Ljava/lang/Object;)D
            invokevirtual com.oracle.truffle.js.builtins.math.AsinhNode.asinhDouble:(D)D
            dreturn
        end local 1 // java.lang.Object a
        end local 0 // com.oracle.truffle.js.builtins.math.AsinhNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/builtins/math/AsinhNode;
            0    1     1     a  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
}
SourceFile: "AsinhNode.java"