abstract class org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp extends org.graalvm.compiler.lir.aarch64.AArch64BlockEndOp
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp
  super_class: org.graalvm.compiler.lir.aarch64.AArch64BlockEndOp
{
  protected final org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config;
    descriptor: Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final jdk.vm.ci.code.Register thread;
    descriptor: Ljdk/vm/ci/code/Register;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 54
            ldc Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(org.graalvm.compiler.lir.LIRInstructionClass<? extends org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp>, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstructionClass;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
        start local 1 // org.graalvm.compiler.lir.LIRInstructionClass c
        start local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
        start local 3 // jdk.vm.ci.code.Register thread
         0: .line 60
            aload 0 /* this */
            aload 1 /* c */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BlockEndOp.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
         1: .line 61
            aload 0 /* this */
            aload 2 /* config */
            putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
         2: .line 62
            aload 0 /* this */
            aload 3 /* thread */
            putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.thread:Ljdk/vm/ci/code/Register;
         3: .line 63
            return
        end local 3 // jdk.vm.ci.code.Register thread
        end local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
        end local 1 // org.graalvm.compiler.lir.LIRInstructionClass c
        end local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;
            0    4     1       c  Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;>;
            0    4     2  config  Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            0    4     3  thread  Ljdk/vm/ci/code/Register;
    Signature: (Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;>;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/code/Register;)V
    MethodParameters:
        Name  Flags
      c       
      config  
      thread  

  protected void <init>(org.graalvm.compiler.lir.LIRInstructionClass<? extends org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp>, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstructionClass;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
        start local 1 // org.graalvm.compiler.lir.LIRInstructionClass c
        start local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
         0: .line 66
            aload 0 /* this */
            aload 1 /* c */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BlockEndOp.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
         1: .line 67
            aload 0 /* this */
            aload 2 /* config */
            putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
         2: .line 68
            aload 0 /* this */
            aconst_null
            putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.thread:Ljdk/vm/ci/code/Register;
         3: .line 69
            return
        end local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
        end local 1 // org.graalvm.compiler.lir.LIRInstructionClass c
        end local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;
            0    4     1       c  Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;>;
            0    4     2  config  Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
    Signature: (Lorg/graalvm/compiler/lir/LIRInstructionClass<+Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;>;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
    MethodParameters:
        Name  Flags
      c       
      config  

  protected void leaveFrame(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=13, args_size=5
        start local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
        start local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 3 // boolean emitSafepoint
        start local 4 // boolean requiresReservedStackAccessCheck
         0: .line 72
            getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.$assertionsDisabled:Z
            ifne 1
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.frameContext:Lorg/graalvm/compiler/lir/asm/FrameContext;
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "We never elide frames in aarch64"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 73
      StackMap locals:
      StackMap stack:
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.frameContext:Lorg/graalvm/compiler/lir/asm/FrameContext;
            aload 1 /* crb */
            invokeinterface org.graalvm.compiler.lir.asm.FrameContext.leave:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;)V
         2: .line 74
            iload 4 /* requiresReservedStackAccessCheck */
            ifeq 35
         3: .line 75
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.foreignCalls:Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            checkcast org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider
            astore 5 /* foreignCalls */
        start local 5 // org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider foreignCalls
         4: .line 76
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 6 /* noReserved */
        start local 6 // org.graalvm.compiler.asm.Label noReserved
         5: .line 77
            aconst_null
            astore 7
            aconst_null
            astore 8
         6: aload 2 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 9 /* sc */
        start local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
         7: .line 78
            aload 9 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 10 /* scratch */
        start local 10 // jdk.vm.ci.code.Register scratch
         8: .line 79
            aload 2 /* masm */
            bipush 64
            aload 10 /* scratch */
            aload 2 /* masm */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.thread:Ljdk/vm/ci/code/Register;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.javaThreadReservedStackActivationOffset:I
            i2l
            bipush 8
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.makeAddress:(Ljdk/vm/ci/code/Register;JI)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         9: .line 80
            aload 2 /* masm */
            bipush 64
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            aload 10 /* scratch */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.subs:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 10 // jdk.vm.ci.code.Register scratch
        10: .line 81
            aload 9 /* sc */
            ifnull 16
            aload 9 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 16
      StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler int int org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider org.graalvm.compiler.asm.Label java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
      StackMap stack: java.lang.Throwable
        11: astore 7
            aload 9 /* sc */
            ifnull 12
            aload 9 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
      StackMap locals:
      StackMap stack:
        12: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 8
            aload 7
            ifnonnull 14
            aload 8
            astore 7
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 7
            aload 8
            if_acmpeq 15
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        15: aload 7
            athrow
        16: .line 82
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LO:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            aload 6 /* noReserved */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.branchConditionally:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        17: .line 83
            aload 5 /* foreignCalls */
            getstatic org.graalvm.compiler.hotspot.HotSpotHostBackend.ENABLE_STACK_RESERVED_ZONE:Lorg/graalvm/compiler/hotspot/meta/HotSpotForeignCallDescriptor;
            invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
            astore 7 /* enableStackReservedZone */
        start local 7 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage enableStackReservedZone
        18: .line 84
            aload 7 /* enableStackReservedZone */
            invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallLinkage.getOutgoingCallingConvention:()Ljdk/vm/ci/code/CallingConvention;
            astore 8 /* cc */
        start local 8 // jdk.vm.ci.code.CallingConvention cc
        19: .line 85
            getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.$assertionsDisabled:Z
            ifne 20
            aload 8 /* cc */
            invokevirtual jdk.vm.ci.code.CallingConvention.getArgumentCount:()I
            iconst_1
            if_icmpeq 20
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        20: .line 86
      StackMap locals: org.graalvm.compiler.core.common.spi.ForeignCallLinkage jdk.vm.ci.code.CallingConvention
      StackMap stack:
            aload 8 /* cc */
            iconst_0
            invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
            checkcast jdk.vm.ci.code.RegisterValue
            invokevirtual jdk.vm.ci.code.RegisterValue.getRegister:()Ljdk/vm/ci/code/Register;
            astore 9 /* arg0 */
        start local 9 // jdk.vm.ci.code.Register arg0
        21: .line 87
            aload 2 /* masm */
            bipush 64
            aload 9 /* arg0 */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.thread:Ljdk/vm/ci/code/Register;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        22: .line 88
            aconst_null
            astore 10
            aconst_null
            astore 11
        23: aload 2 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 12 /* sc */
        start local 12 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
        24: .line 89
            aload 2 /* masm */
            bipush 64
            getstatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotRegisterConfig.fp:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.lr:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            bipush -2
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Address.createPreIndexedImmediateAddress:(Ljdk/vm/ci/code/Register;I)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.stp:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        25: .line 90
            aload 1 /* crb */
            aload 2 /* masm */
            aload 7 /* enableStackReservedZone */
            aload 12 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            aconst_null
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Call.directCall:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/InvokeTarget;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/lir/LIRFrameState;)V
        26: .line 91
            aload 2 /* masm */
            bipush 64
            getstatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotRegisterConfig.fp:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.lr:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            iconst_2
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Address.createPostIndexedImmediateAddress:(Ljdk/vm/ci/code/Register;I)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldp:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        27: .line 92
            aload 12 /* sc */
            ifnull 33
            aload 12 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 33
      StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler int int org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider org.graalvm.compiler.asm.Label org.graalvm.compiler.core.common.spi.ForeignCallLinkage jdk.vm.ci.code.CallingConvention jdk.vm.ci.code.Register java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
      StackMap stack: java.lang.Throwable
        28: astore 10
            aload 12 /* sc */
            ifnull 29
            aload 12 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 12 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
      StackMap locals:
      StackMap stack:
        29: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 11
            aload 10
            ifnonnull 31
            aload 11
            astore 10
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 10
            aload 11
            if_acmpeq 32
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        32: aload 10
            athrow
        33: .line 93
      StackMap locals:
      StackMap stack:
            aload 1 /* crb */
            aload 2 /* masm */
            aload 5 /* foreignCalls */
            getstatic org.graalvm.compiler.hotspot.HotSpotHostBackend.THROW_DELAYED_STACKOVERFLOW_ERROR:Lorg/graalvm/compiler/hotspot/meta/HotSpotForeignCallDescriptor;
            invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Call.directJmp:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/InvokeTarget;)V
        34: .line 94
            aload 2 /* masm */
            aload 6 /* noReserved */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
        end local 9 // jdk.vm.ci.code.Register arg0
        end local 8 // jdk.vm.ci.code.CallingConvention cc
        end local 7 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage enableStackReservedZone
        end local 6 // org.graalvm.compiler.asm.Label noReserved
        end local 5 // org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProvider foreignCalls
        35: .line 96
      StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler int int
      StackMap stack:
            iload 3 /* emitSafepoint */
            ifeq 46
        36: .line 97
            aconst_null
            astore 5
            aconst_null
            astore 6
        37: aload 2 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 7 /* sc */
        start local 7 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
        38: .line 98
            aload 7 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 8 /* scratch */
        start local 8 // jdk.vm.ci.code.Register scratch
        39: .line 99
            aload 1 /* crb */
            aload 2 /* masm */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            iconst_1
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp.thread:Ljdk/vm/ci/code/Register;
            aload 8 /* scratch */
            aconst_null
            invokestatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotSafepointOp.emitCode:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;ZLjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/lir/LIRFrameState;)V
        end local 8 // jdk.vm.ci.code.Register scratch
        40: .line 100
            aload 7 /* sc */
            ifnull 46
            aload 7 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 46
      StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler int int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
      StackMap stack: java.lang.Throwable
        41: astore 5
            aload 7 /* sc */
            ifnull 42
            aload 7 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 7 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
      StackMap locals:
      StackMap stack:
        42: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        43: astore 6
            aload 5
            ifnonnull 44
            aload 6
            astore 5
            goto 45
      StackMap locals:
      StackMap stack:
        44: aload 5
            aload 6
            if_acmpeq 45
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        45: aload 5
            athrow
        46: .line 102
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean requiresReservedStackAccessCheck
        end local 3 // boolean emitSafepoint
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        end local 0 // org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotEpilogueOp this
      LocalVariableTable:
        Start  End  Slot                              Name  Signature
            0   47     0                              this  Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotEpilogueOp;
            0   47     1                               crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0   47     2                              masm  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
            0   47     3                     emitSafepoint  Z
            0   47     4  requiresReservedStackAccessCheck  Z
            4   35     5                      foreignCalls  Lorg/graalvm/compiler/hotspot/meta/HotSpotForeignCallsProvider;
            5   35     6                        noReserved  Lorg/graalvm/compiler/asm/Label;
            7   12     9                                sc  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            8   10    10                           scratch  Ljdk/vm/ci/code/Register;
           18   35     7           enableStackReservedZone  Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
           19   35     8                                cc  Ljdk/vm/ci/code/CallingConvention;
           21   35     9                              arg0  Ljdk/vm/ci/code/Register;
           24   29    12                                sc  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
           38   42     7                                sc  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
           39   40     8                           scratch  Ljdk/vm/ci/code/Register;
      Exception table:
        from    to  target  type
           7    10      11  any
           6    13      13  any
          24    27      28  any
          23    30      30  any
          38    40      41  any
          37    43      43  any
    MethodParameters:
                                  Name  Flags
      crb                               
      masm                              
      emitSafepoint                     
      requiresReservedStackAccessCheck  
}
SourceFile: "AArch64HotSpotEpilogueOp.java"
InnerClasses:
  public final ConditionFlag = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public ScratchRegister = org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister of org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler