Skip to content

Commit d820f11

Browse files
committed
Fix style and import ordering.
1 parent 6e77c28 commit d820f11

File tree

13 files changed

+154
-129
lines changed

13 files changed

+154
-129
lines changed

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/nodes/graphbuilderconf/GraphBuilderContext.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import static jdk.graal.compiler.core.common.type.StampFactory.objectNonNull;
2929
import static jdk.vm.ci.meta.DeoptimizationAction.InvalidateReprofile;
3030

31+
import java.util.ArrayList;
3132
import java.util.List;
3233

3334
import jdk.graal.compiler.bytecode.Bytecode;
@@ -82,8 +83,6 @@
8283
import jdk.vm.ci.meta.JavaType;
8384
import jdk.vm.ci.meta.ResolvedJavaMethod;
8485

85-
import java.util.ArrayList;
86-
8786
/**
8887
* Used by a {@link GraphBuilderPlugin} to interface with an object that parses the bytecode of a
8988
* single {@linkplain #getMethod() method} as part of building a {@linkplain #getGraph() graph} .

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/replacements/IntrinsicGraphBuilder.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@
2626

2727
import static jdk.vm.ci.code.BytecodeFrame.AFTER_BCI;
2828

29+
import java.util.ArrayList;
30+
import java.util.List;
31+
2932
import jdk.graal.compiler.bytecode.Bytecode;
3033
import jdk.graal.compiler.core.common.type.Stamp;
3134
import jdk.graal.compiler.core.common.type.StampFactory;
@@ -76,9 +79,6 @@
7679
import jdk.vm.ci.meta.ResolvedJavaType;
7780
import jdk.vm.ci.meta.Signature;
7881

79-
import java.util.ArrayList;
80-
import java.util.List;
81-
8282
/**
8383
* Implementation of {@link GraphBuilderContext} used to produce a graph for a method based on an
8484
* {@link InvocationPlugin} for the method.

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/PreParseCallbackSupport.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,14 @@
2424
*/
2525
package com.oracle.svm.hosted;
2626

27-
import jdk.graal.compiler.nodes.graphbuilderconf.IntrinsicContext;
28-
import jdk.vm.ci.meta.ResolvedJavaMethod;
29-
import org.graalvm.nativeimage.ImageSingletons;
30-
3127
import java.util.ArrayList;
3228
import java.util.List;
3329

30+
import org.graalvm.nativeimage.ImageSingletons;
31+
32+
import jdk.graal.compiler.nodes.graphbuilderconf.IntrinsicContext;
33+
import jdk.vm.ci.meta.ResolvedJavaMethod;
34+
3435
/**
3536
* Represents a hook for callbacks executed right before the start of method parsing by
3637
* {@link com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.SharedBytecodeParser}.

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/dataflow/AbstractFrame.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@
2424
*/
2525
package com.oracle.svm.hosted.dataflow;
2626

27-
import com.oracle.svm.core.util.VMError;
28-
2927
import java.util.ArrayList;
3028
import java.util.HashMap;
3129
import java.util.Map;
@@ -35,6 +33,8 @@
3533
import java.util.function.Function;
3634
import java.util.function.Predicate;
3735

36+
import com.oracle.svm.core.util.VMError;
37+
3838
/**
3939
* Abstract representation of a bytecode execution frame, i.e., its
4040
* {@link AbstractFrame#operandStack operand stack} and {@link AbstractFrame#localVariableTable
@@ -277,6 +277,16 @@ public void transform(Predicate<T> filterFunction, Function<T, T> transformFunct
277277
}
278278

279279
void put(int index, ValueWithSlots<T> value) {
280+
VMError.guarantee(index >= 0, "Local variable table index cannot be negative");
281+
ValueWithSlots<T> previousInTable = variables.get(index - 1);
282+
if (previousInTable != null && previousInTable.size == ValueWithSlots.Slots.TWO_SLOTS) {
283+
/*
284+
* Store operations into a local variable slot occupied by the second half of a two
285+
* slot value is a legal operation, but it invalidates the variable previously
286+
* occupying two slots.
287+
*/
288+
variables.remove(index - 1);
289+
}
280290
variables.put(index, value);
281291
}
282292

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/dataflow/AbstractInterpreter.java

Lines changed: 64 additions & 59 deletions
Large diffs are not rendered by default.

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/dataflow/ForwardDataFlowAnalyzer.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,16 @@
2424
*/
2525
package com.oracle.svm.hosted.dataflow;
2626

