public final class com.oracle.truffle.llvm.runtime.SulongStackTrace$Element
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.llvm.runtime.SulongStackTrace$Element
  super_class: java.lang.Object
{
  private final java.lang.String sourceFunctionName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceLocation sourceLocation;
    descriptor: Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String irFunctionName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String irBlock;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String irSourceName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(java.lang.String, com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceLocation, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
        start local 1 // java.lang.String sourceFunctionName
        start local 2 // com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceLocation sourceLocation
        start local 3 // java.lang.String irFunctionName
        start local 4 // java.lang.String llvmirSourceName
        start local 5 // java.lang.String irBlock
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* sourceFunctionName */
            putfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceFunctionName:Ljava/lang/String;
         2: .line 57
            aload 0 /* this */
            aload 3 /* irFunctionName */
            putfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irFunctionName:Ljava/lang/String;
         3: .line 58
            aload 0 /* this */
            aload 5 /* irBlock */
            putfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irBlock:Ljava/lang/String;
         4: .line 59
            aload 0 /* this */
            aload 2 /* sourceLocation */
            putfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceLocation:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
         5: .line 60
            aload 0 /* this */
            aload 4 /* llvmirSourceName */
            putfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irSourceName:Ljava/lang/String;
         6: .line 61
            return
        end local 5 // java.lang.String irBlock
        end local 4 // java.lang.String llvmirSourceName
        end local 3 // java.lang.String irFunctionName
        end local 2 // com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceLocation sourceLocation
        end local 1 // java.lang.String sourceFunctionName
        end local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    7     0                this  Lcom/oracle/truffle/llvm/runtime/SulongStackTrace$Element;
            0    7     1  sourceFunctionName  Ljava/lang/String;
            0    7     2      sourceLocation  Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
            0    7     3      irFunctionName  Ljava/lang/String;
            0    7     4    llvmirSourceName  Ljava/lang/String;
            0    7     5             irBlock  Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      sourceFunctionName  
      sourceLocation      
      irFunctionName      
      llvmirSourceName    
      irBlock             

  void <init>(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
        start local 1 // java.lang.String irFunctionName
        start local 2 // java.lang.String llvmirSourceName
        start local 3 // java.lang.String irBlock
         0: .line 64
            aload 0 /* this */
            aconst_null
            aconst_null
            aload 1 /* irFunctionName */
            aload 2 /* llvmirSourceName */
            aload 3 /* irBlock */
            invokespecial com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.<init>:(Ljava/lang/String;Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 65
            return
        end local 3 // java.lang.String irBlock
        end local 2 // java.lang.String llvmirSourceName
        end local 1 // java.lang.String irFunctionName
        end local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lcom/oracle/truffle/llvm/runtime/SulongStackTrace$Element;
            0    2     1    irFunctionName  Ljava/lang/String;
            0    2     2  llvmirSourceName  Ljava/lang/String;
            0    2     3           irBlock  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      irFunctionName    
      llvmirSourceName  
      irBlock           

  void appendToStackTrace(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
        start local 1 // java.lang.StringBuilder builder
         0: .line 68
            aload 1 /* builder */
            ldc "\t "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         1: .line 69
            iconst_0
            istore 2 /* encloseIRScope */
        start local 2 // boolean encloseIRScope
         2: .line 71
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceFunctionName:Ljava/lang/String;
            ifnull 6
         3: .line 72
            aload 1 /* builder */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceFunctionName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 73
            iconst_1
            istore 2 /* encloseIRScope */
         5: .line 75
            goto 8
      StackMap locals: int
      StackMap stack:
         6: aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceLocation:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
            ifnull 8
         7: .line 76
            aload 1 /* builder */
            ldc "<unknown>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 79
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceLocation:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
            ifnull 12
         9: .line 80
            aload 1 /* builder */
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 81
            aload 1 /* builder */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.sourceLocation:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceLocation;
            invokevirtual com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceLocation.describeLocation:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 82
            iconst_1
            istore 2 /* encloseIRScope */
        12: .line 85
      StackMap locals:
      StackMap stack:
            iload 2 /* encloseIRScope */
            ifeq 14
        13: .line 86
            aload 1 /* builder */
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 89
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            ldc "LLVM IR Function "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irFunctionName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 90
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irSourceName:Ljava/lang/String;
            ifnull 17
        16: .line 91
            aload 1 /* builder */
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irSourceName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 93
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irBlock:Ljava/lang/String;
            ifnull 19
        18: .line 94
            aload 1 /* builder */
            ldc " in Block {"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.irBlock:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 97
      StackMap locals:
      StackMap stack:
            iload 2 /* encloseIRScope */
            ifeq 21
        20: .line 98
            aload 1 /* builder */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        21: .line 101
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        22: .line 102
            return
        end local 2 // boolean encloseIRScope
        end local 1 // java.lang.StringBuilder builder
        end local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   23     0            this  Lcom/oracle/truffle/llvm/runtime/SulongStackTrace$Element;
            0   23     1         builder  Ljava/lang/StringBuilder;
            2   23     2  encloseIRScope  Z
    MethodParameters:
         Name  Flags
      builder  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
         0: .line 106
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 107
            aload 0 /* this */
            aload 1 /* sb */
            invokevirtual com.oracle.truffle.llvm.runtime.SulongStackTrace$Element.appendToStackTrace:(Ljava/lang/StringBuilder;)V
         2: .line 108
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // com.oracle.truffle.llvm.runtime.SulongStackTrace$Element this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/truffle/llvm/runtime/SulongStackTrace$Element;
            1    3     1    sb  Ljava/lang/StringBuilder;
}
SourceFile: "SulongStackTrace.java"
NestHost: com.oracle.truffle.llvm.runtime.SulongStackTrace
InnerClasses:
  public final Element = com.oracle.truffle.llvm.runtime.SulongStackTrace$Element of com.oracle.truffle.llvm.runtime.SulongStackTrace