Mercurial > hg > graal-compiler
changeset 22892:563be9ba3e3c
bugfix: can only register assumptions when graph allows it
author | Christian Wimmer <christian.wimmer@oracle.com> |
---|---|
date | Mon, 26 Oct 2015 16:39:48 -0700 |
parents | bc231bc8bf76 |
children | afcdf0430946 |
files | graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/substitutions/TruffleGraphBuilderPlugins.java |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/substitutions/TruffleGraphBuilderPlugins.java Mon Oct 26 18:27:19 2015 +0100 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/substitutions/TruffleGraphBuilderPlugins.java Mon Oct 26 16:39:48 2015 -0700 @@ -112,7 +112,7 @@ Registration r = new Registration(plugins, OptimizedAssumption.class); InvocationPlugin plugin = new InvocationPlugin() { public boolean apply(GraphBuilderContext b, ResolvedJavaMethod targetMethod, Receiver receiver) { - if (receiver.isConstant()) { + if (receiver.isConstant() && b.getAssumptions() != null) { Constant constant = receiver.get().asConstant(); OptimizedAssumption assumption = snippetReflection.asObject(OptimizedAssumption.class, (JavaConstant) constant); if (assumption.isValid()) { @@ -227,7 +227,7 @@ * and constant folding could still eliminate the call to bailout(). However, we * also want to stop parsing, since we are sure that we will never need the * graph beyond the bailout point. - * + * * Therefore, we manually emit the call to bailout, which will be intrinsified * later when intrinsifications can no longer be delayed. The call is followed * by a NeverPartOfCompilationNode, which is a control sink and therefore stops