27+
import java.util.ArrayList;
28+
import java.util.BitSet;
29+
import java.util.HashMap;
30+
import java.util.LinkedHashSet;
31+
import java.util.List;
32+
import java.util.Map;
33+
import java.util.Set;
34+
35+
import org.graalvm.collections.Pair;
36+
2737
import jdk.graal.compiler.bytecode.Bytecode;
2838
import jdk.graal.compiler.bytecode.BytecodeStream;
2939
import jdk.graal.compiler.debug.DebugContext;
@@ -33,15 +43,6 @@
3343
import jdk.vm.ci.meta.ExceptionHandler;
3444
import jdk.vm.ci.meta.JavaType;
3545
import jdk.vm.ci.meta.ResolvedJavaMethod;
36-
import org.graalvm.collections.Pair;
37-
38-
import java.util.ArrayList;
39-
import java.util.BitSet;
40-
import java.util.HashMap;
41-
import java.util.LinkedHashSet;
42-
import java.util.List;
43-
import java.util.Map;
44-
import java.util.Set;
4546

4647
/**
4748
* Abstract bytecode forward data-flow analyzer. Abstract program states, represented by {@code S},

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/phases/SharedGraphBuilderPhase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
import java.util.List;
4343
import java.util.Objects;
4444

45-
import com.oracle.svm.hosted.PreParseCallbackSupport;
4645
import com.oracle.svm.hosted.substitute.SubstitutionType;
4746
import org.graalvm.nativeimage.AnnotationAccess;
4847

@@ -76,6 +75,7 @@
7675
import com.oracle.svm.core.util.VMError;
7776
import com.oracle.svm.hosted.ExceptionSynthesizer;
7877
import com.oracle.svm.hosted.LinkAtBuildTimeSupport;
78+
import com.oracle.svm.hosted.PreParseCallbackSupport;
7979
import com.oracle.svm.hosted.SharedArenaSupport;
8080
import com.oracle.svm.hosted.code.FactoryMethodSupport;
8181
import com.oracle.svm.hosted.code.SubstrateCompilationDirectives;

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ReflectionPlugins.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,6 @@
4747

4848
import com.oracle.svm.core.TrackDynamicAccessEnabled;
4949
import com.oracle.svm.hosted.DynamicAccessDetectionFeature;
50-
import com.oracle.svm.hosted.strictconstantanalysis.ConstantExpressionRegistry;
51-
import com.oracle.svm.hosted.strictconstantanalysis.InferredDynamicAccessLoggingFeature;
52-
import com.oracle.svm.hosted.strictconstantanalysis.StrictConstantAnalysisFeature;
5350
import org.graalvm.nativeimage.ImageSingletons;
5451
import org.graalvm.nativeimage.hosted.RuntimeReflection;
5552
import org.graalvm.nativeimage.impl.RuntimeClassInitializationSupport;
@@ -70,6 +67,9 @@
7067
import com.oracle.svm.hosted.ImageClassLoader;
7168
import com.oracle.svm.hosted.ReachabilityRegistrationNode;
7269
import com.oracle.svm.hosted.classinitialization.ClassInitializationSupport;
70+
import com.oracle.svm.hosted.strictconstantanalysis.ConstantExpressionRegistry;
71+
import com.oracle.svm.hosted.strictconstantanalysis.InferredDynamicAccessLoggingFeature;
72+
import com.oracle.svm.hosted.strictconstantanalysis.StrictConstantAnalysisFeature;
7373
import com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor;
7474
import com.oracle.svm.hosted.substitute.DeletedElementException;
7575
import com.oracle.svm.util.ModuleSupport;

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,6 @@
4040
import java.util.function.Predicate;
4141
import java.util.stream.Stream;
4242

43-
import com.oracle.svm.hosted.strictconstantanalysis.ConstantExpressionRegistry;
44-
import com.oracle.svm.hosted.strictconstantanalysis.InferredDynamicAccessLoggingFeature;
45-
import com.oracle.svm.hosted.strictconstantanalysis.StrictConstantAnalysisFeature;
4643
import org.graalvm.nativeimage.AnnotationAccess;
4744
import org.graalvm.nativeimage.ImageInfo;
4845
import org.graalvm.nativeimage.ImageSingletons;
@@ -109,6 +106,9 @@
109106
import com.oracle.svm.hosted.code.SubstrateCompilationDirectives;
110107
import com.oracle.svm.hosted.nodes.DeoptProxyNode;
111108
import com.oracle.svm.hosted.nodes.ReadReservedRegister;
109+
import com.oracle.svm.hosted.strictconstantanalysis.ConstantExpressionRegistry;
110+
import com.oracle.svm.hosted.strictconstantanalysis.InferredDynamicAccessLoggingFeature;
111+
import com.oracle.svm.hosted.strictconstantanalysis.StrictConstantAnalysisFeature;
112112
import com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor;
113113

114114
import jdk.graal.compiler.core.common.CompressEncoding;

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/strictconstantanalysis/ConstantExpressionAnalyzer.java

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,20 @@
2424
*/
2525
package com.oracle.svm.hosted.strictconstantanalysis;
2626

