Summary: | Refactoring LLInt::Data to be a singleton | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Mark Lam <mark.lam> | ||||||||
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | barraclough, dglazkov, fpizlo, ggaren, webkit.review.bot | ||||||||
Priority: | P2 | ||||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Attachments: |
|
Description
Mark Lam
2012-08-29 02:37:08 PDT
Created attachment 161189 [details]
Fix.
Comment on attachment 161189 [details] Fix. Attachment 161189 [details] did not pass efl-ews (efl): Output: http://queues.webkit.org/results/13687197 Comment on attachment 161189 [details] Fix. Attachment 161189 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/13688184 Comment on attachment 161189 [details] Fix. Attachment 161189 [details] did not pass qt-wk2-ews (qt): Output: http://queues.webkit.org/results/13686170 Created attachment 161195 [details]
Fixed typo.
Comment on attachment 161195 [details] Fixed typo. View in context: https://bugs.webkit.org/attachment.cgi?id=161195&action=review Looks good to me. I have one edit I'd like to see before marking this r+. > Source/JavaScriptCore/llint/LLIntData.cpp:44 > + if (!Data::s_isInitialized) { Please remove s_isInitialized and this test of it. This test is neither necessary nor sufficient for a thread-safe singleton. It isn't necessary because you're using the initializeThreading() hook to ensure a thread-safe singleton. It isn't sufficient because this branch isn't guarded by a lock. Side note about WebKit style: When we do use checks like this, we prefer "if (!condition) { early return }" style, to reduce the amount of indentation in a function. Created attachment 161237 [details]
Removed s_isInitialized and its references.
Comment on attachment 161237 [details]
Removed s_isInitialized and its references.
r=me
Comment on attachment 161237 [details] Removed s_isInitialized and its references. Attachment 161237 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/13695333 New failing tests: CCLayerTreeHostTestAtomicCommitWithPartialUpdate.runMultiThread Comment on attachment 161237 [details]
Removed s_isInitialized and its references.
cq+ again because this patch did not break the cr-linux bot, it was already broken.
Comment on attachment 161237 [details] Removed s_isInitialized and its references. Rejecting attachment 161237 [details] from commit-queue. New failing tests: CCLayerTreeHostTestAtomicCommitWithPartialUpdate.runMultiThread Full output: http://queues.webkit.org/results/13685512 Landed in r127068. This is a JSC change, so the EWS failure on chromium must be a flake. |