Reviewers: Søren Gjesse,

Description:
Fix wrong assert in ia32 deoptimizer.

In revision 6795 I introduced an assertion in the deoptimizer that was
wrong. We check that curr_address - prev_address > patch_size(), but
prev_address is actually the address right after the last patched
call, so we just need to be larger than or equal to prev_address.



Please review this at http://codereview.chromium.org/6480068/

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
  M     src/ia32/deoptimizer-ia32.cc


Index: src/ia32/deoptimizer-ia32.cc
===================================================================
--- src/ia32/deoptimizer-ia32.cc        (revision 6795)
+++ src/ia32/deoptimizer-ia32.cc        (working copy)
@@ -80,7 +80,7 @@
   Address prev_address = code_start_address;
   for (unsigned i = 0; i < table.length(); ++i) {
     Address curr_address = code_start_address + table.GetPcOffset(i);
-    ASSERT_GE(curr_address - prev_address, patch_size());
+    ASSERT_GE(curr_address, prev_address);
     ZapCodeRange(prev_address, curr_address);

     SafepointEntry safepoint_entry = table.GetEntry(i);


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to