27+
import java.lang.invoke.MethodHandles;
28+
import java.lang.invoke.MethodType;
29+
import java.lang.reflect.Array;
30+
import java.lang.reflect.Constructor;
31+
import java.lang.reflect.Executable;
32+
import java.lang.reflect.Method;
33+
import java.lang.reflect.Modifier;
34+
import java.util.Arrays;
35+
import java.util.HashMap;
36+
import java.util.List;
37+
import java.util.Map;
38+
import java.util.Objects;
39+
import java.util.function.Function;
40+
2741
import com.oracle.graal.pointsto.infrastructure.OriginalClassProvider;
2842
import com.oracle.graal.pointsto.infrastructure.OriginalMethodProvider;
2943
import com.oracle.graal.pointsto.infrastructure.WrappedConstantPool;
@@ -34,6 +48,7 @@
3448
import com.oracle.svm.util.TypeResult;
3549
import com.oracle.svm.hosted.dataflow.AbstractFrame;
3650
import com.oracle.svm.hosted.dataflow.AbstractInterpreter;
51+
3752
import jdk.graal.compiler.nodes.spi.CoreProviders;
3853
import jdk.vm.ci.meta.Constant;
3954
import jdk.vm.ci.meta.ConstantPool;
@@ -44,20 +59,6 @@
4459
import jdk.vm.ci.meta.ResolvedJavaMethod;
4560
import jdk.vm.ci.meta.ResolvedJavaType;
4661

47-
import java.lang.invoke.MethodHandles;
48-
import java.lang.invoke.MethodType;
49-
import java.lang.reflect.Array;
50-
import java.lang.reflect.Constructor;
51-
import java.lang.reflect.Executable;
52-
import java.lang.reflect.Method;
53-
import java.lang.reflect.Modifier;
54-
import java.util.Arrays;
55-
import java.util.HashMap;
56-
import java.util.List;
57-
import java.util.Map;
58-
import java.util.Objects;
59-
import java.util.function.Function;
60-
6162
import static jdk.graal.compiler.bytecode.Bytecodes.ACONST_NULL;
6263
import static jdk.graal.compiler.bytecode.Bytecodes.ANEWARRAY;
6364
import static jdk.graal.compiler.bytecode.Bytecodes.CHECKCAST;

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/strictconstantanalysis/ConstantExpressionRegistry.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,23 @@
2424
*/
2525
package com.oracle.svm.hosted.strictconstantanalysis;
2626

27+
import java.util.Map;
28+
import java.util.concurrent.ConcurrentHashMap;
29+
30+
import org.graalvm.collections.Pair;
31+
import org.graalvm.nativeimage.ImageSingletons;
32+
2733
import com.oracle.svm.core.util.VMError;
2834
import com.oracle.svm.util.LogUtils;
35+
import com.oracle.svm.hosted.dataflow.AbstractFrame;
36+
import com.oracle.svm.hosted.dataflow.DataFlowAnalysisException;
37+
2938
import jdk.graal.compiler.bytecode.Bytecode;
3039
import jdk.graal.compiler.bytecode.BytecodeProvider;
3140
import jdk.graal.compiler.bytecode.ResolvedJavaMethodBytecodeProvider;
32-
import com.oracle.svm.hosted.dataflow.AbstractFrame;
33-
import com.oracle.svm.hosted.dataflow.DataFlowAnalysisException;
3441
import jdk.graal.compiler.nodes.graphbuilderconf.IntrinsicContext;
3542
import jdk.vm.ci.meta.JavaKind;
3643
import jdk.vm.ci.meta.ResolvedJavaMethod;
37-
import org.graalvm.collections.Pair;
38-
import org.graalvm.nativeimage.ImageSingletons;
39-
40-
import java.util.Map;
41-
import java.util.concurrent.ConcurrentHashMap;
4244

