public class org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates extends org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates
  super_class: org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates
{
  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo instanceofWithProfile;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo instanceofExact;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo instanceofPrimary;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo instanceofSecondary;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo instanceofDynamic;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo isAssignableFrom;
    descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Counters counters;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Counters;
    flags: (0x0012) ACC_PRIVATE, 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 251
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            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.replacements.InstanceOfSnippets$Templates.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.options.OptionValues, java.lang.Iterable<org.graalvm.compiler.debug.DebugHandlersFactory>, org.graalvm.compiler.replacements.SnippetCounter$Group$Factory, org.graalvm.compiler.hotspot.meta.HotSpotProviders, jdk.vm.ci.code.TargetDescription);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/replacements/SnippetCounter$Group$Factory;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates this
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // java.lang.Iterable factories
        start local 3 // org.graalvm.compiler.replacements.SnippetCounter$Group$Factory factory
        start local 4 // org.graalvm.compiler.hotspot.meta.HotSpotProviders providers
        start local 5 // jdk.vm.ci.code.TargetDescription target
         0: .line 263
            aload 0 /* this */
            aload 1 /* options */
            aload 2 /* factories */
            aload 4 /* providers */
            aload 4 /* providers */
            invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            aload 5 /* target */
            invokespecial org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates.<init>:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
         1: .line 253
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "instanceofWithProfile"
            iconst_0
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofWithProfile:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         2: .line 254
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "instanceofExact"
            iconst_0
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofExact:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         3: .line 255
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "instanceofPrimary"
            iconst_0
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofPrimary:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         4: .line 256
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "instanceofSecondary"
            iconst_1
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            dup
            iconst_0
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.SECONDARY_SUPER_CACHE_LOCATION:Ljdk/internal/vm/compiler/word/LocationIdentity;
            aastore
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofSecondary:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         5: .line 257
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "instanceofDynamic"
            iconst_1
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            dup
            iconst_0
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.SECONDARY_SUPER_CACHE_LOCATION:Ljdk/internal/vm/compiler/word/LocationIdentity;
            aastore
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofDynamic:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         6: .line 258
            aload 0 /* this */
            aload 0 /* this */
            ldc Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets;
            ldc "isAssignableFrom"
            iconst_1
            anewarray jdk.internal.vm.compiler.word.LocationIdentity
            dup
            iconst_0
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.SECONDARY_SUPER_CACHE_LOCATION:Ljdk/internal/vm/compiler/word/LocationIdentity;
            aastore
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.isAssignableFrom:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
         7: .line 264
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Counters
            dup
            aload 3 /* factory */
            invokespecial org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Counters.<init>:(Lorg/graalvm/compiler/replacements/SnippetCounter$Group$Factory;)V
            putfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.counters:Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Counters;
         8: .line 265
            return
        end local 5 // jdk.vm.ci.code.TargetDescription target
        end local 4 // org.graalvm.compiler.hotspot.meta.HotSpotProviders providers
        end local 3 // org.graalvm.compiler.replacements.SnippetCounter$Group$Factory factory
        end local 2 // java.lang.Iterable factories
        end local 1 // org.graalvm.compiler.options.OptionValues options
        end local 0 // org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
            0    9     1    options  Lorg/graalvm/compiler/options/OptionValues;
            0    9     2  factories  Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;
            0    9     3    factory  Lorg/graalvm/compiler/replacements/SnippetCounter$Group$Factory;
            0    9     4  providers  Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
            0    9     5     target  Ljdk/vm/ci/code/TargetDescription;
    Signature: (Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;Lorg/graalvm/compiler/replacements/SnippetCounter$Group$Factory;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
    MethodParameters:
           Name  Flags
      options    
      factories  
      factory    
      providers  
      target     

  protected org.graalvm.compiler.replacements.SnippetTemplate$Arguments makeArguments(org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/replacements/InstanceOfSnippetsTemplates$InstanceOfUsageReplacer;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=14, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates this
        start local 1 // org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer replacer
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 269
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            instanceof org.graalvm.compiler.nodes.java.InstanceOfNode
            ifeq 46
         1: .line 270
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            checkcast org.graalvm.compiler.nodes.java.InstanceOfNode
            astore 3 /* instanceOf */
        start local 3 // org.graalvm.compiler.nodes.java.InstanceOfNode instanceOf
         2: .line 271
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* object */
        start local 4 // org.graalvm.compiler.nodes.ValueNode object
         3: .line 272
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
            astore 5 /* assumptions */
        start local 5 // jdk.vm.ci.meta.Assumptions assumptions
         4: .line 274
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            astore 6 /* localOptions */
        start local 6 // org.graalvm.compiler.options.OptionValues localOptions
         5: .line 275
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.profile:()Ljdk/vm/ci/meta/JavaTypeProfile;
            astore 7 /* profile */
        start local 7 // jdk.vm.ci.meta.JavaTypeProfile profile
         6: .line 276
            getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
            aload 6 /* localOptions */
            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 8
         7: .line 279
            aconst_null
            astore 7 /* profile */
         8: .line 281
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.options.OptionValues jdk.vm.ci.meta.JavaTypeProfile
      StackMap stack:
            new org.graalvm.compiler.nodes.TypeCheckHints
            dup
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.type:()Lorg/graalvm/compiler/core/common/type/TypeReference;
            aload 7 /* profile */
            aload 5 /* assumptions */
            getstatic org.graalvm.compiler.hotspot.replacements.HotspotSnippetsOptions.TypeCheckMinProfileHitProbability:Lorg/graalvm/compiler/options/OptionKey;
            aload 6 /* localOptions */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
         9: .line 282
            getstatic org.graalvm.compiler.hotspot.replacements.HotspotSnippetsOptions.TypeCheckMaxHints:Lorg/graalvm/compiler/options/OptionKey;
            aload 6 /* localOptions */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
        10: .line 281
            invokespecial org.graalvm.compiler.nodes.TypeCheckHints.<init>:(Lorg/graalvm/compiler/core/common/type/TypeReference;Ljdk/vm/ci/meta/JavaTypeProfile;Ljdk/vm/ci/meta/Assumptions;DI)V
            astore 8 /* hintInfo */
        start local 8 // org.graalvm.compiler.nodes.TypeCheckHints hintInfo
        11: .line 283
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.type:()Lorg/graalvm/compiler/core/common/type/TypeReference;
            invokevirtual org.graalvm.compiler.core.common.type.TypeReference.getType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedObjectType
            astore 9 /* type */
        start local 9 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
        12: .line 284
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            aload 9 /* type */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedObjectType.klass:()Ljdk/vm/ci/meta/Constant;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            astore 10 /* hub */
        start local 10 // org.graalvm.compiler.nodes.ConstantNode hub
        13: .line 288
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 12 /* graph */
        start local 12 // org.graalvm.compiler.nodes.StructuredGraph graph
        14: .line 289
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.hintHitProbability:D
            dconst_1
            dcmpl
            iflt 21
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.exact:Ljdk/vm/ci/meta/ResolvedJavaType;
            ifnonnull 21
        15: .line 290
            aload 8 /* hintInfo */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            iconst_0
            aload 12 /* graph */
            invokestatic org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils.createHints:(Lorg/graalvm/compiler/nodes/TypeCheckHints;Ljdk/vm/ci/meta/MetaAccessProvider;ZLorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Hints;
            astore 13 /* hints */
        start local 13 // org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints hints
        16: .line 291
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofWithProfile:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 12 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 11 /* args */
        start local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        17: .line 292
            aload 11 /* args */
            ldc "object"
            aload 4 /* object */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        18: .line 293
            aload 11 /* args */
            ldc "hints"
            ldc Lorg/graalvm/compiler/hotspot/word/KlassPointer;
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            aload 13 /* hints */
            getfield org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints.hubs:[Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addVarargs:(Ljava/lang/String;Ljava/lang/Class;Lorg/graalvm/compiler/core/common/type/Stamp;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        19: .line 294
            aload 11 /* args */
            ldc "hintIsPositive"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 13 /* hints */
            getfield org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints.isPositive:[Z
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addVarargs:(Ljava/lang/String;Ljava/lang/Class;Lorg/graalvm/compiler/core/common/type/Stamp;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        end local 13 // org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints hints
        20: .line 295
            goto 38
        end local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.options.OptionValues jdk.vm.ci.meta.JavaTypeProfile org.graalvm.compiler.nodes.TypeCheckHints jdk.vm.ci.hotspot.HotSpotResolvedObjectType org.graalvm.compiler.nodes.ConstantNode top org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
        21: aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.exact:Ljdk/vm/ci/meta/ResolvedJavaType;
            ifnull 26
        22: .line 296
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofExact:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 12 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 11 /* args */
        start local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        23: .line 297
            aload 11 /* args */
            ldc "object"
            aload 4 /* object */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        24: .line 298
            aload 11 /* args */
            ldc "exactHub"
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.exact:Ljdk/vm/ci/meta/ResolvedJavaType;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedObjectType
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedObjectType.klass:()Ljdk/vm/ci/meta/Constant;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 12 /* graph */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        25: .line 299
            goto 38
        end local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
      StackMap locals:
      StackMap stack:
        26: aload 9 /* type */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedObjectType.isPrimaryType:()Z
            ifeq 32
        27: .line 300
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofPrimary:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 12 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 11 /* args */
        start local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        28: .line 301
            aload 11 /* args */
            ldc "hub"
            aload 10 /* hub */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        29: .line 302
            aload 11 /* args */
            ldc "object"
            aload 4 /* object */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        30: .line 303
            aload 11 /* args */
            ldc "superCheckOffset"
            aload 9 /* type */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedObjectType.superCheckOffset:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        31: .line 304
            goto 38
        end local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        32: .line 305
      StackMap locals:
      StackMap stack:
            aload 8 /* hintInfo */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            iconst_0
            aload 12 /* graph */
            invokestatic org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils.createHints:(Lorg/graalvm/compiler/nodes/TypeCheckHints;Ljdk/vm/ci/meta/MetaAccessProvider;ZLorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Hints;
            astore 13 /* hints */
        start local 13 // org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints hints
        33: .line 306
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofSecondary:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 12 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 11 /* args */
        start local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        34: .line 307
            aload 11 /* args */
            ldc "hub"
            aload 10 /* hub */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        35: .line 308
            aload 11 /* args */
            ldc "object"
            aload 4 /* object */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        36: .line 309
            aload 11 /* args */
            ldc "hints"
            ldc Lorg/graalvm/compiler/hotspot/word/KlassPointer;
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            aload 13 /* hints */
            getfield org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints.hubs:[Lorg/graalvm/compiler/nodes/ConstantNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addVarargs:(Ljava/lang/String;Ljava/lang/Class;Lorg/graalvm/compiler/core/common/type/Stamp;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        37: .line 310
            aload 11 /* args */
            ldc "hintIsPositive"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 13 /* hints */
            getfield org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints.isPositive:[Z
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addVarargs:(Ljava/lang/String;Ljava/lang/Class;Lorg/graalvm/compiler/core/common/type/Stamp;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        end local 13 // org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints hints
        38: .line 312
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.options.OptionValues jdk.vm.ci.meta.JavaTypeProfile org.graalvm.compiler.nodes.TypeCheckHints jdk.vm.ci.hotspot.HotSpotResolvedObjectType org.graalvm.compiler.nodes.ConstantNode org.graalvm.compiler.replacements.SnippetTemplate$Arguments org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            aload 11 /* args */
            ldc "trueValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.trueValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        39: .line 313
            aload 11 /* args */
            ldc "falseValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.falseValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        40: .line 314
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.hintHitProbability:D
            dconst_1
            dcmpl
            iflt 44
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.exact:Ljdk/vm/ci/meta/ResolvedJavaType;
            ifnonnull 44
        41: .line 315
            aload 11 /* args */
            ldc "nullSeen"
            aload 8 /* hintInfo */
            getfield org.graalvm.compiler.nodes.TypeCheckHints.profile:Ljdk/vm/ci/meta/JavaTypeProfile;
            invokevirtual jdk.vm.ci.meta.JavaTypeProfile.getNullSeen:()Ljdk/vm/ci/meta/TriState;
            getstatic jdk.vm.ci.meta.TriState.FALSE:Ljdk/vm/ci/meta/TriState;
            if_acmpeq 42
            iconst_1
            goto 43
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.options.OptionValues jdk.vm.ci.meta.JavaTypeProfile org.graalvm.compiler.nodes.TypeCheckHints jdk.vm.ci.hotspot.HotSpotResolvedObjectType org.graalvm.compiler.nodes.ConstantNode org.graalvm.compiler.replacements.SnippetTemplate$Arguments org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack: org.graalvm.compiler.replacements.SnippetTemplate$Arguments java.lang.String
        42: iconst_0
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.java.InstanceOfNode org.graalvm.compiler.nodes.ValueNode jdk.vm.ci.meta.Assumptions org.graalvm.compiler.options.OptionValues jdk.vm.ci.meta.JavaTypeProfile org.graalvm.compiler.nodes.TypeCheckHints jdk.vm.ci.hotspot.HotSpotResolvedObjectType org.graalvm.compiler.nodes.ConstantNode org.graalvm.compiler.replacements.SnippetTemplate$Arguments org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack: org.graalvm.compiler.replacements.SnippetTemplate$Arguments java.lang.String int
        43: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        44: .line 317
      StackMap locals:
      StackMap stack:
            aload 11 /* args */
            ldc "counters"
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.counters:Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Counters;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        45: .line 318
            aload 11 /* args */
            areturn
        end local 12 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 11 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        end local 10 // org.graalvm.compiler.nodes.ConstantNode hub
        end local 9 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
        end local 8 // org.graalvm.compiler.nodes.TypeCheckHints hintInfo
        end local 7 // jdk.vm.ci.meta.JavaTypeProfile profile
        end local 6 // org.graalvm.compiler.options.OptionValues localOptions
        end local 5 // jdk.vm.ci.meta.Assumptions assumptions
        end local 4 // org.graalvm.compiler.nodes.ValueNode object
        end local 3 // org.graalvm.compiler.nodes.java.InstanceOfNode instanceOf
        46: .line 319
      StackMap locals: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer org.graalvm.compiler.nodes.spi.LoweringTool
      StackMap stack:
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            instanceof org.graalvm.compiler.nodes.java.InstanceOfDynamicNode
            ifeq 57
        47: .line 320
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            checkcast org.graalvm.compiler.nodes.java.InstanceOfDynamicNode
            astore 3 /* instanceOf */
        start local 3 // org.graalvm.compiler.nodes.java.InstanceOfDynamicNode instanceOf
        48: .line 321
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* object */
        start local 4 // org.graalvm.compiler.nodes.ValueNode object
        49: .line 323
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.instanceofDynamic:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 5 /* args */
        start local 5 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        50: .line 324
            aload 5 /* args */
            ldc "hub"
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.getMirrorOrHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        51: .line 325
            aload 5 /* args */
            ldc "object"
            aload 4 /* object */
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        52: .line 326
            aload 5 /* args */
            ldc "trueValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.trueValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        53: .line 327
            aload 5 /* args */
            ldc "falseValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.falseValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        54: .line 328
            aload 5 /* args */
            ldc "allowNull"
            aload 3 /* instanceOf */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.allowsNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        55: .line 329
            aload 5 /* args */
            ldc "counters"
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.counters:Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Counters;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        56: .line 330
            aload 5 /* args */
            areturn
        end local 5 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        end local 4 // org.graalvm.compiler.nodes.ValueNode object
        end local 3 // org.graalvm.compiler.nodes.java.InstanceOfDynamicNode instanceOf
        57: .line 331
      StackMap locals:
      StackMap stack:
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            instanceof org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode
            ifeq 67
        58: .line 332
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.instanceOf:Lorg/graalvm/compiler/nodes/calc/FloatingNode;
            checkcast org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode
            astore 3 /* isAssignable */
        start local 3 // org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode isAssignable
        59: .line 333
            new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.isAssignableFrom:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
            aload 3 /* isAssignable */
            invokevirtual org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
            astore 4 /* args */
        start local 4 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        60: .line 334
            getstatic org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.$assertionsDisabled:Z
            ifne 61
            aload 3 /* isAssignable */
            invokevirtual org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode.getThisClass:()Lorg/graalvm/compiler/nodes/ValueNode;
            getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
            checkcast org.graalvm.compiler.core.common.type.ObjectStamp
            invokevirtual org.graalvm.compiler.core.common.type.ObjectStamp.nonNull:()Z
            ifne 61
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        61: .line 335
      StackMap locals: org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode org.graalvm.compiler.replacements.SnippetTemplate$Arguments
      StackMap stack:
            aload 4 /* args */
            ldc "thisClassNonNull"
            aload 3 /* isAssignable */
            invokevirtual org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode.getThisClass:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        62: .line 336
            aload 4 /* args */
            ldc "otherClass"
            aload 3 /* isAssignable */
            invokevirtual org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode.getOtherClass:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        63: .line 337
            aload 4 /* args */
            ldc "trueValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.trueValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        64: .line 338
            aload 4 /* args */
            ldc "falseValue"
            aload 1 /* replacer */
            getfield org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer.falseValue:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        65: .line 339
            aload 4 /* args */
            ldc "counters"
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.counters:Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Counters;
            invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
            pop
        66: .line 340
            aload 4 /* args */
            areturn
        end local 4 // org.graalvm.compiler.replacements.SnippetTemplate$Arguments args
        end local 3 // org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode isAssignable
        67: .line 342
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer replacer
        end local 0 // org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   68     0          this  Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
            0   68     1      replacer  Lorg/graalvm/compiler/replacements/InstanceOfSnippetsTemplates$InstanceOfUsageReplacer;
            0   68     2          tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            2   46     3    instanceOf  Lorg/graalvm/compiler/nodes/java/InstanceOfNode;
            3   46     4        object  Lorg/graalvm/compiler/nodes/ValueNode;
            4   46     5   assumptions  Ljdk/vm/ci/meta/Assumptions;
            5   46     6  localOptions  Lorg/graalvm/compiler/options/OptionValues;
            6   46     7       profile  Ljdk/vm/ci/meta/JavaTypeProfile;
           11   46     8      hintInfo  Lorg/graalvm/compiler/nodes/TypeCheckHints;
           12   46     9          type  Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
           13   46    10           hub  Lorg/graalvm/compiler/nodes/ConstantNode;
           17   21    11          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
           23   26    11          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
           28   32    11          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
           34   46    11          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
           14   46    12         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           16   20    13         hints  Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Hints;
           33   38    13         hints  Lorg/graalvm/compiler/hotspot/replacements/TypeCheckSnippetUtils$Hints;
           48   57     3    instanceOf  Lorg/graalvm/compiler/nodes/java/InstanceOfDynamicNode;
           49   57     4        object  Lorg/graalvm/compiler/nodes/ValueNode;
           50   57     5          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
           59   67     3  isAssignable  Lorg/graalvm/compiler/nodes/java/ClassIsAssignableFromNode;
           60   67     4          args  Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
    MethodParameters:
          Name  Flags
      replacer  
      tool      
}
SourceFile: "InstanceOfSnippets.java"
NestHost: org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets
InnerClasses:
  public Templates = org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates of org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets
  Counters = org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Counters of org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils
  public Hints = org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils$Hints of org.graalvm.compiler.hotspot.replacements.TypeCheckSnippetUtils
  public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
  public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
  public abstract InstanceOfUsageReplacer = org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates$InstanceOfUsageReplacer of org.graalvm.compiler.replacements.InstanceOfSnippetsTemplates
  public Group = org.graalvm.compiler.replacements.SnippetCounter$Group of org.graalvm.compiler.replacements.SnippetCounter
  public abstract Factory = org.graalvm.compiler.replacements.SnippetCounter$Group$Factory of org.graalvm.compiler.replacements.SnippetCounter$Group
  public Arguments = org.graalvm.compiler.replacements.SnippetTemplate$Arguments of org.graalvm.compiler.replacements.SnippetTemplate
  public abstract SnippetInfo = org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo of org.graalvm.compiler.replacements.SnippetTemplate