Changeset 106370 in webkit


Ignore:
Timestamp:
Jan 31, 2012 11:07:44 AM (12 years ago)
Author:
msaboff@apple.com
Message:

ASSERT(m_jumpsToLink.isEmpty()) failing in ARMv7Assembler dtor
https://bugs.webkit.org/show_bug.cgi?id=77443

Reviewed by Gavin Barraclough.

Removed failing ASSERT() and thus destructor. The ASSERT isn't needed.
We are hitting it in the YARR JIT case where we bail out and go to the
interpreter with a partially JIT'ed function. Since we haven't linked
the JIT'ed code, there is likely to be some unresolved jumps in the vector
when the ARMv7Assembler destructor is called. For the case where we
complete the JIT process, we clear the vector at the end of
LinkBuffer::linkCode (LinkBuffer.h:292).

  • assembler/ARMv7Assembler.h:

(ARMv7Assembler):

Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r106368 r106370  
     12012-01-31  Michael Saboff  <msaboff@apple.com>
     2
     3        ASSERT(m_jumpsToLink.isEmpty()) failing in ARMv7Assembler dtor
     4        https://bugs.webkit.org/show_bug.cgi?id=77443
     5
     6        Reviewed by Gavin Barraclough.
     7
     8        Removed failing ASSERT() and thus destructor.  The ASSERT isn't needed.
     9        We are hitting it in the YARR JIT case where we bail out and go to the
     10        interpreter with a partially JIT'ed function.  Since we haven't linked
     11        the JIT'ed code, there is likely to be some unresolved jumps in the vector
     12        when the ARMv7Assembler destructor is called.  For the case where we
     13        complete the JIT process, we clear the vector at the end of
     14        LinkBuffer::linkCode (LinkBuffer.h:292).
     15
     16        * assembler/ARMv7Assembler.h:
     17        (ARMv7Assembler):
     18
    1192012-01-31  Anders Carlsson  <andersca@apple.com>
    220
  • trunk/Source/JavaScriptCore/assembler/ARMv7Assembler.h

    r101729 r106370  
    415415class ARMv7Assembler {
    416416public:
    417     ~ARMv7Assembler()
    418     {
    419         ASSERT(m_jumpsToLink.isEmpty());
    420     }
    421 
    422417    typedef ARMRegisters::RegisterID RegisterID;
    423418    typedef ARMRegisters::FPSingleRegisterID FPSingleRegisterID;
Note: See TracChangeset for help on using the changeset viewer.