hotspot/test/compiler/jvmci/code/TestAssembler.java
changeset 35823 59a847ec6ee3
parent 35591 35ab7c6816e9
child 35844 8a1952516600
--- a/hotspot/test/compiler/jvmci/code/TestAssembler.java	Thu Feb 04 12:33:31 2016 +0100
+++ b/hotspot/test/compiler/jvmci/code/TestAssembler.java	Wed Feb 03 12:16:44 2016 +0100
@@ -181,6 +181,8 @@
     private int stackAlignment;
     private int curStackSlot;
 
+    private StackSlot deoptRescue;
+
     protected TestAssembler(CodeCacheProvider codeCache, int initialFrameSize, int stackAlignment, PlatformKind narrowOopKind, Register... registers) {
         this.narrowOopKind = LIRKind.reference(narrowOopKind);
 
@@ -216,6 +218,10 @@
         return StackSlot.get(kind, -curStackSlot, true);
     }
 
+    protected void setDeoptRescueSlot(StackSlot deoptRescue) {
+        this.deoptRescue = deoptRescue;
+    }
+
     protected void recordImplicitException(DebugInfo info) {
         sites.add(new Infopoint(code.position(), info, InfopointReason.IMPLICIT_EXCEPTION));
     }
@@ -249,7 +255,7 @@
         byte[] finishedData = data.finish();
         DataPatch[] finishedDataPatches = dataPatches.toArray(new DataPatch[0]);
         return new HotSpotCompiledNmethod(method.getName(), finishedCode, finishedCode.length, finishedSites, new Assumption[0], new ResolvedJavaMethod[]{method}, new Comment[0], finishedData, 16,
-                        finishedDataPatches, false, frameSize, 0, method, 0, id, 0L, false);
+                        finishedDataPatches, false, frameSize, deoptRescue, method, 0, id, 0L, false);
     }
 
     protected static class Buffer {