Fix for constant pool support and debug
authorrmcilroy@chromium.org <rmcilroy@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 30 Jul 2014 10:31:57 +0000 (10:31 +0000)
committerrmcilroy@chromium.org <rmcilroy@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 30 Jul 2014 10:31:57 +0000 (10:31 +0000)
RedirectActivationsToRecompiledCodeOnThread must also patch frame's
constant pool.

Reference: https://github.com/andrewlow/v8ppc/commit/329d72fd

BUG=
R=rmcilroy@chromium.org

Review URL: https://codereview.chromium.org/430523002

Patch from Andrew Low <andrew_low@ca.ibm.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/debug.cc

index 3586a18..609eeba 100644 (file)
@@ -1890,6 +1890,11 @@ static void RedirectActivationsToRecompiledCodeOnThread(
              reinterpret_cast<intptr_t>(new_pc));
     }
 
+    if (FLAG_enable_ool_constant_pool) {
+      // Update constant pool pointer for new code.
+      frame->set_constant_pool(new_code->constant_pool());
+    }
+
     // Patch the return address to return into the code with
     // debug break slots.
     frame->set_pc(new_pc);