[webkit-reviews] review granted: [Bug 170945] RELEASE_ASSERT_NOT_REACHED() in InferredType::kindForFlags() on Big-Endians : [Attachment 311587] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 31 11:47:01 PDT 2017


Mark Lam <mark.lam at apple.com> has granted Tomas Popela <tpopela at redhat.com>'s
request for review:
Bug 170945: RELEASE_ASSERT_NOT_REACHED() in InferredType::kindForFlags() on
Big-Endians
https://bugs.webkit.org/show_bug.cgi?id=170945

Attachment 311587: Patch

https://bugs.webkit.org/attachment.cgi?id=311587&action=review




--- Comment #18 from Mark Lam <mark.lam at apple.com> ---
Comment on attachment 311587
  --> https://bugs.webkit.org/attachment.cgi?id=311587
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=311587&action=review

r=me with suggestion.

> Source/JavaScriptCore/ChangeLog:10
> +	   Define the PutByIdFlags type as int32_t as its value is clobbered on
> +	   64-bit big endian arches when saved through UnlinkedInstruction's
> +	   operand that is defined as int32_t.

I would say something like:
"Re-define PutByIdFlags as a int32_t enum explicitly because it is stored as an
int32_t value in UnlinkedInstruction.  This prevents a bug on 64-bit big endian
architectures where the word order is inverted (when we convert the
UnlinkedInstruction into a CodeBlock Instruction), resulting in the
PutByIdFlags value not being stored in the 32-bit word that the rest of the
code expects it to be in."


More information about the webkit-reviews mailing list