annotate graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/TruffleCompilerOptions.java @ 16745:bda327903f96

Truffle: turn off class instance stamps by default.
author Christian Humer <christian.humer@gmail.com>
date Mon, 11 Aug 2014 15:44:52 +0200
parents ada0a7729b6f
children ef3c7944261b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
1 /*
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
2 * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
4 *
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
5 * This code is free software; you can redistribute it and/or modify it
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
6 * under the terms of the GNU General Public License version 2 only, as
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
7 * published by the Free Software Foundation.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
8 *
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
9 * This code is distributed in the hope that it will be useful, but WITHOUT
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
12 * version 2 for more details (a copy is included in the LICENSE file that
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
13 * accompanied this code).
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
14 *
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License version
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
16 * 2 along with this work; if not, write to the Free Software Foundation,
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
18 *
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
20 * or visit www.oracle.com if you need additional information or have any
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
21 * questions.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
22 */
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
23 package com.oracle.graal.truffle;
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
24
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
25 import com.oracle.graal.options.*;
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
26
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
27 /**
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
28 * Options for the Truffle compiler.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
29 */
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
30 public class TruffleCompilerOptions {
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
31
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
32 // @formatter:off
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
33 // configuration
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
34 /**
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
35 * Instructs the Truffle Compiler to compile call targets only if their name contains at least one element of a comma-separated list of includes.
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
36 * Excludes are prefixed with a tilde (~).
11949
f2fbdf89a1a5 Remove obsolete TruffleCompilerOptions.
Andreas Woess <andreas.woess@jku.at>
parents: 11723
diff changeset
37 *
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
38 * The format in EBNF:
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
39 * <pre>
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
40 * CompileOnly = Element, { ',', Element } ;
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
41 * Element = Include | '~' Exclude ;
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
42 * </pre>
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
43 */
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
44 @Option(help = "Restrict compilation to comma-separated list of includes (or excludes prefixed with tilde)")
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
45 public static final OptionValue<String> TruffleCompileOnly = new OptionValue<>(null);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
46 @Option(help = "Compile call target when call count exceeds this threshold")
15105
4833806209f2 Truffle: fixed compiler options.
Christian Humer <christian.humer@gmail.com>
parents: 15098
diff changeset
47 public static final OptionValue<Integer> TruffleCompilationThreshold = new OptionValue<>(1000);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
48 @Option(help = "Minimum number of calls before a call target is compiled")
15105
4833806209f2 Truffle: fixed compiler options.
Christian Humer <christian.humer@gmail.com>
parents: 15098
diff changeset
49 public static final OptionValue<Integer> TruffleMinInvokeThreshold = new OptionValue<>(3);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
50 @Option(help = "Delay compilation after an invalidation to allow for reprofiling")
10867
4ead4f35b91f Truffle: use loopAndInvokeCounter for replace backoff.
Andreas Woess <andreas.woess@jku.at>
parents: 10862
diff changeset
51 public static final OptionValue<Integer> TruffleInvalidationReprofileCount = new OptionValue<>(3);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
52 @Option(help = "Delay compilation after a node replacement")
10867
4ead4f35b91f Truffle: use loopAndInvokeCounter for replace backoff.
Andreas Woess <andreas.woess@jku.at>
parents: 10862
diff changeset
53 public static final OptionValue<Integer> TruffleReplaceReprofileCount = new OptionValue<>(10);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
54 @Option(help = "Enable automatic inlining of call targets")
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
55 public static final OptionValue<Boolean> TruffleFunctionInlining = new OptionValue<>(true);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
56 @Option(help = "Maximum number of Graal IR nodes during partial evaluation")
15397
d030e31fe082 Increase default value for maximum number of Graal nodes during partial evaluation.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 15222
diff changeset
57 public static final OptionValue<Integer> TruffleGraphMaxNodes = new OptionValue<>(200000);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
58 @Option(help = "Stop inlining if caller's cumulative tree size would exceed this limit")
13334
39694f3b0ed9 Truffle: set default TruffleInliningMaxCallerSize to 2250.
Christian Humer <christian.humer@gmail.com>
parents: 13203
diff changeset
59 public static final OptionValue<Integer> TruffleInliningMaxCallerSize = new OptionValue<>(2250);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
60 @Option(help = "Skip inlining candidate if its tree size exceeds this limit")
14983
a31d807757ee Truffle: made inlining fully context sensitive.
Christian Humer <christian.humer@gmail.com>
parents: 14618
diff changeset
61 public static final OptionValue<Integer> TruffleInliningMaxCalleeSize = new OptionValue<>(500);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
62 @Option(help = "Call frequency relative to call target")
10797
bb3cfaa7897c Truffle: try out a new inlining policy
Andreas Woess <andreas.woess@jku.at>
parents: 10796
diff changeset
63 public static final OptionValue<Double> TruffleInliningMinFrequency = new OptionValue<>(0.3);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
64 @Option(help = "Allow inlining of less hot candidates if tree size is small")
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
65 public static final OptionValue<Integer> TruffleInliningTrivialSize = new OptionValue<>(10);
16410
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
66
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
67 @Option(help = "Enable call target splitting")
16410
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
68 public static final OptionValue<Boolean> TruffleSplitting = new OptionValue<>(true);
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
69 @Option(help = "Experimental: Enable the new version of truffle splitting.")
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
70 public static final OptionValue<Boolean> TruffleSplittingNew = new OptionValue<>(false);
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
71 @Option(help = "Experimental. New splitting only: Whether or not splitting should be based instance comparisons of non TypedObjects")
16745
bda327903f96 Truffle: turn off class instance stamps by default.
Christian Humer <christian.humer@gmail.com>
parents: 16535
diff changeset
72 public static final OptionValue<Boolean> TruffleSplittingClassInstanceStamps = new OptionValue<>(false);
16410
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
73 @Option(help = "Experimental. New splitting only: Whether or not splitting should be based instance comparisons of TypedObjects")
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
74 public static final OptionValue<Boolean> TruffleSplittingTypeInstanceStamps = new OptionValue<>(true);
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
75 @Option(help = "Experimental. New splitting only: The number of calls until splitting is performed. ")
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
76 public static final OptionValue<Integer> TruffleSplittingStartCallCount = new OptionValue<>(3);
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
77 @Option(help = "Experimental. New splitting only: Split everything aggressively. ")
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
78 public static final OptionValue<Boolean> TruffleSplittingAggressive = new OptionValue<>(false);
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
79
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
80
7f862f0ab1bc Truffle: added new experimental splitting heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 16407
diff changeset
81
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
82 @Option(help = "Disable call target splitting if tree size exceeds this limit")
14079
ca92db718c74 Truffle: refined split/inlining heuristics.
Christian Humer <christian.humer@gmail.com>
parents: 14076
diff changeset
83 public static final OptionValue<Integer> TruffleSplittingMaxCalleeSize = new OptionValue<>(100);
14043
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
84 @Option(help = "Number of most recently used methods in truffle cache")
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
85 public static final OptionValue<Integer> TruffleMaxCompilationCacheSize = new OptionValue<>(512);
3bd2ad96f162 TruffleCompilerOptions: add help texts, delete old options
Andreas Woess <andreas.woess@jku.at>
parents: 13997
diff changeset
86 @Option(help = "Enable asynchronous truffle compilation in background thread")
15098
1a8cf0cf7baa Truffle: reverted accidently changed compiler options.
Christian Humer <christian.humer@gmail.com>
parents: 15091
diff changeset
87 public static final OptionValue<Boolean> TruffleBackgroundCompilation = new OptionValue<>(true);
13984
1c9dbfc5b510 Truffle: New more reliable inlining strategy for the Truffle runtime.
Christian Humer <christian.humer@gmail.com>
parents: 13892
diff changeset
88 @Option(help = "")
11723
9b8e3b2986c5 add two options for compilation decisions based on time passed
Christian Wirth <christian.wirth@oracle.com>
parents: 11643
diff changeset
89 public static final OptionValue<Integer> TruffleCompilationDecisionTime = new OptionValue<>(100);
12592
42c8f76a98bf Move Truffle compilations to background compilation thread.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 12446
diff changeset
90 @Option(help = "")
12478
b4b7d39cdf73 Truffle: Update for the CompilationPolicy
Christian Wirth <christian.wirth@oracle.com>
parents: 12446
diff changeset
91 public static final OptionValue<Boolean> TruffleCompilationDecisionTimePrintFail = new OptionValue<>(false);
15222
58d2c5bdb9cd Truffle: Add option TruffleReturnTypeSpeculation.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 15211
diff changeset
92 @Option(help = "")
58d2c5bdb9cd Truffle: Add option TruffleReturnTypeSpeculation.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 15211
diff changeset
93 public static final OptionValue<Boolean> TruffleReturnTypeSpeculation = new OptionValue<>(true);
16470
efbf9195dfcb Truffle: add argument type speculation
Andreas Woess <andreas.woess@jku.at>
parents: 16410
diff changeset
94 @Option(help = "")
efbf9195dfcb Truffle: add argument type speculation
Andreas Woess <andreas.woess@jku.at>
parents: 16410
diff changeset
95 public static final OptionValue<Boolean> TruffleArgumentTypeSpeculation = new StableOptionValue<>(true);
12478
b4b7d39cdf73 Truffle: Update for the CompilationPolicy
Christian Wirth <christian.wirth@oracle.com>
parents: 12446
diff changeset
96
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
97 // tracing
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
98 @Option(help = "")
15117
e301d31927fb made TraceTruffleCompilation option false by default
Doug Simon <doug.simon@oracle.com>
parents: 15105
diff changeset
99 public static final OptionValue<Boolean> TraceTruffleCompilation = new OptionValue<>(false);
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
100 @Option(help = "")
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
101 public static final OptionValue<Boolean> TraceTruffleCompilationDetails = new OptionValue<>(false);
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
102 @Option(help = "")
13996
c7ac129e17e9 Truffle: further tweaks to the inlinig/split heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 13987
diff changeset
103 public static final OptionValue<Boolean> TraceTruffleCompilationHistogram = new OptionValue<>(false);
14076
61bc19c3dcdc Truffle: implemented new tracing flag TraceTruffleCompilationPolymorphism.
Christian Humer <christian.humer@gmail.com>
parents: 14074
diff changeset
104 @Option(help = "Prints out all polymorphic and generic nodes after compilation.")
61bc19c3dcdc Truffle: implemented new tracing flag TraceTruffleCompilationPolymorphism.
Christian Humer <christian.humer@gmail.com>
parents: 14074
diff changeset
105 public static final OptionValue<Boolean> TraceTruffleCompilationPolymorphism = new OptionValue<>(false);
16085
0cdce0e2d122 Truffle: Added -G:+TraceTruffleCompilationAST flag.
Christian Humer <christian.humer@gmail.com>
parents: 15397
diff changeset
106 @Option(help = "Prints out all polymorphic and generic nodes after compilation.")
0cdce0e2d122 Truffle: Added -G:+TraceTruffleCompilationAST flag.
Christian Humer <christian.humer@gmail.com>
parents: 15397
diff changeset
107 public static final OptionValue<Boolean> TraceTruffleCompilationAST = new OptionValue<>(false);
16407
9575add7149c Truffle: new option TraceTruffleCompilationCallTree which prints the inlined call tree just before compilation.
Christian Humer <christian.humer@gmail.com>
parents: 16085
diff changeset
108 @Option(help = "Prints out all calls of a compiled method.")
9575add7149c Truffle: new option TraceTruffleCompilationCallTree which prints the inlined call tree just before compilation.
Christian Humer <christian.humer@gmail.com>
parents: 16085
diff changeset
109 public static final OptionValue<Boolean> TraceTruffleCompilationCallTree = new OptionValue<>(false);
13996
c7ac129e17e9 Truffle: further tweaks to the inlinig/split heuristic.
Christian Humer <christian.humer@gmail.com>
parents: 13987
diff changeset
110 @Option(help = "")
13203
401e1473c546 Truffle: Implemented basic tracing of truffle compiler tree expansion (-G:+TraceTruffleExpansion, -G:+TraceTruffleExpansionSource)
Christian Humer <christian.humer@gmail.com>
parents: 12601
diff changeset
111 public static final OptionValue<Boolean> TraceTruffleExpansion = new OptionValue<>(false);
401e1473c546 Truffle: Implemented basic tracing of truffle compiler tree expansion (-G:+TraceTruffleExpansion, -G:+TraceTruffleExpansionSource)
Christian Humer <christian.humer@gmail.com>
parents: 12601
diff changeset
112 @Option(help = "")
401e1473c546 Truffle: Implemented basic tracing of truffle compiler tree expansion (-G:+TraceTruffleExpansion, -G:+TraceTruffleExpansionSource)
Christian Humer <christian.humer@gmail.com>
parents: 12601
diff changeset
113 public static final OptionValue<Boolean> TraceTruffleExpansionSource = new OptionValue<>(false);
401e1473c546 Truffle: Implemented basic tracing of truffle compiler tree expansion (-G:+TraceTruffleExpansion, -G:+TraceTruffleExpansionSource)
Christian Humer <christian.humer@gmail.com>
parents: 12601
diff changeset
114 @Option(help = "")
10612
549a7568ce14 Introduce new Truffle compiler options: TruffleOperationCacheMaxNodes and TraceTruffleCompilationExceptions
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 10484
diff changeset
115 public static final OptionValue<Boolean> TraceTruffleCacheDetails = new OptionValue<>(false);
549a7568ce14 Introduce new Truffle compiler options: TruffleOperationCacheMaxNodes and TraceTruffleCompilationExceptions
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 10484
diff changeset
116 @Option(help = "")
15189
19a98af07b63 Truffle: Make sure exceptions during compilation result in a bailout.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents: 15117
diff changeset
117 public static final OptionValue<Boolean> TruffleCompilationExceptionsAreFatal = new OptionValue<>(false);
10705
fd53f9f7007b Truffle: refactor inlining
Andreas Woess <andreas.woess@jku.at>
parents: 10682
diff changeset
118 @Option(help = "")
13984
1c9dbfc5b510 Truffle: New more reliable inlining strategy for the Truffle runtime.
Christian Humer <christian.humer@gmail.com>
parents: 13892
diff changeset
119 public static final OptionValue<Boolean> TraceTruffleInlining = new OptionValue<>(false);
10705
fd53f9f7007b Truffle: refactor inlining
Andreas Woess <andreas.woess@jku.at>
parents: 10682
diff changeset
120 @Option(help = "")
14074
ed4b5d1ef667 Truffle: Added separate option to trace splitting.
Christian Humer <christian.humer@gmail.com>
parents: 14043
diff changeset
121 public static final OptionValue<Boolean> TraceTruffleSplitting = new OptionValue<>(false);
16535
ada0a7729b6f Truffle: introduce debug option to print the stack trace when transferring to the interpreter
Andreas Woess <andreas.woess@jku.at>
parents: 16470
diff changeset
122 @Option(help = "Print stack trace on transfer to interpreter")
ada0a7729b6f Truffle: introduce debug option to print the stack trace when transferring to the interpreter
Andreas Woess <andreas.woess@jku.at>
parents: 16470
diff changeset
123 public static final OptionValue<Boolean> TraceTruffleTransferToInterpreter = new StableOptionValue<>(false);
14074
ed4b5d1ef667 Truffle: Added separate option to trace splitting.
Christian Humer <christian.humer@gmail.com>
parents: 14043
diff changeset
124 @Option(help = "")
10844
3cf5f371dc9f Truffle: print inlined call target and rename profiling option.
Andreas Woess <andreas.woess@jku.at>
parents: 10827
diff changeset
125 public static final OptionValue<Boolean> TruffleCallTargetProfiling = new StableOptionValue<>(false);
10484
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
126 // @formatter:on
0097fb11c16f Add basic version of Graal's Truffle runtime.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff changeset
127 }