public final class com.oracle.truffle.llvm.parser.binary.BinaryParser
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.llvm.parser.binary.BinaryParser
  super_class: java.lang.Object
{
  private java.util.ArrayList<java.lang.String> libraries;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  private java.util.ArrayList<java.lang.String> paths;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

  private com.oracle.truffle.llvm.runtime.LibraryLocator locator;
    descriptor: Lcom/oracle/truffle/llvm/runtime/LibraryLocator;
    flags: (0x0002) ACC_PRIVATE

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

  private static volatile int[] $SWITCH_TABLE$com$oracle$truffle$llvm$runtime$Magic;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 56
            ldc Lcom/oracle/truffle/llvm/parser/binary/BinaryParser;
            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 com.oracle.truffle.llvm.parser.binary.BinaryParser.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
         0: .line 56
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 58
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.truffle.llvm.parser.binary.BinaryParser.libraries:Ljava/util/ArrayList;
         2: .line 59
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.truffle.llvm.parser.binary.BinaryParser.paths:Ljava/util/ArrayList;
         3: .line 60
            aload 0 /* this */
            getstatic com.oracle.truffle.llvm.runtime.DefaultLibraryLocator.INSTANCE:Lcom/oracle/truffle/llvm/runtime/DefaultLibraryLocator;
            putfield com.oracle.truffle.llvm.parser.binary.BinaryParser.locator:Lcom/oracle/truffle/llvm/runtime/LibraryLocator;
         4: .line 56
            return
        end local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/truffle/llvm/parser/binary/BinaryParser;

  public static com.oracle.truffle.llvm.runtime.Magic getMagic(com.oracle.truffle.llvm.parser.scanner.BitStream);
    descriptor: (Lcom/oracle/truffle/llvm/parser/scanner/BitStream;)Lcom/oracle/truffle/llvm/runtime/Magic;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.scanner.BitStream b
         0: .line 64
            aload 0 /* b */
            lconst_0
            bipush 32
            invokevirtual com.oracle.truffle.llvm.parser.scanner.BitStream.read:(JI)J
            l2i
            invokestatic java.lang.Integer.toUnsignedLong:(I)J
            invokestatic com.oracle.truffle.llvm.runtime.Magic.get:(J)Lcom/oracle/truffle/llvm/runtime/Magic;
         1: areturn
         2: .line 65
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         3: .line 70
            getstatic com.oracle.truffle.llvm.runtime.Magic.UNKNOWN:Lcom/oracle/truffle/llvm/runtime/Magic;
            areturn
        end local 0 // com.oracle.truffle.llvm.parser.scanner.BitStream b
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     b  Lcom/oracle/truffle/llvm/parser/scanner/BitStream;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      b     

  public static com.oracle.truffle.llvm.parser.binary.BinaryParserResult parse(org.graalvm.polyglot.io.ByteSequence, com.oracle.truffle.api.source.Source, com.oracle.truffle.llvm.runtime.LLVMContext);
    descriptor: (Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Lcom/oracle/truffle/llvm/parser/binary/BinaryParserResult;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.io.ByteSequence bytes
        start local 1 // com.oracle.truffle.api.source.Source bcSource
        start local 2 // com.oracle.truffle.llvm.runtime.LLVMContext context
         0: .line 75
            new com.oracle.truffle.llvm.parser.binary.BinaryParser
            dup
            invokespecial com.oracle.truffle.llvm.parser.binary.BinaryParser.<init>:()V
            aload 0 /* bytes */
            aload 1 /* bcSource */
            aload 2 /* context */
            invokevirtual com.oracle.truffle.llvm.parser.binary.BinaryParser.parseInternal:(Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Lcom/oracle/truffle/llvm/parser/binary/BinaryParserResult;
            areturn
        end local 2 // com.oracle.truffle.llvm.runtime.LLVMContext context
        end local 1 // com.oracle.truffle.api.source.Source bcSource
        end local 0 // org.graalvm.polyglot.io.ByteSequence bytes
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0     bytes  Lorg/graalvm/polyglot/io/ByteSequence;
            0    1     1  bcSource  Lcom/oracle/truffle/api/source/Source;
            0    1     2   context  Lcom/oracle/truffle/llvm/runtime/LLVMContext;
    MethodParameters:
          Name  Flags
      bytes     
      bcSource  
      context   

  private com.oracle.truffle.llvm.parser.binary.BinaryParserResult parseInternal(org.graalvm.polyglot.io.ByteSequence, com.oracle.truffle.api.source.Source, com.oracle.truffle.llvm.runtime.LLVMContext);
    descriptor: (Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;Lcom/oracle/truffle/llvm/runtime/LLVMContext;)Lcom/oracle/truffle/llvm/parser/binary/BinaryParserResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
        start local 1 // org.graalvm.polyglot.io.ByteSequence bytes
        start local 2 // com.oracle.truffle.api.source.Source bcSource
        start local 3 // com.oracle.truffle.llvm.runtime.LLVMContext context
         0: .line 79
            getstatic com.oracle.truffle.llvm.parser.binary.BinaryParser.$assertionsDisabled:Z
            ifne 1
            aload 1 /* bytes */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 81
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* bytes */
            aload 2 /* bcSource */
            invokevirtual com.oracle.truffle.llvm.parser.binary.BinaryParser.parseBitcode:(Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;)Lorg/graalvm/polyglot/io/ByteSequence;
            astore 4 /* bitcode */
        start local 4 // org.graalvm.polyglot.io.ByteSequence bitcode
         2: .line 82
            aload 4 /* bitcode */
            ifnonnull 4
         3: .line 84
            aconst_null
            areturn
         4: .line 86
      StackMap locals: org.graalvm.polyglot.io.ByteSequence
      StackMap stack:
            aload 2 /* bcSource */
            ifnull 6
         5: .line 87
            aload 3 /* context */
            aload 2 /* bcSource */
            invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
            invokestatic com.oracle.truffle.llvm.runtime.LibraryLocator.traceParseBitcode:(Lcom/oracle/truffle/llvm/runtime/LLVMContext;Ljava/lang/Object;)V
         6: .line 89
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.llvm.parser.binary.BinaryParserResult
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.binary.BinaryParser.libraries:Ljava/util/ArrayList;
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.binary.BinaryParser.paths:Ljava/util/ArrayList;
            aload 4 /* bitcode */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.binary.BinaryParser.locator:Lcom/oracle/truffle/llvm/runtime/LibraryLocator;
            aload 2 /* bcSource */
            invokespecial com.oracle.truffle.llvm.parser.binary.BinaryParserResult.<init>:(Ljava/util/ArrayList;Ljava/util/ArrayList;Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/llvm/runtime/LibraryLocator;Lcom/oracle/truffle/api/source/Source;)V
            areturn
        end local 4 // org.graalvm.polyglot.io.ByteSequence bitcode
        end local 3 // com.oracle.truffle.llvm.runtime.LLVMContext context
        end local 2 // com.oracle.truffle.api.source.Source bcSource
        end local 1 // org.graalvm.polyglot.io.ByteSequence bytes
        end local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/oracle/truffle/llvm/parser/binary/BinaryParser;
            0    7     1     bytes  Lorg/graalvm/polyglot/io/ByteSequence;
            0    7     2  bcSource  Lcom/oracle/truffle/api/source/Source;
            0    7     3   context  Lcom/oracle/truffle/llvm/runtime/LLVMContext;
            2    7     4   bitcode  Lorg/graalvm/polyglot/io/ByteSequence;
    MethodParameters:
          Name  Flags
      bytes     
      bcSource  
      context   

  public static java.lang.String getOrigin(com.oracle.truffle.api.source.Source);
    descriptor: (Lcom/oracle/truffle/api/source/Source;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // com.oracle.truffle.api.source.Source source
         0: .line 93
            aload 0 /* source */
            ifnonnull 2
         1: .line 94
            aconst_null
            areturn
         2: .line 96
      StackMap locals:
      StackMap stack:
            aload 0 /* source */
            invokevirtual com.oracle.truffle.api.source.Source.getPath:()Ljava/lang/String;
            astore 1 /* sourcePath */
        start local 1 // java.lang.String sourcePath
         3: .line 97
            aload 1 /* sourcePath */
            ifnonnull 5
         4: .line 98
            aconst_null
            areturn
         5: .line 100
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* sourcePath */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
            astore 2 /* parent */
        start local 2 // java.nio.file.Path parent
         6: .line 101
            aload 2 /* parent */
            ifnonnull 8
         7: .line 102
            aconst_null
            areturn
         8: .line 104
      StackMap locals: java.nio.file.Path
      StackMap stack:
            aload 2 /* parent */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.nio.file.Path parent
        end local 1 // java.lang.String sourcePath
        end local 0 // com.oracle.truffle.api.source.Source source
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0      source  Lcom/oracle/truffle/api/source/Source;
            3    9     1  sourcePath  Ljava/lang/String;
            6    9     2      parent  Ljava/nio/file/Path;
    MethodParameters:
        Name  Flags
      source  

  private org.graalvm.polyglot.io.ByteSequence parseBitcode(org.graalvm.polyglot.io.ByteSequence, com.oracle.truffle.api.source.Source);
    descriptor: (Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;)Lorg/graalvm/polyglot/io/ByteSequence;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=22, args_size=3
        start local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
        start local 1 // org.graalvm.polyglot.io.ByteSequence bytes
        start local 2 // com.oracle.truffle.api.source.Source source
         0: .line 108
            aload 1 /* bytes */
            invokestatic com.oracle.truffle.llvm.parser.scanner.BitStream.create:(Lorg/graalvm/polyglot/io/ByteSequence;)Lcom/oracle/truffle/llvm/parser/scanner/BitStream;
            astore 3 /* b */
        start local 3 // com.oracle.truffle.llvm.parser.scanner.BitStream b
         1: .line 109
            aload 3 /* b */
            invokestatic com.oracle.truffle.llvm.parser.binary.BinaryParser.getMagic:(Lcom/oracle/truffle/llvm/parser/scanner/BitStream;)Lcom/oracle/truffle/llvm/runtime/Magic;
            astore 4 /* magicWord */
        start local 4 // com.oracle.truffle.llvm.runtime.Magic magicWord
         2: .line 110
            invokestatic com.oracle.truffle.llvm.parser.binary.BinaryParser.$SWITCH_TABLE$com$oracle$truffle$llvm$runtime$Magic:()[I
            aload 4 /* magicWord */
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iaload
            tableswitch { // 1 - 8
                    1: 3
                    2: 4
                    3: 7
                    4: 19
                    5: 19
                    6: 19
                    7: 19
                    8: 28
              default: 33
          }
         3: .line 112
      StackMap locals: com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic
      StackMap stack:
            aload 1 /* bytes */
            areturn
         4: .line 117
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            ldc 64
            bipush 32
            invokevirtual com.oracle.truffle.llvm.parser.scanner.BitStream.read:(JI)J
            lstore 5 /* offset */
        start local 5 // long offset
         5: .line 119
            aload 3 /* b */
            ldc 96
            bipush 32
            invokevirtual com.oracle.truffle.llvm.parser.scanner.BitStream.read:(JI)J
            lstore 7 /* size */
        start local 7 // long size
         6: .line 120
            aload 1 /* bytes */
            lload 5 /* offset */
            l2i
            lload 5 /* offset */
            lload 7 /* size */
            ladd
            l2i
            invokeinterface org.graalvm.polyglot.io.ByteSequence.subSequence:(II)Lorg/graalvm/polyglot/io/ByteSequence;
            areturn
        end local 7 // long size
        end local 5 // long offset
         7: .line 122
      StackMap locals:
      StackMap stack:
            aload 1 /* bytes */
            invokestatic com.oracle.truffle.llvm.parser.elf.ElfFile.create:(Lorg/graalvm/polyglot/io/ByteSequence;)Lcom/oracle/truffle/llvm/parser/elf/ElfFile;
            astore 9 /* elfFile */
        start local 9 // com.oracle.truffle.llvm.parser.elf.ElfFile elfFile
         8: .line 123
            aload 9 /* elfFile */
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfFile.getSectionHeaderTable:()Lcom/oracle/truffle/llvm/parser/elf/ElfSectionHeaderTable;
            ldc ".llvmbc"
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable.getEntry:(Ljava/lang/String;)Lcom/oracle/truffle/llvm/parser/elf/ElfSectionHeaderTable$Entry;
            astore 10 /* llvmbc */
        start local 10 // com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry llvmbc
         9: .line 124
            aload 10 /* llvmbc */
            ifnonnull 11
        10: .line 126
            aconst_null
            areturn
        11: .line 128
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic top top top top com.oracle.truffle.llvm.parser.elf.ElfFile com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry
      StackMap stack:
            aload 9 /* elfFile */
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfFile.getDynamicSection:()Lcom/oracle/truffle/llvm/parser/elf/ElfDynamicSection;
            astore 11 /* dynamicSection */
        start local 11 // com.oracle.truffle.llvm.parser.elf.ElfDynamicSection dynamicSection
        12: .line 129
            aload 11 /* dynamicSection */
            ifnull 16
        13: .line 130
            aload 11 /* dynamicSection */
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfDynamicSection.getDTNeeded:()Ljava/util/List;
            astore 12 /* elfLibraries */
        start local 12 // java.util.List elfLibraries
        14: .line 131
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.binary.BinaryParser.libraries:Ljava/util/ArrayList;
            aload 12 /* elfLibraries */
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        15: .line 132
            aload 0 /* this */
            new com.oracle.truffle.llvm.parser.elf.ElfLibraryLocator
            dup
            aload 9 /* elfFile */
            aload 2 /* source */
            invokespecial com.oracle.truffle.llvm.parser.elf.ElfLibraryLocator.<init>:(Lcom/oracle/truffle/llvm/parser/elf/ElfFile;Lcom/oracle/truffle/api/source/Source;)V
            putfield com.oracle.truffle.llvm.parser.binary.BinaryParser.locator:Lcom/oracle/truffle/llvm/runtime/LibraryLocator;
        end local 12 // java.util.List elfLibraries
        16: .line 134
      StackMap locals: com.oracle.truffle.llvm.parser.elf.ElfDynamicSection
      StackMap stack:
            aload 10 /* llvmbc */
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry.getOffset:()J
            lstore 12 /* elfOffset */
        start local 12 // long elfOffset
        17: .line 135
            aload 10 /* llvmbc */
            invokevirtual com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry.getSize:()J
            lstore 14 /* elfSize */
        start local 14 // long elfSize
        18: .line 136
            aload 1 /* bytes */
            lload 12 /* elfOffset */
            l2i
            lload 12 /* elfOffset */
            lload 14 /* elfSize */
            ladd
            l2i
            invokeinterface org.graalvm.polyglot.io.ByteSequence.subSequence:(II)Lorg/graalvm/polyglot/io/ByteSequence;
            areturn
        end local 14 // long elfSize
        end local 12 // long elfOffset
        end local 11 // com.oracle.truffle.llvm.parser.elf.ElfDynamicSection dynamicSection
        end local 10 // com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry llvmbc
        end local 9 // com.oracle.truffle.llvm.parser.elf.ElfFile elfFile
        19: .line 141
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic
      StackMap stack:
            aload 1 /* bytes */
            invokestatic com.oracle.truffle.llvm.parser.macho.MachOFile.create:(Lorg/graalvm/polyglot/io/ByteSequence;)Lcom/oracle/truffle/llvm/parser/macho/MachOFile;
            astore 16 /* machOFile */
        start local 16 // com.oracle.truffle.llvm.parser.macho.MachOFile machOFile
        20: .line 143
            aload 2 /* source */
            invokestatic com.oracle.truffle.llvm.parser.binary.BinaryParser.getOrigin:(Lcom/oracle/truffle/api/source/Source;)Ljava/lang/String;
            astore 17 /* origin */
        start local 17 // java.lang.String origin
        21: .line 144
            aload 16 /* machOFile */
            aload 17 /* origin */
            invokevirtual com.oracle.truffle.llvm.parser.macho.MachOFile.getDyLibs:(Ljava/lang/String;)Ljava/util/List;
            astore 18 /* machoLibraries */
        start local 18 // java.util.List machoLibraries
        22: .line 145
            aload 0 /* this */
            new com.oracle.truffle.llvm.parser.macho.MachOLibraryLocator
            dup
            aload 16 /* machOFile */
            aload 2 /* source */
            invokespecial com.oracle.truffle.llvm.parser.macho.MachOLibraryLocator.<init>:(Lcom/oracle/truffle/llvm/parser/macho/MachOFile;Lcom/oracle/truffle/api/source/Source;)V
            putfield com.oracle.truffle.llvm.parser.binary.BinaryParser.locator:Lcom/oracle/truffle/llvm/runtime/LibraryLocator;
        23: .line 146
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.binary.BinaryParser.libraries:Ljava/util/ArrayList;
            aload 18 /* machoLibraries */
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        24: .line 148
            aload 16 /* machOFile */
            invokevirtual com.oracle.truffle.llvm.parser.macho.MachOFile.extractBitcode:()Lorg/graalvm/polyglot/io/ByteSequence;
            astore 19 /* machoBitcode */
        start local 19 // org.graalvm.polyglot.io.ByteSequence machoBitcode
        25: .line 149
            aload 19 /* machoBitcode */
            ifnonnull 27
        26: .line 150
            aconst_null
            areturn
        27: .line 152
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic top top top top top top top top top top top com.oracle.truffle.llvm.parser.macho.MachOFile java.lang.String java.util.List org.graalvm.polyglot.io.ByteSequence
      StackMap stack:
            aload 0 /* this */
            aload 19 /* machoBitcode */
            aload 2 /* source */
            invokevirtual com.oracle.truffle.llvm.parser.binary.BinaryParser.parseBitcode:(Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;)Lorg/graalvm/polyglot/io/ByteSequence;
            areturn
        end local 19 // org.graalvm.polyglot.io.ByteSequence machoBitcode
        end local 18 // java.util.List machoLibraries
        end local 17 // java.lang.String origin
        end local 16 // com.oracle.truffle.llvm.parser.macho.MachOFile machOFile
        28: .line 154
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic
      StackMap stack:
            aload 1 /* bytes */
            invokestatic com.oracle.truffle.llvm.parser.macho.Xar.create:(Lorg/graalvm/polyglot/io/ByteSequence;)Lcom/oracle/truffle/llvm/parser/macho/Xar;
            astore 20 /* xarFile */
        start local 20 // com.oracle.truffle.llvm.parser.macho.Xar xarFile
        29: .line 155
            aload 20 /* xarFile */
            invokevirtual com.oracle.truffle.llvm.parser.macho.Xar.extractBitcode:()Lorg/graalvm/polyglot/io/ByteSequence;
            astore 21 /* xarBitcode */
        start local 21 // org.graalvm.polyglot.io.ByteSequence xarBitcode
        30: .line 156
            aload 21 /* xarBitcode */
            ifnonnull 32
        31: .line 157
            aconst_null
            areturn
        32: .line 159
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic top top top top top top top top top top top top top top top com.oracle.truffle.llvm.parser.macho.Xar org.graalvm.polyglot.io.ByteSequence
      StackMap stack:
            aload 0 /* this */
            aload 21 /* xarBitcode */
            aload 2 /* source */
            invokevirtual com.oracle.truffle.llvm.parser.binary.BinaryParser.parseBitcode:(Lorg/graalvm/polyglot/io/ByteSequence;Lcom/oracle/truffle/api/source/Source;)Lorg/graalvm/polyglot/io/ByteSequence;
            areturn
        end local 21 // org.graalvm.polyglot.io.ByteSequence xarBitcode
        end local 20 // com.oracle.truffle.llvm.parser.macho.Xar xarFile
        33: .line 161
      StackMap locals: com.oracle.truffle.llvm.parser.binary.BinaryParser org.graalvm.polyglot.io.ByteSequence com.oracle.truffle.api.source.Source com.oracle.truffle.llvm.parser.scanner.BitStream com.oracle.truffle.llvm.runtime.Magic
      StackMap stack:
            aconst_null
            areturn
        end local 4 // com.oracle.truffle.llvm.runtime.Magic magicWord
        end local 3 // com.oracle.truffle.llvm.parser.scanner.BitStream b
        end local 2 // com.oracle.truffle.api.source.Source source
        end local 1 // org.graalvm.polyglot.io.ByteSequence bytes
        end local 0 // com.oracle.truffle.llvm.parser.binary.BinaryParser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   34     0            this  Lcom/oracle/truffle/llvm/parser/binary/BinaryParser;
            0   34     1           bytes  Lorg/graalvm/polyglot/io/ByteSequence;
            0   34     2          source  Lcom/oracle/truffle/api/source/Source;
            1   34     3               b  Lcom/oracle/truffle/llvm/parser/scanner/BitStream;
            2   34     4       magicWord  Lcom/oracle/truffle/llvm/runtime/Magic;
            5    7     5          offset  J
            6    7     7            size  J
            8   19     9         elfFile  Lcom/oracle/truffle/llvm/parser/elf/ElfFile;
            9   19    10          llvmbc  Lcom/oracle/truffle/llvm/parser/elf/ElfSectionHeaderTable$Entry;
           12   19    11  dynamicSection  Lcom/oracle/truffle/llvm/parser/elf/ElfDynamicSection;
           14   16    12    elfLibraries  Ljava/util/List<Ljava/lang/String;>;
           17   19    12       elfOffset  J
           18   19    14         elfSize  J
           20   28    16       machOFile  Lcom/oracle/truffle/llvm/parser/macho/MachOFile;
           21   28    17          origin  Ljava/lang/String;
           22   28    18  machoLibraries  Ljava/util/List<Ljava/lang/String;>;
           25   28    19    machoBitcode  Lorg/graalvm/polyglot/io/ByteSequence;
           29   33    20         xarFile  Lcom/oracle/truffle/llvm/parser/macho/Xar;
           30   33    21      xarBitcode  Lorg/graalvm/polyglot/io/ByteSequence;
    MethodParameters:
        Name  Flags
      bytes   
      source  

  static int[] $SWITCH_TABLE$com$oracle$truffle$llvm$runtime$Magic();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 56
            getstatic com.oracle.truffle.llvm.parser.binary.BinaryParser.$SWITCH_TABLE$com$oracle$truffle$llvm$runtime$Magic:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.oracle.truffle.llvm.runtime.Magic.values:()[Lcom/oracle/truffle/llvm/runtime/Magic;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.BC_MAGIC_WORD:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.ELF_MAGIC_WORD:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.MH_CIGAM:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iconst_5
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.MH_CIGAM_64:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.MH_MAGIC:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iconst_4
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.MH_MAGIC_64:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.UNKNOWN:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            bipush 9
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.WRAPPER_MAGIC_WORD:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            iconst_2
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic com.oracle.truffle.llvm.runtime.Magic.XAR_MAGIC:Lcom/oracle/truffle/llvm/runtime/Magic;
            invokevirtual com.oracle.truffle.llvm.runtime.Magic.ordinal:()I
            bipush 8
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            dup
            putstatic com.oracle.truffle.llvm.parser.binary.BinaryParser.$SWITCH_TABLE$com$oracle$truffle$llvm$runtime$Magic:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
}
SourceFile: "BinaryParser.java"
InnerClasses:
  public final Entry = com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable$Entry of com.oracle.truffle.llvm.parser.elf.ElfSectionHeaderTable