Mercurial > hg > graal-compiler
changeset 22487:2d56522533a2
Support for subclasses of IntrinsicGraphBuilder
author | Christian Wimmer <christian.wimmer@oracle.com> |
---|---|
date | Wed, 19 Aug 2015 16:03:54 -0700 |
parents | af21ee97d1db |
children | f89487f1d185 |
files | graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntrinsicGraphBuilder.java |
diffstat | 1 files changed, 15 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntrinsicGraphBuilder.java Wed Aug 19 15:48:09 2015 +0200 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntrinsicGraphBuilder.java Wed Aug 19 16:03:54 2015 -0700 @@ -41,21 +41,26 @@ */ public class IntrinsicGraphBuilder implements GraphBuilderContext, Receiver { - private final MetaAccessProvider metaAccess; - private final ConstantReflectionProvider constantReflection; - private final StampProvider stampProvider; - private final StructuredGraph graph; - private final ResolvedJavaMethod method; - private final int invokeBci; - private FixedWithNextNode lastInstr; - private ValueNode[] arguments; - private ValueNode returnValue; + protected final MetaAccessProvider metaAccess; + protected final ConstantReflectionProvider constantReflection; + protected final StampProvider stampProvider; + protected final StructuredGraph graph; + protected final ResolvedJavaMethod method; + protected final int invokeBci; + protected FixedWithNextNode lastInstr; + protected ValueNode[] arguments; + protected ValueNode returnValue; public IntrinsicGraphBuilder(MetaAccessProvider metaAccess, ConstantReflectionProvider constantReflection, StampProvider stampProvider, ResolvedJavaMethod method, int invokeBci) { + this(metaAccess, constantReflection, stampProvider, method, invokeBci, AllowAssumptions.YES); + } + + protected IntrinsicGraphBuilder(MetaAccessProvider metaAccess, ConstantReflectionProvider constantReflection, StampProvider stampProvider, ResolvedJavaMethod method, int invokeBci, + AllowAssumptions allowAssumptions) { this.metaAccess = metaAccess; this.constantReflection = constantReflection; this.stampProvider = stampProvider; - this.graph = new StructuredGraph(method, AllowAssumptions.YES); + this.graph = new StructuredGraph(method, allowAssumptions); this.method = method; this.invokeBci = invokeBci; this.lastInstr = graph.start();