public class org.graalvm.compiler.core.phases.MidTier extends org.graalvm.compiler.core.phases.BaseTier<org.graalvm.compiler.phases.tiers.MidTierContext>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.phases.MidTier
super_class: org.graalvm.compiler.core.phases.BaseTier
{
public void <init>(org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/options/OptionValues;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 // org.graalvm.compiler.core.phases.MidTier this
start local 1 // org.graalvm.compiler.options.OptionValues options
0: .line 63
aload 0 /* this */
invokespecial org.graalvm.compiler.core.phases.BaseTier.<init>:()V
1: .line 64
aload 0 /* this */
aload 1 /* options */
invokevirtual org.graalvm.compiler.core.phases.MidTier.createCanonicalizerPhase:(Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
astore 2 /* canonicalizer */
start local 2 // org.graalvm.compiler.phases.common.CanonicalizerPhase canonicalizer
2: .line 66
aload 0 /* this */
new org.graalvm.compiler.phases.common.LockEliminationPhase
dup
invokespecial org.graalvm.compiler.phases.common.LockEliminationPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
3: .line 68
getstatic org.graalvm.compiler.core.common.GraalOptions.OptFloatingReads:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 5
4: .line 69
aload 0 /* this */
new org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase
dup
aload 2 /* canonicalizer */
new org.graalvm.compiler.phases.common.FloatingReadPhase
dup
invokespecial org.graalvm.compiler.phases.common.FloatingReadPhase.<init>:()V
invokespecial org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/phases/BasePhase;)V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
5: .line 72
StackMap locals: org.graalvm.compiler.core.phases.MidTier org.graalvm.compiler.options.OptionValues org.graalvm.compiler.phases.common.CanonicalizerPhase
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.ConditionalElimination:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 7
6: .line 73
aload 0 /* this */
new org.graalvm.compiler.phases.common.IterativeConditionalEliminationPhase
dup
aload 2 /* canonicalizer */
iconst_1
invokespecial org.graalvm.compiler.phases.common.IterativeConditionalEliminationPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Z)V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
7: .line 76
StackMap locals:
StackMap stack:
aload 0 /* this */
new org.graalvm.compiler.loop.phases.LoopSafepointEliminationPhase
dup
invokespecial org.graalvm.compiler.loop.phases.LoopSafepointEliminationPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
8: .line 78
aload 0 /* this */
new org.graalvm.compiler.phases.common.GuardLoweringPhase
dup
invokespecial org.graalvm.compiler.phases.common.GuardLoweringPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
9: .line 80
getstatic org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations$Options.MitigateSpeculativeExecutionAttacks:Lorg/graalvm/compiler/options/EnumOptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.EnumOptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
getstatic org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations.GuardTargets:Lorg/graalvm/compiler/core/common/SpeculativeExecutionAttacksMitigations;
if_acmpeq 10
getstatic org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations$Options.MitigateSpeculativeExecutionAttacks:Lorg/graalvm/compiler/options/EnumOptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.EnumOptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
getstatic org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations.NonDeoptGuardTargets:Lorg/graalvm/compiler/core/common/SpeculativeExecutionAttacksMitigations;
if_acmpne 11
10: .line 81
StackMap locals:
StackMap stack:
aload 0 /* this */
new org.graalvm.compiler.phases.common.InsertGuardFencesPhase
dup
invokespecial org.graalvm.compiler.phases.common.InsertGuardFencesPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
11: .line 84
StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.VerifyHeapAtReturn:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 13
12: .line 85
aload 0 /* this */
new org.graalvm.compiler.phases.common.VerifyHeapAtReturnPhase
dup
invokespecial org.graalvm.compiler.phases.common.VerifyHeapAtReturnPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
13: .line 88
StackMap locals:
StackMap stack:
aload 0 /* this */
new org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase
dup
aload 2 /* canonicalizer */
new org.graalvm.compiler.phases.common.RemoveValueProxyPhase
dup
invokespecial org.graalvm.compiler.phases.common.RemoveValueProxyPhase.<init>:()V
invokespecial org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/phases/BasePhase;)V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
14: .line 90
aload 0 /* this */
new org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase
dup
invokespecial org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
15: .line 92
aload 0 /* this */
new org.graalvm.compiler.phases.common.LoweringPhase
dup
aload 2 /* canonicalizer */
getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.MID_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
invokespecial org.graalvm.compiler.phases.common.LoweringPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
16: .line 94
aload 0 /* this */
new org.graalvm.compiler.phases.common.OptimizeDivPhase
dup
invokespecial org.graalvm.compiler.phases.common.OptimizeDivPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
17: .line 96
aload 0 /* this */
new org.graalvm.compiler.phases.common.FrameStateAssignmentPhase
dup
invokespecial org.graalvm.compiler.phases.common.FrameStateAssignmentPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
18: .line 98
getstatic org.graalvm.compiler.core.common.GraalOptions.PartialUnroll:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 21
19: .line 99
aload 0 /* this */
invokevirtual org.graalvm.compiler.core.phases.MidTier.createLoopPolicies:()Lorg/graalvm/compiler/loop/LoopPolicies;
astore 3 /* loopPolicies */
start local 3 // org.graalvm.compiler.loop.LoopPolicies loopPolicies
20: .line 100
aload 0 /* this */
new org.graalvm.compiler.loop.phases.LoopPartialUnrollPhase
dup
aload 3 /* loopPolicies */
aload 2 /* canonicalizer */
invokespecial org.graalvm.compiler.loop.phases.LoopPartialUnrollPhase.<init>:(Lorg/graalvm/compiler/loop/LoopPolicies;Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;)V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
end local 3 // org.graalvm.compiler.loop.LoopPolicies loopPolicies
21: .line 103
StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.ReassociateInvariants:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 23
22: .line 104
aload 0 /* this */
new org.graalvm.compiler.loop.phases.ReassociateInvariantPhase
dup
invokespecial org.graalvm.compiler.loop.phases.ReassociateInvariantPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
23: .line 107
StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.OptDeoptimizationGrouping:Lorg/graalvm/compiler/options/OptionKey;
aload 1 /* options */
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 25
24: .line 108
aload 0 /* this */
new org.graalvm.compiler.phases.common.DeoptimizationGroupingPhase
dup
invokespecial org.graalvm.compiler.phases.common.DeoptimizationGroupingPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
25: .line 111
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 2 /* canonicalizer */
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
26: .line 113
aload 0 /* this */
new org.graalvm.compiler.phases.common.WriteBarrierAdditionPhase
dup
invokespecial org.graalvm.compiler.phases.common.WriteBarrierAdditionPhase.<init>:()V
invokevirtual org.graalvm.compiler.core.phases.MidTier.appendPhase:(Lorg/graalvm/compiler/phases/BasePhase;)V
27: .line 114
return
end local 2 // org.graalvm.compiler.phases.common.CanonicalizerPhase canonicalizer
end local 1 // org.graalvm.compiler.options.OptionValues options
end local 0 // org.graalvm.compiler.core.phases.MidTier this
LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/graalvm/compiler/core/phases/MidTier;
0 28 1 options Lorg/graalvm/compiler/options/OptionValues;
2 28 2 canonicalizer Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
20 21 3 loopPolicies Lorg/graalvm/compiler/loop/LoopPolicies;
MethodParameters:
Name Flags
options
public org.graalvm.compiler.loop.LoopPolicies createLoopPolicies();
descriptor: ()Lorg/graalvm/compiler/loop/LoopPolicies;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 // org.graalvm.compiler.core.phases.MidTier this
0: .line 118
new org.graalvm.compiler.loop.DefaultLoopPolicies
dup
invokespecial org.graalvm.compiler.loop.DefaultLoopPolicies.<init>:()V
areturn
end local 0 // org.graalvm.compiler.core.phases.MidTier this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/phases/MidTier;
}
Signature: Lorg/graalvm/compiler/core/phases/BaseTier<Lorg/graalvm/compiler/phases/tiers/MidTierContext;>;
SourceFile: "MidTier.java"
InnerClasses:
public Options = org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations$Options of org.graalvm.compiler.core.common.SpeculativeExecutionAttacksMitigations
public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public final StandardLoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool