[Webkit-unassigned] [Bug 103128] LLInt C Loop backend should work on 32 bit platforms, both big and little endian

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Mar 8 13:56:49 PST 2013


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


Filip Pizlo <fpizlo at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #183151|review?                     |review-
               Flag|                            |




--- Comment #9 from Filip Pizlo <fpizlo at apple.com>  2013-03-08 13:59:14 PST ---
(From update of attachment 183151)
View in context: https://bugs.webkit.org/attachment.cgi?id=183151&action=review

I recommend adding to LowLevelInterpreter.asm the following:

if JSVALUE64
    const CellOffset = 0
else
    const CellOffset = PayloadOffset
end

And then use CellOffset instead of PayloadOffset in the places that I marked.

> Source/JavaScriptCore/llint/LowLevelInterpreter.asm:266
> +    loadp Callee + PayloadOffset[cfr], targetRegister

This will break 64-bit big endian.

> Source/JavaScriptCore/llint/LowLevelInterpreter.asm:272
> +    loadp Callee + PayloadOffset[cfr], targetRegister

This will break 64-bit big endian.

> Source/JavaScriptCore/llint/LowLevelInterpreter.asm:844
> +    loadp ScopeChain + PayloadOffset[cfr], t3

This will break 64-bit big endian.

-- 
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