Reviewers: Kevin Millikin,

Description:
2nd try at fixing coverage of inline keyed access on IA32.

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

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

Affected files:
   M     src/codegen-ia32.cc


Index: src/codegen-ia32.cc
===================================================================
--- src/codegen-ia32.cc (revision 1777)
+++ src/codegen-ia32.cc (working copy)
@@ -5273,12 +5273,14 @@
    // instruction.
    ASSERT(value.is_register() && value.reg().is(eax));
    // The delta from the start of the map-compare instruction to the
-  // test eax instruction.  We use masm_ directly here instead of the
+  // test instruction.  We use masm_ directly here instead of the
    // double underscore macro because the macro sometimes uses macro
    // expansion to turn into something that can't return a value.  This
    // is encountered when doing generated code coverage tests.
    int delta_to_patch_site = masm_->SizeOfCodeGeneratedSince(patch_site());
-  __ test(value.reg(), Immediate(-delta_to_patch_site));
+  // Here we use masm_-> instead of the double underscore macro because  
this
+  // is the instruction that gets patched and coverage code gets in the  
way.
+  masm_->test(value.reg(), Immediate(-delta_to_patch_site));
    __ IncrementCounter(&Counters::keyed_load_inline_miss, 1);

    // The receiver and key were spilled by the call, so their state as



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

Reply via email to