Mercurial > hg > truffle
annotate graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java @ 7223:e2ea829fafd9
use CHA more frequently for inlining
filter types when doing a type-checked inlining
author | Christian Haeubl <haeubl@ssw.jku.at> |
---|---|
date | Tue, 11 Dec 2012 16:38:27 +0100 |
parents | fcae6d960acd |
children | 8a3efb8c831d |
rev | line source |
---|---|
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
1 /* |
4255
1e62f742f0b3
Test how trace-code wrapped into an assert looks like.
Christian Wimmer <Christian.Wimmer@Oracle.com>
parents:
4213
diff
changeset
|
2 * Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
4 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
5 * This code is free software; you can redistribute it and/or modify it |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
6 * under the terms of the GNU General Public License version 2 only, as |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
7 * published by the Free Software Foundation. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
8 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
9 * This code is distributed in the hope that it will be useful, but WITHOUT |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
12 * version 2 for more details (a copy is included in the LICENSE file that |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
13 * accompanied this code). |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
14 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
15 * You should have received a copy of the GNU General Public License version |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
16 * 2 along with this work; if not, write to the Free Software Foundation, |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
18 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
20 * or visit www.oracle.com if you need additional information or have any |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
21 * questions. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
22 */ |
6525
2c913b643422
rename packages in graal.phases to match project name
Doug Simon <doug.simon@oracle.com>
parents:
6522
diff
changeset
|
23 package com.oracle.graal.phases; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
24 |
5798
2585af1e26ac
implemented non-XIR lowering of invokes (todo: inline virtual dispatch and null checking of receivers)
Doug Simon <doug.simon@oracle.com>
parents:
5792
diff
changeset
|
25 |
5346
4c3d953f8131
added mechanism (enabled by -G:PICache and -G:PiFilter) for saving/loading method profiling info to/from disk
Doug Simon <doug.simon@oracle.com>
parents:
5343
diff
changeset
|
26 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
27 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
28 * This class encapsulates options that control the behavior of the Graal compiler. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
29 * |
5056
2f2c6347fce4
comments cleanup/retagging
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5042
diff
changeset
|
30 * (thomaswue) WARNING: Fields of this class are treated as final by Graal. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
31 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
32 public final class GraalOptions { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
33 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
34 // Checkstyle: stop |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
35 private static final boolean ____ = false; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
36 // Checkstyle: resume |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
37 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
38 public static int Threads = 4; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
39 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
40 // inlining settings |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
41 public static boolean Inline = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
42 public static boolean Intrinsify = true; |
5114
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
43 static boolean InlineMonomorphicCalls = true; |
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
44 static boolean InlinePolymorphicCalls = true; |
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
45 static boolean InlineMegamorphicCalls = ____; |
7080
15055bdafbfc
disabled control-flow-based inlining
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7070
diff
changeset
|
46 public static int InliningPolicy = 1; |
7064
8d16b9b2c51e
first part of refactoring the InliningPhase
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7063
diff
changeset
|
47 public static int InliningDecision = 4; |
4598
6a44a26ed9e6
set default inlining policy to the greedy one
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4594
diff
changeset
|
48 public static int WeightComputationPolicy = 2; |
4699
83e7065e9c75
adjust inlining policy's maximum trivial size
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4698
diff
changeset
|
49 public static int MaximumTrivialSize = 10; |
4529
fc78ad20ec38
fixed exception framestate
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4528
diff
changeset
|
50 public static int MaximumInlineLevel = 30; |
4701
44b122d06e3a
reduce maximum desired size
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4700
diff
changeset
|
51 public static int MaximumDesiredSize = 3000; |
4564
8fc6920e064b
avoid recursive inlining, escape analysis does no longer restart inlining with level 0, bugfixes
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4563
diff
changeset
|
52 public static int MaximumRecursiveInlining = 1; |
6550
65f09f190be1
small change to inlining heuristics
Lukas Stadler <lukas.stadler@jku.at>
parents:
6525
diff
changeset
|
53 public static int SmallCompiledCodeSize = 2200; |
4605
f0569f6336f7
disabled megamorphic calls, trying an inlining policy where invokes within loops do not have any advantages
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4604
diff
changeset
|
54 public static boolean LimitInlinedProbability = ____; |
4528
e6e14d25e608
added two inlining policies for comparison
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4526
diff
changeset
|
55 // WeightBasedInliningPolicy (0) |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
56 public static float InliningSizePenaltyExp = 20; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
57 public static float MaximumInlineWeight = 1.25f; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
58 public static float InliningSizePenalty = 1; |
4591
33f181ad79d5
changed DynamicSizeBasedInliningPolicy to use log(probability) for frequently executed loops, added check for SmallCompiledCodeSize to WeightBasedInliningPolicy.
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4569
diff
changeset
|
59 // StaticSizeBasedInliningPolicy (1), MinimumCodeSizeBasedInlining (2), |
4699
83e7065e9c75
adjust inlining policy's maximum trivial size
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4698
diff
changeset
|
60 // DynamicSizeBasedInliningPolicy (3) |
4528
e6e14d25e608
added two inlining policies for comparison
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4526
diff
changeset
|
61 public static int MaximumInlineSize = 35; |
4699
83e7065e9c75
adjust inlining policy's maximum trivial size
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4698
diff
changeset
|
62 // GreedySizeBasedInlining (4) |
5021
a7c079d5dc87
try to reduce MaximumGreedyInlineSize significantly
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5005
diff
changeset
|
63 public static int MaximumGreedyInlineSize = 100; |
a7c079d5dc87
try to reduce MaximumGreedyInlineSize significantly
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5005
diff
changeset
|
64 public static int InliningBonusPerTransferredValue = 10; |
4699
83e7065e9c75
adjust inlining policy's maximum trivial size
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4698
diff
changeset
|
65 // Common options for inlining policies 1 to 4 |
4605
f0569f6336f7
disabled megamorphic calls, trying an inlining policy where invokes within loops do not have any advantages
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4604
diff
changeset
|
66 public static float NestedInliningSizeRatio = 1f; |
4528
e6e14d25e608
added two inlining policies for comparison
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4526
diff
changeset
|
67 public static float BoostInliningForEscapeAnalysis = 2f; |
e6e14d25e608
added two inlining policies for comparison
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4526
diff
changeset
|
68 public static float ProbabilityCapForInlining = 1f; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
69 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
70 // escape analysis settings |
6952 | 71 public static boolean PartialEscapeAnalysis = true; |
6710
6db6881c1270
add Virtualizable and VirtualizerTool, refactor PEA to use it
Lukas Stadler <lukas.stadler@jku.at>
parents:
6685
diff
changeset
|
72 public static boolean EscapeAnalysisHistogram = ____; |
6657
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
73 public static int EscapeAnalysisIterations = 2; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
74 public static String EscapeAnalyzeOnly = null; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
75 |
6657
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
76 public static double TailDuplicationProbability = 0.5; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
77 public static int TailDuplicationTrivialSize = 1; |
5786
f69a406355b2
new tail duplication phase
Lukas Stadler <lukas.stadler@jku.at>
parents:
5772
diff
changeset
|
78 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
79 // absolute probability analysis |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
80 public static boolean ProbabilityAnalysis = true; |
5005
c2ebd3d559f7
fixed probabilities when polymorphic inlining is used
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5004
diff
changeset
|
81 public static int LoopFrequencyPropagationPolicy = -2; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
82 |
4551
a7a16015e47f
changed profiling maturity so that profiling information is used more likely
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4541
diff
changeset
|
83 // profiling information |
5126
43d5ae1051f7
added better debug output when an optimistic deoptimization is disabled
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5118
diff
changeset
|
84 public static int DeoptsToDisableOptimisticOptimization = 40; |
4997
0c9196f57172
use profiling information whenever possible
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4991
diff
changeset
|
85 public static int MatureExecutionsBranch = 1; |
0c9196f57172
use profiling information whenever possible
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4991
diff
changeset
|
86 public static int MatureExecutionsPerSwitchCase = 1; |
0c9196f57172
use profiling information whenever possible
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4991
diff
changeset
|
87 public static int MatureExecutionsTypeProfile = 1; |
4551
a7a16015e47f
changed profiling maturity so that profiling information is used more likely
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4541
diff
changeset
|
88 |
5176
af59b4dfc9e4
compilation queue changes:
Lukas Stadler <lukas.stadler@jku.at>
parents:
5156
diff
changeset
|
89 // comilation queue |
5183
e1e681a5558e
fix PriorityQueue, enable PriorityQueue and CacheGraphs
Lukas Stadler <lukas.stadler@jku.at>
parents:
5180
diff
changeset
|
90 public static int TimedBootstrap = -1; |
5336
f536a459c2d3
re-enable graph caching and the priority compilation queue
Lukas Stadler <lukas.stadler@jku.at>
parents:
5334
diff
changeset
|
91 public static boolean PriorityCompileQueue = true; |
5176
af59b4dfc9e4
compilation queue changes:
Lukas Stadler <lukas.stadler@jku.at>
parents:
5156
diff
changeset
|
92 public static int SlowQueueCutoff = 100000; |
5178
5715abb8e29a
benchmark: graal compilation policy + priority queue + dynamic comp thread priority
Lukas Stadler <lukas.stadler@jku.at>
parents:
5177
diff
changeset
|
93 public static boolean SlowCompileThreads = ____; |
5180
6ab0cd9909b1
turn off experimental options (graph caching, compilation queue changes)
Lukas Stadler <lukas.stadler@jku.at>
parents:
5179
diff
changeset
|
94 public static boolean DynamicCompilePriority = ____; |
5176
af59b4dfc9e4
compilation queue changes:
Lukas Stadler <lukas.stadler@jku.at>
parents:
5156
diff
changeset
|
95 |
5177
a26b6248d398
added graph caching (-G:+CacheGraphs)
Lukas Stadler <lukas.stadler@jku.at>
parents:
5176
diff
changeset
|
96 // graph caching |
5336
f536a459c2d3
re-enable graph caching and the priority compilation queue
Lukas Stadler <lukas.stadler@jku.at>
parents:
5334
diff
changeset
|
97 public static boolean CacheGraphs = true; |
5177
a26b6248d398
added graph caching (-G:+CacheGraphs)
Lukas Stadler <lukas.stadler@jku.at>
parents:
5176
diff
changeset
|
98 public static int GraphCacheSize = 1000; |
a26b6248d398
added graph caching (-G:+CacheGraphs)
Lukas Stadler <lukas.stadler@jku.at>
parents:
5176
diff
changeset
|
99 public static boolean PrintGraphCache = ____; |
a26b6248d398
added graph caching (-G:+CacheGraphs)
Lukas Stadler <lukas.stadler@jku.at>
parents:
5176
diff
changeset
|
100 |
5741
c84c75339af1
Work on loop unswitching, things look ok, still disabled until FloatingRead preserves loop-closed form
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5732
diff
changeset
|
101 //loop transform settings TODO (gd) tune |
5745
11ef22975bba
Delete unused LoopTransformPhase
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5741
diff
changeset
|
102 public static boolean LoopPeeling = true; |
5692
41149ce1422f
Add div test, group loop options in GraalOptions
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5675
diff
changeset
|
103 public static boolean ReassociateInvariants = true; |
41149ce1422f
Add div test, group loop options in GraalOptions
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5675
diff
changeset
|
104 public static boolean FullUnroll = true; |
6309
6f8b6fc03c96
Add a maximum number of unswitching per loop
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6303
diff
changeset
|
105 public static boolean LoopUnswitch = true; |
5741
c84c75339af1
Work on loop unswitching, things look ok, still disabled until FloatingRead preserves loop-closed form
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5732
diff
changeset
|
106 public static int FullUnrollMaxNodes = 150; |
5884
347fad1ea1d0
increase full unrolling budget for fixed-size loops
Lukas Stadler <lukas.stadler@jku.at>
parents:
5844
diff
changeset
|
107 public static int ExactFullUnrollMaxNodes = 600; |
5745
11ef22975bba
Delete unused LoopTransformPhase
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5741
diff
changeset
|
108 public static float MinimumPeelProbability = 0.35f; |
6309
6f8b6fc03c96
Add a maximum number of unswitching per loop
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6303
diff
changeset
|
109 public static int LoopMaxUnswitch = 3; |
5732
e1d5c642d022
Started to draft a loop unswitching policy
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5722
diff
changeset
|
110 public static int LoopUnswitchMaxIncrease = 50; |
e1d5c642d022
Started to draft a loop unswitching policy
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5722
diff
changeset
|
111 public static int LoopUnswitchUncertaintyBoost = 5; |
5216
b64933dc4830
Peeling loop depending on their entry probability
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5215
diff
changeset
|
112 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
113 // debugging settings |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
114 public static int MethodEndBreakpointGuards = 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
115 public static boolean ZapStackOnMethodEntry = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
116 public static boolean DeoptALot = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
117 public static boolean VerifyPhases = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
118 public static boolean CreateDeoptInfo = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
119 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
120 public static String PrintFilter = null; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
121 |
4357
719ac1d92a52
More work on debug framework.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
4353
diff
changeset
|
122 // Debug settings: |
719ac1d92a52
More work on debug framework.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
4353
diff
changeset
|
123 public static boolean Debug = true; |
5134
4eb9895d9afe
Refactoring of the debug framework. Move compiler thread implementation to its own file.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
5087
diff
changeset
|
124 public static boolean PerThreadDebugValues = ____; |
4553
7d0d849abf80
added option to summarize debug values
Christian Haeubl <christian.haeubl@oracle.com>
parents:
4551
diff
changeset
|
125 public static boolean SummarizeDebugValues = ____; |
5134
4eb9895d9afe
Refactoring of the debug framework. Move compiler thread implementation to its own file.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
5087
diff
changeset
|
126 public static boolean SummarizePerPhase = ____; |
6657
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
127 public static String Dump = null; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
128 public static String Meter = null; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
129 public static String Time = null; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
130 public static String Log = null; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
131 public static String LogFile = null; |
768793150bcd
more PEA refactoring, multiple iterations
Lukas Stadler <lukas.stadler@jku.at>
parents:
6550
diff
changeset
|
132 public static String MethodFilter = null; |
5145
19a3ae027c56
Use DumpOnError flag, false by default
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5138
diff
changeset
|
133 public static boolean DumpOnError = ____; |
4357
719ac1d92a52
More work on debug framework.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
4353
diff
changeset
|
134 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
135 // Ideal graph visualizer output settings |
6685
dbe065c2c5bf
Change default graph dumping to binary and no CFG, fix name template for RuntimeCall
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6671
diff
changeset
|
136 public static boolean PrintBinaryGraphs = true; |
dbe065c2c5bf
Change default graph dumping to binary and no CFG, fix name template for RuntimeCall
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6671
diff
changeset
|
137 public static boolean PrintCFG = ____; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
138 public static boolean PrintIdealGraphFile = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
139 public static String PrintIdealGraphAddress = "127.0.0.1"; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
140 public static int PrintIdealGraphPort = 4444; |
5810
bc237d8b6f99
Add binary graph dumping to compiler (-G:+PrintBinaryGraphs)
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5745
diff
changeset
|
141 public static int PrintBinaryGraphPort = 4445; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
142 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
143 // Other printing settings |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
144 public static boolean PrintQueue = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
145 public static boolean PrintCompilation = ____; |
5040
4d6e5ddf70e5
added option to print the profiling information
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5021
diff
changeset
|
146 public static boolean PrintProfilingInformation = ____; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
147 public static boolean PrintIRWithLIR = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
148 public static boolean PrintCodeBytes = ____; |
5201
891399c54706
Add a PrintBailout option
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5184
diff
changeset
|
149 public static boolean PrintBailout = ____; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
150 public static int TraceLinearScanLevel = 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
151 public static int TraceLIRGeneratorLevel = 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
152 public static boolean TraceEscapeAnalysis = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
153 public static int TraceBytecodeParserLevel = 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
154 public static boolean ExitVMOnBailout = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
155 public static boolean ExitVMOnException = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
156 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
157 // Code generator settings |
5391
5097f21f6c2b
add a new simple CheckCast elimination phase
Lukas Stadler <lukas.stadler@jku.at>
parents:
5389
diff
changeset
|
158 public static boolean CheckCastElimination = true; |
5389
612b4f099362
disable frame state culling
Lukas Stadler <lukas.stadler@jku.at>
parents:
5385
diff
changeset
|
159 public static boolean CullFrameStates = ____; |
5105
95b8a32a7cc3
preparations to avoid endless recompilations because of not updated profiling information
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5061
diff
changeset
|
160 public static boolean UseProfilingInformation = true; |
5114
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
161 static boolean RemoveNeverExecutedCode = true; |
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
162 static boolean UseExceptionProbability = true; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
163 public static boolean AllowExplicitExceptionChecks = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
164 public static boolean OmitHotExceptionStacktrace = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
165 public static boolean GenSafepoints = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
166 public static boolean GenLoopSafepoints = true; |
5114
dad1ac9dba7d
finished first implementation of disabling runtime feedback selectively based on deoptimization history
Christian Haeubl <christian.haeubl@oracle.com>
parents:
5105
diff
changeset
|
167 static boolean UseTypeCheckHints = true; |
5844
a432e6d43aa1
fixed bugs related to -G:+InlineVTableStubs and re-enabled it by default
Doug Simon <doug.simon@oracle.com>
parents:
5843
diff
changeset
|
168 public static boolean InlineVTableStubs = true; |
5004
2792bcd9a0ce
disable vtable stub inlining
Lukas Stadler <lukas.stadler@jku.at>
parents:
5003
diff
changeset
|
169 public static boolean AlwaysInlineVTableStubs = ____; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
170 public static boolean GenAssertionCode = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
171 public static boolean AlignCallsForPatching = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
172 public static boolean ResolveClassBeforeStaticInvoke = true; |
7051
aee0e8fa8174
Make frame omission optional
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
7014
diff
changeset
|
173 public static boolean CanOmitFrame = true; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
174 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
175 // Translating tableswitch instructions |
7063
0d7dfa5b79e8
merged inlining and intrinsification phases
Christian Haeubl <haeubl@ssw.jku.at>
parents:
6710
diff
changeset
|
176 public static int MinimumJumpTableSize = 5; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
177 public static int RangeTestsSwitchDensity = 5; |
5698
764db9ada24f
rework of switch operations: unify lookup- and tableswitch, introduce switch lir instructions
Lukas Stadler <lukas.stadler@jku.at>
parents:
5696
diff
changeset
|
178 public static double MinTableSwitchDensity = 0.5; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
179 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
180 public static boolean DetailedAsserts = ____; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
181 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
182 // Runtime settings |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
183 public static int StackShadowPages = 2; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
184 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
185 public static boolean SupportJsrBytecodes = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
186 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
187 public static boolean OptAssumptions = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
188 public static boolean OptReadElimination = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
189 public static boolean OptCanonicalizer = true; |
6670
81ad987772f6
Cleanup GraalOption : removed defunct options
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6657
diff
changeset
|
190 public static boolean OptScheduleOutOfLoops = true; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
191 public static boolean OptReorderLoops = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
192 public static boolean OptEliminateGuards = true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
193 public static boolean OptImplicitNullChecks = true; |
5029
74f47ef37394
Fix and enable liveness analysis to prune unnecessary frame state entries
Christian Wimmer <Christian.Wimmer@Oracle.com>
parents:
5026
diff
changeset
|
194 public static boolean OptLivenessAnalysis = true; |
5215
ae367987a18c
Add options for OptLoopTransform and OptSafepointElimination
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5201
diff
changeset
|
195 public static boolean OptLoopTransform = true; |
ae367987a18c
Add options for OptLoopTransform and OptSafepointElimination
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
5201
diff
changeset
|
196 public static boolean OptSafepointElimination = true; |
6670
81ad987772f6
Cleanup GraalOption : removed defunct options
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6657
diff
changeset
|
197 public static boolean OptFloatingReads = true; |
5786
f69a406355b2
new tail duplication phase
Lukas Stadler <lukas.stadler@jku.at>
parents:
5772
diff
changeset
|
198 public static boolean OptTailDuplication = true; |
6671
bffb038abbe6
Add option for EliminatePartiallyRedundantGuards, eliminate at splits after IterativeConditionalElimination
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6670
diff
changeset
|
199 public static boolean OptEliminatePartiallyRedundantGuards = true; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
200 |
7220
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
201 // Intrinsification settings |
7223
e2ea829fafd9
use CHA more frequently for inlining
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7220
diff
changeset
|
202 public static boolean IntrinsifyArrayCopy = true; |
7220
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
203 public static boolean IntrinsifyObjectMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
204 public static boolean IntrinsifySystemMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
205 public static boolean IntrinsifyClassMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
206 public static boolean IntrinsifyThreadMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
207 public static boolean IntrinsifyUnsafeMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
208 public static boolean IntrinsifyMathMethods = true; |
fcae6d960acd
added more compiler intrinsics
Christian Haeubl <haeubl@ssw.jku.at>
parents:
7108
diff
changeset
|
209 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
210 /** |
5772
2f7a03583a32
added counters for code paths through the new object snippets
Doug Simon <doug.simon@oracle.com>
parents:
5760
diff
changeset
|
211 * Counts the various paths taken through snippets. |
5330
678f31e9724e
added -G:+CheckcastCounters to profile the paths taken through a compiled checkcast
Doug Simon <doug.simon@oracle.com>
parents:
5319
diff
changeset
|
212 */ |
5772
2f7a03583a32
added counters for code paths through the new object snippets
Doug Simon <doug.simon@oracle.com>
parents:
5760
diff
changeset
|
213 public static boolean SnippetCounters = false; |
5330
678f31e9724e
added -G:+CheckcastCounters to profile the paths taken through a compiled checkcast
Doug Simon <doug.simon@oracle.com>
parents:
5319
diff
changeset
|
214 |
5343
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
215 /** |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
216 * If the probability that a checkcast will hit one the profiled types (up to {@link #CheckcastMaxHints}) |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
217 * is below this value, the checkcast will be compiled without hints. |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
218 */ |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
219 public static double CheckcastMinHintHitProbability = 0.5; |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
220 |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
221 /** |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
222 * The maximum number of hint types that will be used when compiling a checkcast for which |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
223 * profiling information is available. Note that {@link #CheckcastMinHintHitProbability} |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
224 * also influences whether hints are used. |
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
225 */ |
5331
6e346160f104
replaced magic constants with GraalOptions.CheckcastMaxHints and GraalOptions.InstanceOfMaxHints
Doug Simon <doug.simon@oracle.com>
parents:
5330
diff
changeset
|
226 public static int CheckcastMaxHints = 2; |
5343
20c14eb46238
added GraalOptions.CheckcastMinHintHitProbability to better guide use of hints for checkcasts
Doug Simon <doug.simon@oracle.com>
parents:
5336
diff
changeset
|
227 |
5369
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
228 /** |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
229 * @see #CheckcastMinHintHitProbability |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
230 */ |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
231 public static double InstanceOfMinHintHitProbability = 0.5; |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
232 |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
233 /** |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
234 * @see #CheckcastMaxHints |
2e9a5365dfb0
moved conversion of type profiles into hints for type check instructions from front end to lowering phase
Doug Simon <doug.simon@oracle.com>
parents:
5346
diff
changeset
|
235 */ |
6670
81ad987772f6
Cleanup GraalOption : removed defunct options
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
6657
diff
changeset
|
236 public static int InstanceOfMaxHints = 2; |
5331
6e346160f104
replaced magic constants with GraalOptions.CheckcastMaxHints and GraalOptions.InstanceOfMaxHints
Doug Simon <doug.simon@oracle.com>
parents:
5330
diff
changeset
|
237 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
238 static { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
239 // turn detailed assertions on when the general assertions are on (misusing the assert keyword for this) |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
240 assert (DetailedAsserts = true) == true; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
241 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
242 } |