< prev index next >
src/jdk.vm.ci/share/classes/jdk.vm.ci.runtime/src/jdk/vm/ci/runtime/JVMCIBackend.java
Print this page
@@ -20,12 +20,15 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
package jdk.vm.ci.runtime;
-import jdk.vm.ci.code.*;
-import jdk.vm.ci.meta.*;
+import jdk.vm.ci.code.CodeCacheProvider;
+import jdk.vm.ci.code.TargetDescription;
+import jdk.vm.ci.code.stack.StackIntrospection;
+import jdk.vm.ci.meta.ConstantReflectionProvider;
+import jdk.vm.ci.meta.MetaAccessProvider;
/**
* A JVMCI backend encapsulates the capabilities needed by a Java based compiler for compiling and
* installing code for a single compute unit within a JVM. In a JVM with support for heterogeneous
* computing, more than one backend may be exposed.
@@ -33,15 +36,17 @@
public class JVMCIBackend {
private final MetaAccessProvider metaAccess;
private final CodeCacheProvider codeCache;
private final ConstantReflectionProvider constantReflection;
+ private final StackIntrospection stackIntrospection;
- public JVMCIBackend(MetaAccessProvider metaAccess, CodeCacheProvider codeCache, ConstantReflectionProvider constantReflection) {
+ public JVMCIBackend(MetaAccessProvider metaAccess, CodeCacheProvider codeCache, ConstantReflectionProvider constantReflection, StackIntrospection stackIntrospection) {
this.metaAccess = metaAccess;
this.codeCache = codeCache;
this.constantReflection = constantReflection;
+ this.stackIntrospection = stackIntrospection;
}
public MetaAccessProvider getMetaAccess() {
return metaAccess;
}
@@ -55,6 +60,10 @@
}
public TargetDescription getTarget() {
return codeCache.getTarget();
}
+
+ public StackIntrospection getStackIntrospection() {
+ return stackIntrospection;
+ }
}
< prev index next >