4345
public class ConstantExpressionRegistry {
4446

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/strictconstantanalysis/InferredDynamicAccessLoggingFeature.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,37 +24,40 @@
2424
*/
2525
package com.oracle.svm.hosted.strictconstantanalysis;
2626

27+
import java.io.IOException;
28+
import java.nio.file.Path;
29+
import java.util.Arrays;
30+
import java.util.List;
31+
import java.util.Objects;
32+
import java.util.Queue;
33+
import java.util.concurrent.ConcurrentLinkedQueue;
34+
import java.util.function.Supplier;
35+
import java.util.stream.Collectors;
36+
import java.util.stream.Stream;
37+
38+
import org.graalvm.collections.Pair;
39+
2740
import com.oracle.svm.core.ParsingReason;
2841
import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature;
2942
import com.oracle.svm.core.feature.InternalFeature;
3043
import com.oracle.svm.core.option.HostedOptionKey;
3144
import com.oracle.svm.core.util.VMError;
3245
import com.oracle.svm.hosted.ReachabilityRegistrationNode;
3346
import com.oracle.svm.util.LogUtils;
47+
3448
import jdk.graal.compiler.nodes.graphbuilderconf.GraphBuilderContext;
3549
import jdk.graal.compiler.options.Option;
50+
import jdk.graal.compiler.options.OptionStability;
3651
import jdk.graal.compiler.util.json.JsonBuilder;
3752
import jdk.graal.compiler.util.json.JsonPrettyWriter;
3853
import jdk.graal.compiler.util.json.JsonWriter;
3954
import jdk.vm.ci.meta.ResolvedJavaMethod;
40-
import org.graalvm.collections.Pair;
41-
42-
import java.io.IOException;
43-
import java.nio.file.Path;
44-
import java.util.Arrays;
45-
import java.util.List;
46-
import java.util.Objects;
47-
import java.util.Queue;
48-
import java.util.concurrent.ConcurrentLinkedQueue;
49-
import java.util.function.Supplier;
50-
import java.util.stream.Collectors;
51-
import java.util.stream.Stream;
5255

5356
@AutomaticallyRegisteredFeature
5457
public class InferredDynamicAccessLoggingFeature implements InternalFeature {
5558

5659
static class Options {
57-
@Option(help = "Specify the .json log file location for inferred dynamic accesses.")//
60+
@Option(help = "Specify the .json log file location for inferred dynamic accesses.", stability = OptionStability.EXPERIMENTAL)//
5861
static final HostedOptionKey<String> InferredDynamicAccessLog = new HostedOptionKey<>(null);
5962
}
6063

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/strictconstantanalysis/StrictConstantAnalysisFeature.java

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,23 +24,26 @@
2424
*/
2525
package com.oracle.svm.hosted.strictconstantanalysis;
2626

27+
import java.lang.invoke.MethodType;
28+
import java.lang.reflect.Field;
29+
import java.lang.reflect.InvocationHandler;
30+
import java.util.function.BooleanSupplier;
31+
import java.util.function.Predicate;
32+
33+
import org.graalvm.nativeimage.ImageSingletons;
34+
import org.graalvm.nativeimage.hosted.RuntimeReflection;
35+
2736
import com.oracle.graal.pointsto.util.GraalAccess;
2837
import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature;
2938
import com.oracle.svm.core.feature.InternalFeature;
3039
import com.oracle.svm.core.option.HostedOptionKey;
3140
import com.oracle.svm.hosted.FeatureImpl;
3241
import com.oracle.svm.hosted.PreParseCallbackSupport;
3342
import com.oracle.svm.util.ReflectionUtil;
43+
3444
import jdk.graal.compiler.options.Option;
45+
import jdk.graal.compiler.options.OptionStability;
3546
import jdk.vm.ci.meta.ResolvedJavaMethod;
36-
import org.graalvm.nativeimage.ImageSingletons;
37-
import org.graalvm.nativeimage.hosted.RuntimeReflection;
38-
39-
import java.lang.invoke.MethodType;
40-
import java.lang.reflect.Field;
41-
import java.lang.reflect.InvocationHandler;
42-
import java.util.function.BooleanSupplier;
43-
import java.util.function.Predicate;
4447

4548
/**
4649
* Feature which enables a graph IR optimization independent analysis of compile-time inferrable
@@ -101,7 +104,7 @@ public enum Mode {
101104
Possible values are:
102105
"Disable" (default): Disable the strict mode and fall back to the optimization dependent analysis for inferrable dynamic calls;
103106
"Warn": Fold both the calls inferred with the strict mode analysis and the optimization dependant analysis, but print a warning for non-strict call folding;
104-
"Enforce": Fold only the calls inferred by the strict analysis mode.""")//
107+
"Enforce": Fold only the calls inferred by the strict analysis mode.""", stability = OptionStability.EXPERIMENTAL)//
105108
public static final HostedOptionKey<Mode> StrictConstantAnalysis = new HostedOptionKey<>(Mode.Disable);
106109
}
107110

0 commit comments

Comments
 (0)