class org.openjdk.jmh.generators.core.StateObjectHandler extends java.lang.Object
{
private final org.openjdk.jmh.generators.core.CompilerControlPlugin compileControl;
private final org.openjdk.jmh.generators.core.Identifiers identifiers;
private final org.openjdk.jmh.util.Multimap roots;
private final org.openjdk.jmh.util.Multimap specials;
private final java.util.Set stateObjects;
private final java.util.Map implicits;
private final org.openjdk.jmh.util.Multimap benchmarkArgs;
private final org.openjdk.jmh.util.Multimap auxNames;
private final java.util.Map auxType;
private final java.util.Map auxAccessors;
private final java.util.Map auxResettable;
public void <init>(org.openjdk.jmh.generators.core.CompilerControlPlugin)
{
org.openjdk.jmh.util.HashMultimap v, v, v, v;
org.openjdk.jmh.generators.core.Identifiers v;
java.util.HashMap v, v, v, v;
java.util.HashSet v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.CompilerControlPlugin v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.CompilerControlPlugin;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new org.openjdk.jmh.util.HashMultimap;
specialinvoke v.<org.openjdk.jmh.util.HashMultimap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap auxNames> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxType> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxResettable> = v;
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.CompilerControlPlugin compileControl> = v;
v = new org.openjdk.jmh.util.HashMultimap;
specialinvoke v.<org.openjdk.jmh.util.HashMultimap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap roots> = v;
v = new org.openjdk.jmh.util.HashMultimap;
specialinvoke v.<org.openjdk.jmh.util.HashMultimap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap benchmarkArgs> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map implicits> = v;
v = new org.openjdk.jmh.util.HashMultimap;
specialinvoke v.<org.openjdk.jmh.util.HashMultimap: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap specials> = v;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects> = v;
v = new org.openjdk.jmh.generators.core.Identifiers;
specialinvoke v.<org.openjdk.jmh.generators.core.Identifiers: void <init>()>();
v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.Identifiers identifiers> = v;
return;
}
public static void validateState(org.openjdk.jmh.generators.core.ClassInfo)
{
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.ClassInfo v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Collection v, v, v, v, v;
java.lang.'annotation'.Annotation v, v, v;
java.lang.'annotation'.IncompleteAnnotationException v;
java.util.Iterator v, v, v, v;
org.openjdk.jmh.generators.core.GenerationException v, v, v, v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
label:
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSuper(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v == null goto label;
interfaceinvoke v.<org.openjdk.jmh.annotations.State: org.openjdk.jmh.annotations.Scope value()>();
label:
goto label;
label:
v := @caughtexception;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/Scope;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The @\u annotation should have the explicit \u argument");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isPublic()>();
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The instantiated @\u annotation only supports public classes.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isFinal()>();
if v == 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The instantiated @\u annotation does not support final classes.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isInner()>();
if v == 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The instantiated @\u annotation does not support inner classes, make sure your class is static.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isAbstract()>();
if v == 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The instantiated @\u class cannot be abstract.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = 0;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.util.Collection getConstructors()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.util.Collection getParameters()>();
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: boolean isPublic()>();
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = class "Lorg/openjdk/jmh/infra/BenchmarkParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
v = v | v;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = class "Lorg/openjdk/jmh/infra/IterationParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
v = v | v;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = class "Lorg/openjdk/jmh/infra/ThreadParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
v = v | v;
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The @\u annotation can only be applied to the classes having the default public constructor.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: void checkAnnotations(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getAllFields(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: void checkAnnotations(org.openjdk.jmh.generators.core.FieldInfo)>(v);
goto label;
label:
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getMethods(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: void checkAnnotations(org.openjdk.jmh.generators.core.MethodInfo)>(v);
goto label;
label:
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getAllMethods(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Setup;");
if v != null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/TearDown;");
if v == null goto label;
label:
staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: void validateStateArgs(org.openjdk.jmh.generators.core.MethodInfo)>(v);
goto label;
label:
return;
catch java.lang.'annotation'.IncompleteAnnotationException from label to label with label;
}
public static void validateStateArgs(org.openjdk.jmh.generators.core.MethodInfo)
{
java.util.Iterator v;
java.util.Collection v;
org.openjdk.jmh.generators.core.GenerationException v;
org.openjdk.jmh.generators.core.MethodInfo v;
org.openjdk.jmh.generators.core.ClassInfo v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v;
boolean v, v;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.util.Collection getParameters()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ParameterInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSuper(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v != null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ParameterInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: boolean isSpecialClass(org.openjdk.jmh.generators.core.ClassInfo)>(v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Method parameters should be either @\u classes or one of special JMH classes (*Params, Blackhole, Control)");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
return;
}
private static boolean isSpecialClass(org.openjdk.jmh.generators.core.ClassInfo)
{
java.lang.String v, v, v, v, v, v;
boolean v, v, v, v, v, v;
org.openjdk.jmh.generators.core.ClassInfo v;
java.lang.Class v, v, v, v, v;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = class "Lorg/openjdk/jmh/infra/BenchmarkParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = class "Lorg/openjdk/jmh/infra/IterationParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = class "Lorg/openjdk/jmh/infra/ThreadParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = class "Lorg/openjdk/jmh/infra/Blackhole;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = class "Lorg/openjdk/jmh/infra/Control;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private java.lang.String getSpecialClassAccessor(org.openjdk.jmh.generators.core.ClassInfo)
{
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v, v;
org.openjdk.jmh.generators.core.GenerationException v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v;
java.lang.Class v, v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = class "Lorg/openjdk/jmh/infra/BenchmarkParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return "benchmarkParams";
label:
v = class "Lorg/openjdk/jmh/infra/IterationParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return "iterationParams";
label:
v = class "Lorg/openjdk/jmh/infra/ThreadParams;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return "threadParams";
label:
v = class "Lorg/openjdk/jmh/infra/Blackhole;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return "blackhole";
label:
v = class "Lorg/openjdk/jmh/infra/Control;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return "notifyControl";
label:
v = new org.openjdk.jmh.generators.core.GenerationException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.generators.core.ClassInfo)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Internal error, unhandled special class: \u0001");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
}
public org.openjdk.jmh.annotations.State getState(org.openjdk.jmh.generators.core.ClassInfo, org.openjdk.jmh.generators.core.ParameterInfo)
{
org.openjdk.jmh.generators.core.ParameterInfo v;
org.openjdk.jmh.generators.core.GenerationException v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.String v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v := @parameter: org.openjdk.jmh.generators.core.ParameterInfo;
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSuper(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v != null goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The method parameter is not a @\u0001: ");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
return v;
}
public void bindMethods(org.openjdk.jmh.generators.core.ClassInfo, org.openjdk.jmh.generators.core.MethodGroup)
{
java.util.Map v;
boolean v, v, v;
org.openjdk.jmh.generators.core.MethodGroup v;
java.util.Collection v, v;
java.util.Set v, v;
org.openjdk.jmh.util.Multimap v, v, v, v;
java.lang.'annotation'.Annotation v;
org.openjdk.jmh.generators.core.Identifiers v, v;
org.openjdk.jmh.annotations.Scope v, v;
java.lang.String v, v, v, v, v, v;
java.util.Iterator v, v;
org.openjdk.jmh.annotations.State v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v, v;
java.lang.Object v, v;
org.openjdk.jmh.generators.core.StateObject v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v := @parameter: org.openjdk.jmh.generators.core.MethodGroup;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.MethodGroup: java.util.Collection methods()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSuper(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v == null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.annotations.State: org.openjdk.jmh.annotations.Scope value()>();
goto label;
label:
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
label:
v = new org.openjdk.jmh.generators.core.StateObject;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.Identifiers identifiers>;
specialinvoke v.<org.openjdk.jmh.generators.core.StateObject: void <init>(org.openjdk.jmh.generators.core.Identifiers,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.annotations.Scope)>(v, v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map implicits>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("bench", v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void bindState(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.StateObject,org.openjdk.jmh.generators.core.ClassInfo)>(v, v, v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void resolveDependencies(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.generators.core.StateObject)>(v, v, v);
staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: void validateStateArgs(org.openjdk.jmh.generators.core.MethodInfo)>(v);
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.util.Collection getParameters()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ParameterInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: boolean isSpecialClass(org.openjdk.jmh.generators.core.ClassInfo)>(v);
if v == 0 goto label;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap benchmarkArgs>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getSpecialClassAccessor(org.openjdk.jmh.generators.core.ClassInfo)>(v);
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap specials>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = new org.openjdk.jmh.generators.core.StateObject;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.Identifiers identifiers>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.annotations.State getState(org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.generators.core.ParameterInfo)>(v, v);
v = interfaceinvoke v.<org.openjdk.jmh.annotations.State: org.openjdk.jmh.annotations.Scope value()>();
specialinvoke v.<org.openjdk.jmh.generators.core.StateObject: void <init>(org.openjdk.jmh.generators.core.Identifiers,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.annotations.Scope)>(v, v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap roots>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap benchmarkArgs>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String toLocal()>();
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void bindState(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.StateObject,org.openjdk.jmh.generators.core.ClassInfo)>(v, v, v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void resolveDependencies(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.generators.core.StateObject)>(v, v, v);
goto label;
label:
return;
}
public static void validateNoCycles(org.openjdk.jmh.generators.core.MethodInfo)
{
java.util.Set v;
org.openjdk.jmh.generators.core.MethodInfo v;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: void validateNoCyclesStep(java.util.Set,org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, v, 1);
return;
}
private static void validateNoCyclesStep(java.util.Set, org.openjdk.jmh.generators.core.MethodInfo, boolean)
{
org.openjdk.jmh.generators.core.MethodInfo v;
boolean v, v, v, v, v, v;
java.util.Collection v, v;
java.util.Set v;
java.lang.'annotation'.Annotation v, v;
java.util.HashSet v, v, v;
java.lang.String v, v, v;
java.util.Iterator v, v, v;
org.openjdk.jmh.generators.core.GenerationException v;
org.openjdk.jmh.generators.core.ClassInfo v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName v, v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @parameter: java.util.Set;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: boolean;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
if v == 0 goto label;
v = new org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName: void <init>(org.openjdk.jmh.generators.core.ClassInfo)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.util.Collection getParameters()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = new org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ParameterInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName: void <init>(org.openjdk.jmh.generators.core.ClassInfo)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v == 0 goto label;
return;
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
interfaceinvoke v.<java.util.Set: boolean addAll(java.util.Collection)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName: org.openjdk.jmh.generators.core.ClassInfo ci>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.util.HashSet)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u dependency cycle is detected: \u \u0001");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
interfaceinvoke v.<java.util.Set: boolean addAll(java.util.Collection)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler$ClassQName: org.openjdk.jmh.generators.core.ClassInfo ci>;
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getMethods(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Setup;");
if v != null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/TearDown;");
if v == null goto label;
label:
staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: void validateNoCyclesStep(java.util.Set,org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, v, 0);
goto label;
label:
return;
}
private void resolveDependencies(org.openjdk.jmh.generators.core.MethodInfo, org.openjdk.jmh.generators.core.ClassInfo, org.openjdk.jmh.generators.core.StateObject)
{
org.openjdk.jmh.generators.core.MethodInfo v;
boolean v, v, v, v;
java.util.Collection v, v;
java.util.Set v;
org.openjdk.jmh.util.Multimap v, v, v;
java.util.List v, v;
java.lang.'annotation'.Annotation v, v;
org.openjdk.jmh.generators.core.Identifiers v;
org.openjdk.jmh.annotations.Scope v;
java.lang.String v, v, v, v, v;
java.util.Iterator v, v;
org.openjdk.jmh.annotations.State v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v, v;
java.lang.Object v, v;
org.openjdk.jmh.generators.core.StateObject v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v := @parameter: org.openjdk.jmh.generators.core.StateObject;
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getMethods(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Setup;");
if v != null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/TearDown;");
if v == null goto label;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.util.Collection getParameters()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ParameterInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: boolean isSpecialClass(org.openjdk.jmh.generators.core.ClassInfo)>(v);
if v == 0 goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getSpecialClassAccessor(org.openjdk.jmh.generators.core.ClassInfo)>(v);
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap specials>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = new org.openjdk.jmh.generators.core.StateObject;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.Identifiers identifiers>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.annotations.State getState(org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.generators.core.ParameterInfo)>(v, v);
v = interfaceinvoke v.<org.openjdk.jmh.annotations.State: org.openjdk.jmh.annotations.Scope value()>();
specialinvoke v.<org.openjdk.jmh.generators.core.StateObject: void <init>(org.openjdk.jmh.generators.core.Identifiers,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.annotations.Scope)>(v, v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String toLocal()>();
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
v = interfaceinvoke v.<java.util.List: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void bindState(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.StateObject,org.openjdk.jmh.generators.core.ClassInfo)>(v, v, v);
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void resolveDependencies(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.ClassInfo,org.openjdk.jmh.generators.core.StateObject)>(v, v, v);
goto label;
label:
return;
}
private void bindState(org.openjdk.jmh.generators.core.MethodInfo, org.openjdk.jmh.generators.core.StateObject, org.openjdk.jmh.generators.core.ClassInfo)
{
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Map v, v, v, v, v, v;
org.openjdk.jmh.util.Multimap v, v;
org.openjdk.jmh.annotations.AuxCounters$Type v, v;
org.openjdk.jmh.annotations.Scope v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.ClassInfo v, v;
org.openjdk.jmh.annotations.Level v, v;
org.openjdk.jmh.generators.core.CompilerControlPlugin v, v;
boolean v, v, v, v, v, v, v, v, v;
java.util.Collection v, v, v, v;
java.lang.'annotation'.Annotation v, v, v, v;
org.openjdk.jmh.generators.core.HelperMethodInvocation v, v;
java.lang.Boolean v, v;
java.util.Iterator v, v, v, v;
org.openjdk.jmh.generators.core.HelperType v, v;
org.openjdk.jmh.generators.core.GenerationException v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Class v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObject v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: org.openjdk.jmh.generators.core.StateObject;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: void validateState(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/AuxCounters;");
if v == null goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
if v == v goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/AuxCounters;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/Scope;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,org.openjdk.jmh.annotations.Scope)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u can only be used with \u.\u states.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.util.Collection getFields()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: boolean isPublic()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: boolean isAuxCompatible(java.lang.String)>(v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/AuxCounters;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Illegal type for the public field in @\u.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap auxNames>;
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxType>;
v = interfaceinvoke v.<org.openjdk.jmh.annotations.AuxCounters: org.openjdk.jmh.annotations.AuxCounters$Type value()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxResettable>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001");
v = interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
if v == null goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/AuxCounters;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Conflicting @\u counters. Make sure there are no @\u0001-s with the same counter  injected into this method.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.util.Collection getMethods()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: boolean isPublic()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getReturnType()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("void");
if v != 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getReturnType()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: boolean isAuxCompatible(java.lang.String)>(v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/AuxCounters;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Illegal type for the return type of public method in @\u.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap auxNames>;
interfaceinvoke v.<org.openjdk.jmh.util.Multimap: void put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxType>;
v = interfaceinvoke v.<org.openjdk.jmh.annotations.AuxCounters: org.openjdk.jmh.annotations.AuxCounters$Type value()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxResettable>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001()");
v = interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
if v == null goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/AuxCounters;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Conflicting @\u counters. Make sure there are no @\u0001-s with the same counter  injected into this method.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getAllFields(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Param;");
if v == null goto label;
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void checkParam(org.openjdk.jmh.generators.core.FieldInfo)>(v);
virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: void addParam(org.openjdk.jmh.generators.core.FieldInfo)>(v);
goto label;
label:
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.util.Collection getMethods(org.openjdk.jmh.generators.core.ClassInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Setup;");
if v == null goto label;
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void checkHelpers(org.openjdk.jmh.generators.core.MethodInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/Setup;");
v = new org.openjdk.jmh.generators.core.HelperMethodInvocation;
v = interfaceinvoke v.<org.openjdk.jmh.annotations.Setup: org.openjdk.jmh.annotations.Level value()>();
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
specialinvoke v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: void <init>(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.StateObject,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v, v);
virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: void addHelper(org.openjdk.jmh.generators.core.HelperMethodInvocation)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.CompilerControlPlugin compileControl>;
virtualinvoke v.<org.openjdk.jmh.generators.core.CompilerControlPlugin: void defaultForceInline(org.openjdk.jmh.generators.core.MethodInfo)>(v);
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/TearDown;");
if v == null goto label;
specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: void checkHelpers(org.openjdk.jmh.generators.core.MethodInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/TearDown;");
v = new org.openjdk.jmh.generators.core.HelperMethodInvocation;
v = interfaceinvoke v.<org.openjdk.jmh.annotations.TearDown: org.openjdk.jmh.annotations.Level value()>();
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
specialinvoke v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: void <init>(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.generators.core.StateObject,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v, v);
virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: void addHelper(org.openjdk.jmh.generators.core.HelperMethodInvocation)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.generators.core.CompilerControlPlugin compileControl>;
virtualinvoke v.<org.openjdk.jmh.generators.core.CompilerControlPlugin: void defaultForceInline(org.openjdk.jmh.generators.core.MethodInfo)>(v);
goto label;
label:
return;
}
private boolean isAuxCompatible(java.lang.String)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.String v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("byte");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Byte");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("short");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Short");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("int");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Integer");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("float");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Float");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("long");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Long");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("double");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Double");
if v == 0 goto label;
label:
return 1;
label:
return 0;
}
private void checkParam(org.openjdk.jmh.generators.core.FieldInfo)
{
boolean v, v, v, v, v;
java.lang.'annotation'.Annotation v, v;
java.lang.String[] v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.GenerationException v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v, v, v;
org.openjdk.jmh.generators.core.FieldInfo v;
java.lang.Class v, v, v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.FieldInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: boolean isFinal()>();
if v == 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/Param;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u annotation is not acceptable on final fields.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSyntax(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v != null goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/Param;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u annotation should be placed in @\u0001-annotated class.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: boolean isParamTypeAcceptable(org.openjdk.jmh.generators.core.ClassInfo)>(v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/Param;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u can only be placed over the annotation-compatible types: primitives, primitive wrappers, Strings, or enums.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/openjdk/jmh/annotations/Param;");
v = interfaceinvoke v.<org.openjdk.jmh.annotations.Param: java.lang.String[] value()>();
v = lengthof v;
if v != 1 goto label;
v = v[0];
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("blank_blank_blank_2014");
if v == 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getType()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isEnum()>();
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/Param;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u should provide the default parameters.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: boolean isParamValueConforming(org.openjdk.jmh.generators.core.FieldInfo,java.lang.String,org.openjdk.jmh.generators.core.ClassInfo)>(v, v, v);
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = class "Lorg/openjdk/jmh/annotations/Param;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,org.openjdk.jmh.generators.core.ClassInfo)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Some @\u values can not be converted to target type: \"\u0001\" can not be converted to \u0001");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = v + 1;
goto label;
label:
return;
}
private boolean isParamTypeAcceptable(org.openjdk.jmh.generators.core.ClassInfo)
{
java.lang.String v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isEnum()>();
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.String");
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("boolean");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Boolean");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("byte");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Byte");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("char");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Character");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("short");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Short");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("int");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Integer");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("float");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Float");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("long");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Long");
if v == 0 goto label;
label:
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("double");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Double");
if v == 0 goto label;
label:
return 1;
label:
return 0;
}
private boolean isParamValueConforming(org.openjdk.jmh.generators.core.FieldInfo, java.lang.String, org.openjdk.jmh.generators.core.ClassInfo)
{
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Collection v;
int v;
java.lang.String v, v;
java.lang.NumberFormatException v, v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v;
org.openjdk.jmh.generators.core.FieldInfo v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.FieldInfo;
v := @parameter: java.lang.String;
v := @parameter: org.openjdk.jmh.generators.core.ClassInfo;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isEnum()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.util.Collection getEnumConstants()>();
v = interfaceinvoke v.<java.util.Collection: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.String");
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("boolean");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Boolean");
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("true");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("false");
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("byte");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Byte");
if v == 0 goto label;
label:
staticinvoke <java.lang.Byte: byte parseByte(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("char");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Character");
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v != 1 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("short");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Short");
if v == 0 goto label;
label:
staticinvoke <java.lang.Short: short parseShort(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("int");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Integer");
if v == 0 goto label;
label:
staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("float");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Float");
if v == 0 goto label;
label:
staticinvoke <java.lang.Float: float parseFloat(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("long");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Long");
if v == 0 goto label;
label:
staticinvoke <java.lang.Long: long parseLong(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("double");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("java.lang.Double");
if v == 0 goto label;
label:
staticinvoke <java.lang.Double: double parseDouble(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
return 0;
label:
return 0;
catch java.lang.NumberFormatException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
}
private void checkHelpers(org.openjdk.jmh.generators.core.MethodInfo, java.lang.Class)
{
org.openjdk.jmh.generators.core.MethodInfo v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v, v, v;
org.openjdk.jmh.generators.core.GenerationException v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.ClassInfo v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: java.lang.Class;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = staticinvoke <org.openjdk.jmh.generators.core.BenchmarkGeneratorUtils: java.lang.'annotation'.Annotation getAnnSuper(org.openjdk.jmh.generators.core.ClassInfo,java.lang.Class)>(v, class "Lorg/openjdk/jmh/annotations/State;");
if v != null goto label;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: boolean isAbstract()>();
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = class "Lorg/openjdk/jmh/annotations/State;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u annotation is placed within a class not having @\u annotation. This is prohibited because it would have no effect.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: boolean isPublic()>();
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u method should be public.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getReturnType()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("void");
if v != 0 goto label;
v = new org.openjdk.jmh.generators.core.GenerationException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("@\u method should not return anything.");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
return;
}
public java.lang.String getBenchmarkArgList(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
java.lang.String v, v;
org.openjdk.jmh.util.Multimap v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap benchmarkArgs>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ", ");
return v;
}
public java.lang.String getArgList(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.lang.String v;
java.util.LinkedHashSet v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 0);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getArgList(java.util.Collection)>(v);
return v;
}
public java.lang.String getArgList(java.util.Collection)
{
java.util.Iterator v;
java.util.Collection v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
int v;
java.lang.Object v;
java.lang.StringBuilder v;
java.lang.String v, v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: java.util.Collection;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v == 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String toLocal()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public java.lang.String getTypeArgList(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.lang.String v;
java.util.LinkedHashSet v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 0);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getTypeArgList(java.util.Collection)>(v);
return v;
}
public java.lang.String getTypeArgList(java.util.Collection)
{
java.util.Iterator v;
java.util.Collection v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
int v;
java.lang.Object v;
java.lang.StringBuilder v;
java.lang.String v, v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: java.util.Collection;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v == 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String toTypeDef()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public static transient java.util.Collection cons(java.util.Collection[])
{
java.util.Collection v;
int v, v;
java.util.Collection[] v;
java.util.Comparator v;
java.util.TreeSet v;
v := @parameter: java.util.Collection[];
v = new java.util.TreeSet;
v = <org.openjdk.jmh.generators.core.StateObject: java.util.Comparator ID_COMPARATOR>;
specialinvoke v.<java.util.TreeSet: void <init>(java.util.Comparator)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
interfaceinvoke v.<java.util.SortedSet: boolean addAll(java.util.Collection)>(v);
v = v + 1;
goto label;
label:
return v;
}
public java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo, org.openjdk.jmh.annotations.Level, org.openjdk.jmh.generators.core.HelperType)
{
java.util.Collection v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.HelperType v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.MethodInfo v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.util.Multimap v, v, v, v;
org.openjdk.jmh.annotations.Scope v, v, v, v, v, v, v, v, v, v, v, v;
java.util.ArrayList v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.LinkedHashSet v, v;
org.openjdk.jmh.annotations.Level v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v, v, v, v, v, v, v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: org.openjdk.jmh.annotations.Level;
v := @parameter: org.openjdk.jmh.generators.core.HelperType;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 1);
v = virtualinvoke v.<java.util.LinkedHashSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 0);
v = virtualinvoke v.<java.util.LinkedHashSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
if v != v goto label;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Benchmark>;
if v == v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Group>;
if v != v goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("if (\u.setup\u0001MutexUpdater.compareAndSet(\u, 0, 1)) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    try {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        if (!\u.ready\u) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            \u.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            \u.ready\u = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    } catch (Throwable t) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        control.isFailing = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        throw t;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    } finally {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u.setup\u0001MutexUpdater.set(\u, 0);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("} else {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    while (\u.setup\u0001MutexUpdater.get(\u) == 1) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (Thread.interrupted()) throw new InterruptedException();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
if v != v goto label;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Benchmark>;
if v == v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Group>;
if v != v goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("if (\u.tear\u0001MutexUpdater.compareAndSet(\u, 0, 1)) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    try {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        if (\u.ready\u) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            \u.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            \u.ready\u = false;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    } catch (Throwable t) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        control.isFailing = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        throw t;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    } finally {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u.tear\u0001MutexUpdater.set(\u, 0);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("} else {");
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    long \u0001_backoff = 1;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    while (\u.tear\u0001MutexUpdater.get(\u) == 1) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        TimeUnit.MILLISECONDS.sleep(\u0001_backoff);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u0001_backoff = Math.max(1024, \u0001_backoff * 2);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (Thread.interrupted()) throw new InterruptedException();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
return v;
}
public boolean hasInvocationStubs(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v, v;
boolean v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getInvocationSetups(org.openjdk.jmh.generators.core.MethodInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getInvocationTearDowns(org.openjdk.jmh.generators.core.MethodInfo)>(v);
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.util.Collection getInvocationSetups(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Invocation>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.Collection getInvocationTearDowns(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Invocation>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.Collection getIterationSetups(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Iteration>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.Collection getIterationTearDowns(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Iteration>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.Collection getRunSetups(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.Collection getRunTearDowns(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Collection v;
org.openjdk.jmh.annotations.Level v;
org.openjdk.jmh.generators.core.HelperType v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType TEARDOWN>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection getHelperBlock(org.openjdk.jmh.generators.core.MethodInfo,org.openjdk.jmh.annotations.Level,org.openjdk.jmh.generators.core.HelperType)>(v, v, v);
return v;
}
public java.util.List getStateInitializers()
{
org.openjdk.jmh.generators.core.ClassInfo v, v, v;
java.util.Collection v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.HelperType v, v, v, v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.generators.core.MethodInfo v, v, v, v, v, v;
java.util.Set v;
org.openjdk.jmh.util.Multimap v, v, v;
org.openjdk.jmh.annotations.Scope v, v, v, v, v, v;
java.util.ArrayList v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.annotations.Level v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Collection[] v;
java.util.Iterator v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v = newarray (java.util.Collection)[1];
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
v[0] = v;
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection cons(java.util.Collection[])>(v);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Benchmark>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("static volatile \u \u;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String soDependency_TypeArgs(org.openjdk.jmh.generators.core.StateObject)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u _jmh_tryInit_\u0001(InfraControl control\u) throws Throwable {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    \u val = \u;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    if (val != null) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    synchronized(this.getClass()) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        try {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val = \u;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (val != null) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val = new \u0001();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        Field f;");
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParam(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        f = \u.class.getDeclaredField(\"\u0001\");");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        f.setAccessible(true);");
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String getParamAccessor(org.openjdk.jmh.generators.core.FieldInfo)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        f.set(val, \u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Level)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val.ready\u = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u = val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        } catch (Throwable t) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            control.isFailing = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            throw t;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u \u;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String soDependency_TypeArgs(org.openjdk.jmh.generators.core.StateObject)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u _jmh_tryInit_\u0001(InfraControl control\u) throws Throwable {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    if (control.isFailing) throw new FailureAssistException();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    \u val = \u;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    if (val == null) {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val = new \u0001();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            Field f;");
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParam(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            f = \u.class.getDeclaredField(\"\u0001\");");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            f.setAccessible(true);");
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String getParamAccessor(org.openjdk.jmh.generators.core.FieldInfo)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("            f.set(val, \u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u = val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Group>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("static java.util.Map<Integer, \u0001> \u0001_map = java.util.Collections.synchronizedMap(new java.util.HashMap<Integer, \u0001>());");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String soDependency_TypeArgs(org.openjdk.jmh.generators.core.StateObject)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u _jmh_tryInit_\u0001(InfraControl control\u) throws Throwable {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    int groupIdx = threadParams.getGroupIndex();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    \u val = \u0001_map.get(groupIdx);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    if (val != null) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    synchronized(this.getClass()) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        try {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (control.isFailing) throw new FailureAssistException();");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val = \u0001_map.get(groupIdx);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        if (val != null) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val = new \u0001();");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        Field f;");
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParamsLabels()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getParam(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.FieldInfo: org.openjdk.jmh.generators.core.ClassInfo getDeclaringClass()>();
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.ClassInfo: java.lang.String getQualifiedName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        f = \u.class.getDeclaredField(\"\u0001\");");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        f.setAccessible(true);");
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String getParamAccessor(org.openjdk.jmh.generators.core.FieldInfo)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        f.set(val, \u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObject: java.util.Collection getHelpers()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.annotations.Level helperLevel>;
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.HelperType type>;
v = <org.openjdk.jmh.generators.core.HelperType: org.openjdk.jmh.generators.core.HelperType SETUP>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.util.Multimap helperArgs>;
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getQualifiedName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.HelperMethodInvocation: org.openjdk.jmh.generators.core.MethodInfo method>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = staticinvoke <org.openjdk.jmh.util.Utils: java.lang.String join(java.util.Collection,java.lang.String)>(v, ",");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val.\u0001(\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level Trial>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Level)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        val.ready\u = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("        \u0001_map.put(groupIdx, val);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        } catch (Throwable t) {");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            control.isFailing = true;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("            throw t;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("        }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    }");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("    return val;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
return v;
}
private java.lang.String soDependency_TypeArgs(org.openjdk.jmh.generators.core.StateObject)
{
java.util.List v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.StateObject v;
java.lang.String v, v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.StateObject;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
v = "";
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getTypeArgList(java.util.Collection)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>(", \u0001");
label:
return v;
}
private java.lang.String soDependency_Args(org.openjdk.jmh.generators.core.StateObject)
{
java.util.List v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.StateObject v;
java.lang.String v, v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.StateObject;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
v = "";
goto label;
label:
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
v = virtualinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String getArgList(java.util.Collection)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>(", \u0001");
label:
return v;
}
public java.util.Collection getStateDestructors(org.openjdk.jmh.generators.core.MethodInfo)
{
org.openjdk.jmh.annotations.Scope v, v, v, v, v, v;
java.util.ArrayList v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.lang.String v, v, v, v, v, v;
java.util.LinkedHashSet v;
boolean v, v, v;
java.util.Iterator v, v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 0);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Benchmark>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("synchronized(this.getClass()) {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    \u = null;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Thread>;
if v != v goto label;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u = null;");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = <org.openjdk.jmh.annotations.Scope: org.openjdk.jmh.annotations.Scope Group>;
if v != v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("synchronized(this.getClass()) {");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    \u0001_map.remove(threadParams.getGroupIndex());");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("}");
goto label;
label:
return v;
}
public java.util.List getStateGetters(org.openjdk.jmh.generators.core.MethodInfo)
{
java.util.Iterator v;
java.util.ArrayList v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.lang.Object v;
java.lang.String v, v, v, v, v;
java.util.LinkedHashSet v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo,boolean)>(v, 1);
v = virtualinvoke v.<java.util.LinkedHashSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String localIdentifier>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String fieldIdentifier>;
v = specialinvoke v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.lang.String soDependency_Args(org.openjdk.jmh.generators.core.StateObject)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u \u = _jmh_tryInit_\u0001(control\u);");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
private java.util.LinkedHashSet stateOrder(org.openjdk.jmh.generators.core.MethodInfo, boolean)
{
java.util.ArrayList v, v, v, v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Map v;
java.lang.String v;
java.util.LinkedHashSet v;
boolean v, v, v;
java.util.Iterator v;
java.util.Collection v, v;
org.openjdk.jmh.util.Multimap v;
java.util.List v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: boolean;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap roots>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map implicits>;
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
label:
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: java.util.List depends>;
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
goto label;
label:
v = v;
goto label;
label:
if v == 0 goto label;
staticinvoke <java.util.Collections: void reverse(java.util.List)>(v);
label:
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>(java.util.Collection)>(v);
return v;
}
public void writeStateOverrides(org.openjdk.jmh.generators.core.BenchmarkGeneratorSession, org.openjdk.jmh.generators.core.GeneratorDestination) throws java.io.IOException
{
java.io.PrintWriter v, v, v, v;
java.util.Set v, v;
org.openjdk.jmh.annotations.Scope v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.openjdk.jmh.annotations.Level v, v;
java.lang.IllegalStateException v;
int[] v;
boolean v, v;
java.util.Collection v;
java.io.Writer v, v, v, v;
java.util.Collection[] v;
org.openjdk.jmh.generators.core.BenchmarkGeneratorSession v;
int v, v, v, v, v, v;
java.util.Iterator v;
org.openjdk.jmh.annotations.Level[] v, v;
org.openjdk.jmh.generators.core.GeneratorDestination v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Class v;
java.lang.Object v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.BenchmarkGeneratorSession;
v := @parameter: org.openjdk.jmh.generators.core.GeneratorDestination;
v = newarray (java.util.Collection)[1];
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
v[0] = v;
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection cons(java.util.Collection[])>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.BenchmarkGeneratorSession: java.util.Set generatedStateOverrides>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.io.PrintWriter;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001_B1");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.GeneratorDestination: java.io.Writer newClass(java.lang.String,java.lang.String)>(v, v);
specialinvoke v.<java.io.PrintWriter: void <init>(java.io.Writer)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("package \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("import \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("public class \u0001_B1 extends \u {");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
staticinvoke <org.openjdk.jmh.generators.core.Paddings: void padding(java.io.PrintWriter)>(v);
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("}");
virtualinvoke v.<java.io.PrintWriter: void close()>();
v = new java.io.PrintWriter;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001_B2");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.GeneratorDestination: java.io.Writer newClass(java.lang.String,java.lang.String)>(v, v);
specialinvoke v.<java.io.PrintWriter: void <init>(java.io.Writer)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("package \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = class "Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("import \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("public class \u0001_B2 extends \u0001_B1 {");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = staticinvoke <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level[] values()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Level)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    public volatile int setup\u0001Mutex;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Level)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    public volatile int tear\u0001Mutex;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    public final static AtomicIntegerFieldUpdater<\u0001_B2> setup\u0001MutexUpdater = AtomicIntegerFieldUpdater.newUpdater(\u0001_B2.class, \"setup\u0001Mutex\");");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,org.openjdk.jmh.annotations.Level,java.lang.String,org.openjdk.jmh.annotations.Level)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    public final static AtomicIntegerFieldUpdater<\u0001_B2> tear\u0001MutexUpdater = AtomicIntegerFieldUpdater.newUpdater(\u0001_B2.class, \"tear\u0001Mutex\");");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("");
v = v + 1;
goto label;
label:
v = <org.openjdk.jmh.generators.core.StateObjectHandler$1: int[] $SwitchMap$org$openjdk$jmh$annotations$Scope>;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = virtualinvoke v.<org.openjdk.jmh.annotations.Scope: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
default: goto label;
};
label:
v = staticinvoke <org.openjdk.jmh.annotations.Level: org.openjdk.jmh.annotations.Level[] values()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Level)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("    public volatile boolean ready\u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = new java.lang.IllegalStateException;
v = v.<org.openjdk.jmh.generators.core.StateObject: org.openjdk.jmh.annotations.Scope scope>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.openjdk.jmh.annotations.Scope)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unknown state scope: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("}");
virtualinvoke v.<java.io.PrintWriter: void close()>();
v = new java.io.PrintWriter;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001_B3");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.GeneratorDestination: java.io.Writer newClass(java.lang.String,java.lang.String)>(v, v);
specialinvoke v.<java.io.PrintWriter: void <init>(java.io.Writer)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("package \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("public class \u0001_B3 extends \u0001_B2 {");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
staticinvoke <org.openjdk.jmh.generators.core.Paddings: void padding(java.io.PrintWriter)>(v);
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("}");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("");
virtualinvoke v.<java.io.PrintWriter: void close()>();
v = new java.io.PrintWriter;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u.\u0001");
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String userType>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.GeneratorDestination: java.io.Writer newClass(java.lang.String,java.lang.String)>(v, v);
specialinvoke v.<java.io.PrintWriter: void <init>(java.io.Writer)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("package \u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("public class \u extends \u0001_B3 {");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("}");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("");
virtualinvoke v.<java.io.PrintWriter: void close()>();
goto label;
label:
return;
}
public java.util.Collection getFields()
{
java.util.List v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
return v;
}
public org.openjdk.jmh.generators.core.StateObject getImplicit(java.lang.String)
{
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.util.Map v;
java.lang.Object v;
java.lang.String v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: java.lang.String;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map implicits>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public void addImports(java.io.PrintWriter)
{
java.io.PrintWriter v;
java.util.Iterator v;
java.util.Collection v;
java.util.Set v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.util.Collection[] v;
java.lang.Object v;
java.lang.String v, v, v;
boolean v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: java.io.PrintWriter;
v = newarray (java.util.Collection)[1];
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Set stateObjects>;
v[0] = v;
v = staticinvoke <org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Collection cons(java.util.Collection[])>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String packageName>;
v = v.<org.openjdk.jmh.generators.core.StateObject: java.lang.String type>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("import \u.\u;");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
goto label;
label:
return;
}
public java.util.Collection getAuxResets(org.openjdk.jmh.generators.core.MethodInfo)
{
java.util.ArrayList v;
org.openjdk.jmh.generators.core.MethodInfo v;
java.util.Map v, v;
java.lang.String v, v, v, v;
boolean v, v;
java.util.Iterator v;
java.util.Collection v;
org.openjdk.jmh.util.Multimap v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap auxNames>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxResettable>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u = 0;");
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
public java.util.Collection getAuxResults(org.openjdk.jmh.generators.core.MethodInfo, java.lang.String)
{
org.openjdk.jmh.generators.core.MethodInfo v;
byte v;
int[] v;
java.util.Map v, v, v;
boolean v, v, v, v, v;
java.util.Collection v;
org.openjdk.jmh.util.Multimap v;
java.util.ArrayList v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
org.openjdk.jmh.generators.core.GenerationException v, v;
org.openjdk.jmh.generators.core.StateObjectHandler v;
java.lang.Object v, v, v, v;
v := @this: org.openjdk.jmh.generators.core.StateObjectHandler;
v := @parameter: org.openjdk.jmh.generators.core.MethodInfo;
v := @parameter: java.lang.String;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: org.openjdk.jmh.util.Multimap auxNames>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = interfaceinvoke v.<org.openjdk.jmh.util.Multimap: java.util.Collection get(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxType>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = <org.openjdk.jmh.generators.core.StateObjectHandler$1: int[] $SwitchMap$org$openjdk$jmh$annotations$AuxCounters$Type>;
v = virtualinvoke v.<org.openjdk.jmh.annotations.AuxCounters$Type: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
v = -1;
v = virtualinvoke v.<java.lang.String: int hashCode()>();
lookupswitch(v)
{
case 46061119: goto label;
case 276670215: goto label;
case 1408172724: goto label;
case 1453241127: goto label;
default: goto label;
};
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("ThroughputResult");
if v == 0 goto label;
v = 0;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("AverageTimeResult");
if v == 0 goto label;
v = 1;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("SampleTimeResult");
if v == 0 goto label;
v = 2;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("SingleShotResult");
if v == 0 goto label;
v = 3;
label:
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
default: goto label;
};
label:
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.Object)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("new \u0001(ResultRole.SECONDARY, \"\u0001\", \u, res.getTime(), benchmarkParams.getTimeUnit())");
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new org.openjdk.jmh.generators.core.GenerationException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class,java.lang.String)>(class "Lorg/openjdk/jmh/annotations/AuxCounters;", v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unknown result name for @\u0001: \u0001");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
v = v.<org.openjdk.jmh.generators.core.StateObjectHandler: java.util.Map auxAccessors>;
v = interfaceinvoke v.<org.openjdk.jmh.generators.core.MethodInfo: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.Object)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("new ScalarResult(\"\u0001\", \u, \"#\", AggregationPolicy.SUM)");
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new org.openjdk.jmh.generators.core.GenerationException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class,org.openjdk.jmh.annotations.AuxCounters$Type)>(class "Lorg/openjdk/jmh/annotations/AuxCounters;", v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unknown @\u type: \u0001");
specialinvoke v.<org.openjdk.jmh.generators.core.GenerationException: void <init>(java.lang.String,org.openjdk.jmh.generators.core.MetadataInfo)>(v, v);
throw v;
label:
return v;
}
}