Fix CLoop on big-endian machines
authorAllan Sandfeld Jensen <allan.jensen@digia.com>
Thu, 9 Oct 2014 15:40:37 +0000 (17:40 +0200)
committerFelix Geyer <fgeyer@debian.org>
Wed, 1 Apr 2015 17:44:29 +0000 (17:44 +0000)
commit96d233eea60d0fa6fb3c4df84f5c66edd635d9f1
tree9050c6507164039687af802f008194fe51244dc7
parent31e7877e405b2a9ef6651fcb9ad65986f403a54a
Fix CLoop on big-endian machines

Callee and ScopeChain are JSObject pointers and saved in the 64bit
structure for JS registers. On a 32bit big-endian machine the actual
pointer is offset by the PayloadOffset of 4 bytes, but on little-endian
and 64bit architectures there is no offset.

This patch fixes four places the payloadOffset was not correctly added
on 32bit big-endian, and six places it was added on 64big big-endian
when it shouldn't.

Task-number: QTBUG-41896
Change-Id: I46b474bee9822b8040d1b7b2e8f31ce42e0adefe
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Gbp-Pq: Name fix_cloop_on_big_endian_machines.patch
Source/JavaScriptCore/llint/LowLevelInterpreter.asm
Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm