WebKit Bugzilla
Attachment 360479 Details for
Bug 132333
: Remove unneeded CPU(BIG_ENDIAN) handling in LLInt after new bytecode format.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for landing.
bug-132333.patch (text/plain), 2.71 KB, created by
Mark Lam
on 2019-01-29 11:18:48 PST
(
hide
)
Description:
Patch for landing.
Filename:
MIME Type:
Creator:
Mark Lam
Created:
2019-01-29 11:18:48 PST
Size:
2.71 KB
patch
obsolete
>Index: Source/JavaScriptCore/ChangeLog >=================================================================== >--- Source/JavaScriptCore/ChangeLog (revision 240658) >+++ Source/JavaScriptCore/ChangeLog (working copy) >@@ -1,3 +1,19 @@ >+2019-01-29 Mark Lam <mark.lam@apple.com> >+ >+ Remove unneeded CPU(BIG_ENDIAN) handling in LLInt after new bytecode format. >+ https://bugs.webkit.org/show_bug.cgi?id=132333 >+ >+ Reviewed by Yusuke Suzuki. >+ >+ * bytecode/InstructionStream.h: >+ (JSC::InstructionStreamWriter::write): >+ - The 32-bit write() function need not invert the order of the bytes written to >+ the bytecode stream for CPU(BUG_ENDIAN) because the incoming uint32_t value to >+ be written is already in big endian order for CPU(BUG_ENDIAN) platforms. >+ >+ * llint/LLIntOfflineAsmConfig.h: >+ - OFFLINE_ASM_BIG_ENDIAN is no longer needed nor used after the new bytecode format. >+ > 2019-01-29 Dominik Infuehr <dinfuehr@igalia.com> > > [ARM] Check for negative zero instead of just zero >Index: Source/JavaScriptCore/bytecode/InstructionStream.h >=================================================================== >--- Source/JavaScriptCore/bytecode/InstructionStream.h (revision 240656) >+++ Source/JavaScriptCore/bytecode/InstructionStream.h (working copy) >@@ -213,21 +213,15 @@ public: > void write(uint32_t i) > { > ASSERT(!m_finalized); >- union { >- uint32_t i; >- uint8_t bytes[4]; >- } u { i }; >-#if CPU(BIG_ENDIAN) >- write(u.bytes[3]); >- write(u.bytes[2]); >- write(u.bytes[1]); >- write(u.bytes[0]); >-#else // !CPU(BIG_ENDIAN) >- write(u.bytes[0]); >- write(u.bytes[1]); >- write(u.bytes[2]); >- write(u.bytes[3]); >-#endif // !CPU(BIG_ENDIAN) >+ auto bytes = bitwise_cast<uint8_t[4]>(i); >+ >+ // Though not always obvious, we don't have to invert the order of the >+ // bytes written here for CPU(BIG_ENDIAN). This is because the incoming >+ // i value is already ordered in big endian on CPU(BIG_EDNDIAN) platforms. >+ write(bytes[0]); >+ write(bytes[1]); >+ write(bytes[2]); >+ write(bytes[3]); > } > > void rewind(MutableRef& ref) >Index: Source/JavaScriptCore/llint/LLIntOfflineAsmConfig.h >=================================================================== >--- Source/JavaScriptCore/llint/LLIntOfflineAsmConfig.h (revision 240656) >+++ Source/JavaScriptCore/llint/LLIntOfflineAsmConfig.h (working copy) >@@ -148,12 +148,6 @@ > #define OFFLINE_ASM_ASSERT_ENABLED 0 > #endif > >-#if CPU(BIG_ENDIAN) >-#define OFFLINE_ASM_BIG_ENDIAN 1 >-#else >-#define OFFLINE_ASM_BIG_ENDIAN 0 >-#endif >- > #if LLINT_TRACING > #define OFFLINE_ASM_TRACING 1 > #else
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 132333
:
230367
|
230369
|
230475
|
311588
|
311689
|
311721
|
342072
|
342075
|
342697
|
360475
|
360479
|
360482