Mercurial > hg > truffle
changeset 21060:bc54c4091715
Merge.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 21 Apr 2015 00:50:05 +0200 |
parents | 59632bb8e4ad (diff) b90ad9708e5e (current diff) |
children | a671d592a8da |
files | |
diffstat | 4 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/GraalOptions.java Mon Apr 20 23:59:49 2015 +0200 +++ b/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/GraalOptions.java Tue Apr 21 00:50:05 2015 +0200 @@ -122,6 +122,9 @@ @Option(help = "Stressed the code emitting explicit exception throwing code.", type = OptionType.Debug) public static final StableOptionValue<Boolean> StressExplicitExceptionCode = new StableOptionValue<>(false); + @Option(help = "Stressed the code emitting explicit exception throwing code.", type = OptionType.Debug) + public static final StableOptionValue<Boolean> StressInvokeWithExceptionNode = new StableOptionValue<>(false); + @Option(help = "", type = OptionType.Debug) public static final OptionValue<Boolean> VerifyPhases = new OptionValue<>(false);
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Mon Apr 20 23:59:49 2015 +0200 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Tue Apr 21 00:50:05 2015 +0200 @@ -1152,7 +1152,8 @@ // be conservative if information was not recorded (could result in endless // recompiles otherwise) Invoke invoke; - if (graphBuilderConfig.omitAllExceptionEdges() || (optimisticOpts.useExceptionProbability() && profilingInfo != null && profilingInfo.getExceptionSeen(bci()) == TriState.FALSE)) { + if (!StressInvokeWithExceptionNode.getValue() && + (graphBuilderConfig.omitAllExceptionEdges() || (optimisticOpts.useExceptionProbability() && profilingInfo != null && profilingInfo.getExceptionSeen(bci()) == TriState.FALSE))) { invoke = createInvoke(callTarget, resultType); } else { invoke = createInvokeWithException(callTarget, resultType);
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StructuredGraph.java Mon Apr 20 23:59:49 2015 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StructuredGraph.java Tue Apr 21 00:50:05 2015 +0200 @@ -433,6 +433,7 @@ assert node != null && newNode != null && node.isAlive() && newNode.isAlive() : "cannot add " + newNode + " before " + node; assert node.predecessor() != null && node.predecessor() instanceof FixedWithNextNode : "cannot add " + newNode + " before " + node; assert newNode.next() == null : newNode; + assert !(node instanceof AbstractMergeNode); FixedWithNextNode pred = (FixedWithNextNode) node.predecessor(); pred.setNext(newNode); newNode.setNext(node);
--- a/mx/mx_graal.py Mon Apr 20 23:59:49 2015 +0200 +++ b/mx/mx_graal.py Tue Apr 21 00:50:05 2015 +0200 @@ -1555,6 +1555,10 @@ with Task('BootstrapWithSystemAssertionsNoCoop:fastdebug', tasks) as t: if t: vm(['-esa', '-XX:-TieredCompilation', '-XX:-UseCompressedOops', '-version']) + with VM('graal', 'fastdebug'): + with Task('BootstrapWithExceptionEdges:fastdebug', tasks) as t: + if t: vm(['-esa', '-XX:-TieredCompilation', '-G:+StressInvokeWithExceptionNode', '-version']) + with VM('graal', 'product'): with Task('BootstrapWithGCVerification:product', tasks) as t: if t: