< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration.java

Print this page

        

*** 199,208 **** --- 199,209 ---- private final BytecodeExceptionMode bytecodeExceptionMode; private final boolean omitAssertions; private final List<ResolvedJavaType> skippedExceptionTypes; private final boolean insertFullInfopoints; private final boolean trackNodeSourcePosition; + private final boolean retainLocalVariables; private final Plugins plugins; public enum BytecodeExceptionMode { /** * This mode always explicitly checks for exceptions.
*** 227,244 **** --- 228,247 ---- boolean unresolvedIsError, BytecodeExceptionMode bytecodeExceptionMode, boolean omitAssertions, boolean insertFullInfopoints, boolean trackNodeSourcePosition, + boolean retainLocalVariables, List<ResolvedJavaType> skippedExceptionTypes, Plugins plugins) { this.eagerResolving = eagerResolving; this.unresolvedIsError = unresolvedIsError; this.bytecodeExceptionMode = bytecodeExceptionMode; this.omitAssertions = omitAssertions; this.insertFullInfopoints = insertFullInfopoints; this.trackNodeSourcePosition = trackNodeSourcePosition; + this.retainLocalVariables = retainLocalVariables; this.skippedExceptionTypes = skippedExceptionTypes; this.plugins = plugins; } /**
*** 253,262 **** --- 256,266 ---- unresolvedIsError, bytecodeExceptionMode, omitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, newPlugins); return result; }
*** 272,281 **** --- 276,286 ---- newUnresolvedIsError, bytecodeExceptionMode, omitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, plugins); } public GraphBuilderConfiguration withEagerResolving(boolean newEagerResolving) {
*** 284,293 **** --- 289,299 ---- unresolvedIsError, bytecodeExceptionMode, omitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, plugins); } public GraphBuilderConfiguration withSkippedExceptionTypes(ResolvedJavaType[] newSkippedExceptionTypes) {
*** 296,305 **** --- 302,312 ---- unresolvedIsError, bytecodeExceptionMode, omitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, Collections.unmodifiableList(Arrays.asList(newSkippedExceptionTypes)), plugins); } public GraphBuilderConfiguration withBytecodeExceptionMode(BytecodeExceptionMode newBytecodeExceptionMode) {
*** 307,316 **** --- 314,324 ---- unresolvedIsError, newBytecodeExceptionMode, omitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, plugins); } public GraphBuilderConfiguration withOmitAssertions(boolean newOmitAssertions) {
*** 319,328 **** --- 327,337 ---- unresolvedIsError, bytecodeExceptionMode, newOmitAssertions, insertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, plugins); } public GraphBuilderConfiguration withFullInfopoints(boolean newInsertFullInfopoints) {
*** 331,340 **** --- 340,350 ---- unresolvedIsError, bytecodeExceptionMode, omitAssertions, newInsertFullInfopoints, trackNodeSourcePosition, + retainLocalVariables, skippedExceptionTypes, plugins); } public GraphBuilderConfiguration withNodeSourcePosition(boolean newTrackNodeSourcePosition) {
*** 343,352 **** --- 353,376 ---- unresolvedIsError, bytecodeExceptionMode, omitAssertions, insertFullInfopoints, newTrackNodeSourcePosition, + retainLocalVariables, + skippedExceptionTypes, + plugins); + } + + public GraphBuilderConfiguration withRetainLocalVariables(boolean newRetainLocalVariables) { + return new GraphBuilderConfiguration( + eagerResolving, + unresolvedIsError, + bytecodeExceptionMode, + omitAssertions, + insertFullInfopoints, + trackNodeSourcePosition, + newRetainLocalVariables, skippedExceptionTypes, plugins); } public List<ResolvedJavaType> getSkippedExceptionTypes() {
*** 367,376 **** --- 391,404 ---- public boolean trackNodeSourcePosition() { return trackNodeSourcePosition; } + public boolean retainLocalVariables() { + return retainLocalVariables; + } + public boolean insertFullInfopoints() { return insertFullInfopoints; } public static GraphBuilderConfiguration getDefault(Plugins plugins) {
*** 379,388 **** --- 407,417 ---- /* unresolvedIsError: */ false, BytecodeExceptionMode.Profile, /* omitAssertions: */ false, /* insertFullInfopoints: */ false, /* trackNodeSourcePosition: */ false, + /* retainLocalVariables */ false, Collections.emptyList(), plugins); } public static GraphBuilderConfiguration getSnippetDefault(Plugins plugins) {
*** 391,400 **** --- 420,430 ---- /* unresolvedIsError: */ true, BytecodeExceptionMode.OmitAll, /* omitAssertions: */ false, /* insertFullInfopoints: */ false, /* trackNodeSourcePosition: */ false, + /* retainLocalVariables */ false, Collections.emptyList(), plugins); } /** Returns {@code true} if it is an error for a class/field/method resolution to fail. */
< prev index next >