WebKit Bugzilla
Attachment 347335 Details for
Bug 188686
: [JSC] alignas for RegisterState should respect alignof(RegisterState) too
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-188686-20180817111546.patch (text/plain), 1.69 KB, created by
Yusuke Suzuki
on 2018-08-16 19:15:47 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Yusuke Suzuki
Created:
2018-08-16 19:15:47 PDT
Size:
1.69 KB
patch
obsolete
>Subversion Revision: 234932 >diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index b3c3b01162a7a1acb96702630a036cf42115a4bf..8a37d644e3134b9361d081932fe6badfa2f38c39 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,15 @@ >+2018-08-16 Yusuke Suzuki <yusukesuzuki@slowstart.org> >+ >+ [JSC] alignas for RegisterState should respect alignas(RegisterState) too >+ https://bugs.webkit.org/show_bug.cgi?id=188686 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ RegisterState would have larger alignment than `alignof(void*)`. We use the larger alignment value >+ for `alignof` for RegisterState. >+ >+ * heap/RegisterState.h: >+ > 2018-08-14 Yusuke Suzuki <yusukesuzuki@slowstart.org> > > [YARR] Align allocation size in BumpPointerAllocator with sizeof(void*) >diff --git a/Source/JavaScriptCore/heap/RegisterState.h b/Source/JavaScriptCore/heap/RegisterState.h >index e5c056a1206c1744364c3843930a84f0a28f30b4..baaef4c7857be85413804448ec87951db3f20989 100644 >--- a/Source/JavaScriptCore/heap/RegisterState.h >+++ b/Source/JavaScriptCore/heap/RegisterState.h >@@ -164,14 +164,13 @@ using RegisterState = jmp_buf; > #if COMPILER(MSVC) > #pragma warning(push) > #pragma warning(disable: 4611) >+#endif > #define ALLOCATE_AND_GET_REGISTER_STATE(registers) \ >- alignas(void*) RegisterState registers; \ >+ alignas(std::max(alignof(void*), alignof(RegisterState))) RegisterState registers; \ > setjmp(registers) >+ >+#if COMPILER(MSVC) > #pragma warning(pop) >-#else >-#define ALLOCATE_AND_GET_REGISTER_STATE(registers) \ >- alignas(void*) RegisterState registers; \ >- setjmp(registers) > #endif > #endif // ALLOCATE_AND_GET_REGISTER_STATE >
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 188686
:
347335
|
347336