Mercurial > hg > graal-compiler
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 |
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 } |