[Webkit-unassigned] [Bug 96127] JSC: Fix some llint C++ interpreter bugs

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Sep 9 20:14:33 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=96127


Mark Lam <mark.lam at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #162930|0                           |1
        is obsolete|                            |
 Attachment #162930|review?, commit-queue?      |
               Flag|                            |




--- Comment #20 from Mark Lam <mark.lam at apple.com>  2012-09-09 20:14:50 PST ---
Created an attachment (id=163028)
 --> (https://bugs.webkit.org/attachment.cgi?id=163028&action=review)
New patch with extra stuff.  See accompanying comment for details.

Changed ASSERT(), and ASSERT_AT() macro to use a #define'd comma expression instead of a function call.  This keeps the folks happy who want assertion failures to break the debugger in the asserting function.

Resolved some extra issues regarding the C++ llint backend that I found while trying to implement the Windows port:
- CLoop::execute()'s bootstrapOpcodeId does not need a default value.  This in turn ensures that the opcode var is always initialized to keep MSVC happy.  It was harmless before, but this is cleaner.
- In LowLevelInterpreter.asm, moved the dispatchAfterCall() call to where it is needed.  For the C_LOOP back-end, this was previously generates unreachable code.
- Placate a MSVC warning for t0, and t1 being uninitialized in CLoop::execute().
- MSVC doesn't like UNUSED_PARAM() for labels. Switched to using the new UNUSED_LABEL() macro.
- offlineasm/generate_offset_extractor.rb was generating code that initialize an unsigned array with int values, and MSVC complained.  Resolved this with a cast in the right places.

Will let the EWS validate this patch first to make sure that other compilers do not complain before I submit this for review.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list