public final class com.oracle.truffle.llvm.parser.model.enums.Linkage extends java.lang.Enum<com.oracle.truffle.llvm.parser.model.enums.Linkage>
  minor version: 0
  major version: 59
  flags: flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: com.oracle.truffle.llvm.parser.model.enums.Linkage
  super_class: java.lang.Enum
{
  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage EXTERNAL;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage WEAK;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage APPENDING;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage INTERNAL;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage LINKONCE;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage DLL_IMPORT;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage DLL_EXPORT;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage EXTERN_WEAK;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage COMMON;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage PRIVATE;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage WEAK_ODR;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage LINK_ONCE_ODR;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage AVAILABLE_EXTERNALLY;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage LINKER_PRIVATE;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage LINKER_PRIVATE_WEAK;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final com.oracle.truffle.llvm.parser.model.enums.Linkage LINK_ONCE_ODR_AUTO_HIDE;
    descriptor: Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  private static final com.oracle.truffle.llvm.parser.model.enums.Linkage[] VALUES;
    descriptor: [Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private final long[] encodedValue;
    descriptor: [J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private static final com.oracle.truffle.llvm.parser.model.enums.Linkage[] ENUM$VALUES;
    descriptor: [Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=10, locals=0, args_size=0
         0: .line 34
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "EXTERNAL"
            iconst_0
            ldc "external"
            iconst_1
            newarray 11
            dup
            iconst_0
            lconst_0
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.EXTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         1: .line 35
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "WEAK"
            iconst_1
            ldc "weak"
            iconst_2
            newarray 11
            dup
            iconst_0
            lconst_1
            lastore
            dup
            iconst_1
            ldc 16
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         2: .line 36
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "APPENDING"
            iconst_2
            ldc "appending"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 2
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.APPENDING:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         3: .line 37
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "INTERNAL"
            iconst_3
            ldc "internal"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 3
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.INTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         4: .line 38
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "LINKONCE"
            iconst_4
            ldc "linkonce"
            iconst_2
            newarray 11
            dup
            iconst_0
            ldc 4
            lastore
            dup
            iconst_1
            ldc 18
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKONCE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         5: .line 39
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "DLL_IMPORT"
            iconst_5
            ldc "dllimport"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 5
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.DLL_IMPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         6: .line 40
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "DLL_EXPORT"
            bipush 6
            ldc "dllexport"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 6
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.DLL_EXPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         7: .line 41
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "EXTERN_WEAK"
            bipush 7
            ldc "extern_weak"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 7
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.EXTERN_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         8: .line 42
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "COMMON"
            bipush 8
            ldc "common"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 8
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.COMMON:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
         9: .line 43
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "PRIVATE"
            bipush 9
            ldc "private"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 9
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        10: .line 44
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "WEAK_ODR"
            bipush 10
            ldc "weak_odr"
            iconst_2
            newarray 11
            dup
            iconst_0
            ldc 10
            lastore
            dup
            iconst_1
            ldc 17
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        11: .line 45
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "LINK_ONCE_ODR"
            bipush 11
            ldc "linkonce_odr"
            iconst_2
            newarray 11
            dup
            iconst_0
            ldc 11
            lastore
            dup
            iconst_1
            ldc 19
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        12: .line 46
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "AVAILABLE_EXTERNALLY"
            bipush 12
            ldc "available_externally"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 12
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.AVAILABLE_EXTERNALLY:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        13: .line 47
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "LINKER_PRIVATE"
            bipush 13
            ldc "linker_private"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 13
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKER_PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        14: .line 48
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "LINKER_PRIVATE_WEAK"
            bipush 14
            ldc "linker_private_weak"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 14
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKER_PRIVATE_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        15: .line 49
            new com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            ldc "LINK_ONCE_ODR_AUTO_HIDE"
            bipush 15
            ldc "linkonce_odr_auto_hide"
            iconst_1
            newarray 11
            dup
            iconst_0
            ldc 15
            lastore
            invokespecial com.oracle.truffle.llvm.parser.model.enums.Linkage.<init>:(Ljava/lang/String;ILjava/lang/String;[J)V
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR_AUTO_HIDE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            bipush 16
            anewarray com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            iconst_0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.EXTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            iconst_1
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            iconst_2
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.APPENDING:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            iconst_3
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.INTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            iconst_4
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKONCE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            iconst_5
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.DLL_IMPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 6
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.DLL_EXPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 7
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.EXTERN_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 8
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.COMMON:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 9
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 10
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 11
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 12
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.AVAILABLE_EXTERNALLY:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 13
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKER_PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 14
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKER_PRIVATE_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            dup
            bipush 15
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR_AUTO_HIDE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aastore
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.ENUM$VALUES:[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
        16: .line 51
            invokestatic com.oracle.truffle.llvm.parser.model.enums.Linkage.values:()[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.VALUES:[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int, java.lang.String, long[]);
    descriptor: (Ljava/lang/String;ILjava/lang/String;[J)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
        start local 3 // java.lang.String irString
        start local 4 // long[] encodedValue
         0: .line 57
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 58
            aload 0 /* this */
            aload 3 /* irString */
            putfield com.oracle.truffle.llvm.parser.model.enums.Linkage.irString:Ljava/lang/String;
         2: .line 59
            aload 0 /* this */
            aload 4 /* encodedValue */
            putfield com.oracle.truffle.llvm.parser.model.enums.Linkage.encodedValue:[J
         3: .line 60
            return
        end local 4 // long[] encodedValue
        end local 3 // java.lang.String irString
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            0    4     3      irString  Ljava/lang/String;
            0    4     4  encodedValue  [J
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      irString       
      encodedValue   

  private long[] getEncodedValue();
    descriptor: ()[J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
         0: .line 63
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.model.enums.Linkage.encodedValue:[J
            areturn
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;

  public static com.oracle.truffle.llvm.parser.model.enums.Linkage decode(long);
    descriptor: (J)Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=1
        start local 0 // long value
         0: .line 67
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.VALUES:[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 9
      StackMap locals: long top int int com.oracle.truffle.llvm.parser.model.enums.Linkage[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* linkage */
        start local 2 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
         2: .line 68
            aload 2 /* linkage */
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.getEncodedValue:()[J
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 7
      StackMap locals: long com.oracle.truffle.llvm.parser.model.enums.Linkage int int com.oracle.truffle.llvm.parser.model.enums.Linkage[] top top int int long[]
      StackMap stack:
         3: aload 10
            iload 8
            laload
            lstore 6 /* l */
        start local 6 // long l
         4: .line 69
            lload 6 /* l */
            lload 0 /* value */
            lcmp
            ifne 6
         5: .line 70
            aload 2 /* linkage */
            areturn
        end local 6 // long l
         6: .line 68
      StackMap locals:
      StackMap stack:
            iinc 8 1
      StackMap locals:
      StackMap stack:
         7: iload 8
            iload 9
            if_icmplt 3
        end local 2 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
         8: .line 67
            iinc 3 1
      StackMap locals: long top int int com.oracle.truffle.llvm.parser.model.enums.Linkage[]
      StackMap stack:
         9: iload 3
            iload 4
            if_icmplt 1
        10: .line 74
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.EXTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            areturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0    value  J
            2    8     2  linkage  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            4    6     6        l  J
    MethodParameters:
       Name  Flags
      value  

  public java.lang.String getIrString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
         0: .line 78
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.model.enums.Linkage.irString:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;

  public static boolean isExported(com.oracle.truffle.llvm.parser.model.enums.Linkage, com.oracle.truffle.llvm.parser.model.enums.Visibility);
    descriptor: (Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
        start local 1 // com.oracle.truffle.llvm.parser.model.enums.Visibility visibility
         0: .line 82
            invokestatic com.oracle.truffle.llvm.parser.model.enums.Linkage.$SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage:()[I
            aload 0 /* linkage */
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iaload
            tableswitch { // 1 - 16
                    1: 2
                    2: 2
                    3: 2
                    4: 4
                    5: 2
                    6: 1
                    7: 2
                    8: 2
                    9: 2
                   10: 4
                   11: 2
                   12: 2
                   13: 1
                   14: 4
                   15: 4
                   16: 4
              default: 5
          }
         1: .line 85
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 95
      StackMap locals:
      StackMap stack:
            aload 1 /* visibility */
            getstatic com.oracle.truffle.llvm.parser.model.enums.Visibility.DEFAULT:Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;
            if_acmpeq 3
            aload 1 /* visibility */
            getstatic com.oracle.truffle.llvm.parser.model.enums.Visibility.PROTECTED:Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;
            if_acmpeq 3
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
         4: .line 101
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         5: .line 103
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown linkage: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* linkage */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // com.oracle.truffle.llvm.parser.model.enums.Visibility visibility
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0     linkage  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            0    6     1  visibility  Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;
    MethodParameters:
            Name  Flags
      linkage     
      visibility  

  public static boolean isOverridable(com.oracle.truffle.llvm.parser.model.enums.Linkage, com.oracle.truffle.llvm.parser.model.enums.Visibility);
    descriptor: (Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
        start local 1 // com.oracle.truffle.llvm.parser.model.enums.Visibility visibility
         0: .line 108
            invokestatic com.oracle.truffle.llvm.parser.model.enums.Linkage.$SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage:()[I
            aload 0 /* linkage */
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iaload
            tableswitch { // 1 - 16
                    1: 2
                    2: 2
                    3: 2
                    4: 4
                    5: 2
                    6: 1
                    7: 2
                    8: 2
                    9: 2
                   10: 4
                   11: 2
                   12: 2
                   13: 1
                   14: 4
                   15: 4
                   16: 4
              default: 5
          }
         1: .line 111
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 121
      StackMap locals:
      StackMap stack:
            aload 1 /* visibility */
            getstatic com.oracle.truffle.llvm.parser.model.enums.Visibility.DEFAULT:Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;
            if_acmpne 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
         4: .line 127
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         5: .line 129
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown linkage: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* linkage */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // com.oracle.truffle.llvm.parser.model.enums.Visibility visibility
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0     linkage  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            0    6     1  visibility  Lcom/oracle/truffle/llvm/parser/model/enums/Visibility;
    MethodParameters:
            Name  Flags
      linkage     
      visibility  

  public static boolean isExternal(com.oracle.truffle.llvm.parser.model.enums.Linkage);
    descriptor: (Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
         0: .line 134
            invokestatic com.oracle.truffle.llvm.parser.model.enums.Linkage.$SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage:()[I
            aload 0 /* linkage */
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iaload
            tableswitch { // 1 - 16
                    1: 2
                    2: 2
                    3: 2
                    4: 2
                    5: 2
                    6: 1
                    7: 2
                    8: 2
                    9: 2
                   10: 2
                   11: 2
                   12: 2
                   13: 1
                   14: 2
                   15: 2
                   16: 2
              default: 3
          }
         1: .line 137
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 152
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         3: .line 154
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown linkage: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* linkage */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.oracle.truffle.llvm.parser.model.enums.Linkage linkage
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  linkage  Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    MethodParameters:
         Name  Flags
      linkage  

  public static com.oracle.truffle.llvm.parser.model.enums.Linkage[] values();
    descriptor: ()[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.ENUM$VALUES:[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray com.oracle.truffle.llvm.parser.model.enums.Linkage
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static com.oracle.truffle.llvm.parser.model.enums.Linkage valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast com.oracle.truffle.llvm.parser.model.enums.Linkage
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  

  static int[] $SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 32
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.$SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.oracle.truffle.llvm.parser.model.enums.Linkage.values:()[Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.APPENDING:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iconst_3
            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.parser.model.enums.Linkage.AVAILABLE_EXTERNALLY:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 13
            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.parser.model.enums.Linkage.COMMON:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 9
            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.parser.model.enums.Linkage.DLL_EXPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.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.parser.model.enums.Linkage.DLL_IMPORT:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 6
            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.parser.model.enums.Linkage.EXTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iconst_1
            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.parser.model.enums.Linkage.EXTERN_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 8
            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.parser.model.enums.Linkage.INTERNAL:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iconst_4
            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.parser.model.enums.Linkage.LINKER_PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 14
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKER_PRIVATE_WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 15
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINKONCE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iconst_5
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 12
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.LINK_ONCE_ODR_AUTO_HIDE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 16
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.PRIVATE:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 10
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            iconst_2
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.WEAK_ODR:Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;
            invokevirtual com.oracle.truffle.llvm.parser.model.enums.Linkage.ordinal:()I
            bipush 11
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            dup
            putstatic com.oracle.truffle.llvm.parser.model.enums.Linkage.$SWITCH_TABLE$com$oracle$truffle$llvm$parser$model$enums$Linkage:[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
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
}
Signature: Ljava/lang/Enum<Lcom/oracle/truffle/llvm/parser/model/enums/Linkage;>;
SourceFile: "Linkage.java"