Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Issue 8491043: Allow linker initialization of lazy instance (Closed)

Created:
9 years, 1 month ago by joth
Modified:
9 years, 1 month ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, darin-cc_chromium.org, pam+watch_chromium.org, brettw-cc_chromium.org, tim (not reviewing), robertshield, amit, Raghu Simha, akalin, davemoore+watch_chromium.org, Paweł Hajdan Jr., dyu1, Aaron Boodman, jam
Visibility:
Public.

Description

Allow linker initialization of lazy instance Using the initializer list construct = {0} allows the object to be linker initialized. Modify the LazyInstance class design to make it a pod aggregate type that can be linker initialized this way. Also combines the instance and state members, in line with the Singleton<> class design. Introduces a new LAZY_INSTANCE_INITIALIZER macro specifically for using to init all lazy instances + modify all existing callsites to use it. (Old code would no longer compile) BUG=94925 TEST=existing tests pass. http://build.chromium.org/f/chromium/perf/linux-release/sizes/report.html?history=150&header=chrome-si&graph=chrome-si&rev=-1 should step downward. TBR=jam@chromium.org,rvargas@chromium.org,darin@chromium.org,ben@chromium.org,apatrick@chromium.org,akalin@chromium.org Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=110076

Patch Set 1 #

Patch Set 2 : fix win #

Patch Set 3 : fix CrOS #

Total comments: 14

Patch Set 4 : thakis comment, renamed LAZY_INSTANCE_INITIALIZER #

Total comments: 20

Patch Set 5 : review comments + rebase #

Total comments: 8

Patch Set 6 : willchan comments + rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+375 lines, -364 lines) Patch
M base/debug/trace_event.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/files/file_path_watcher_linux.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M base/i18n/number_formatting.cc View 1 2 3 1 chunk +4 lines, -2 lines 0 comments Download
M base/lazy_instance.h View 1 2 3 4 5 5 chunks +72 lines, -74 lines 0 comments Download
M base/lazy_instance.cc View 1 2 3 4 5 2 chunks +25 lines, -21 lines 0 comments Download
M base/lazy_instance_unittest.cc View 1 2 3 4 chunks +6 lines, -5 lines 0 comments Download
M base/mac/scoped_nsexception_enabler.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/message_loop.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M base/nix/mime_util_xdg.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M base/path_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/rand_util_posix.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/sys_info_chromeos.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/third_party/dmg_fp/dtoa_wrapper.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M base/threading/platform_thread_mac.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/threading/platform_thread_posix.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M base/threading/thread.cc View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M base/threading/thread_restrictions.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M base/threading/watchdog.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M base/threading/worker_pool_posix.cc View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M base/tracked_objects.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/app/chrome_main_delegate.cc View 1 2 3 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/browser/automation/automation_resource_message_filter.cc View 1 2 3 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/browser/chromeos/boot_times_loader.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/chrome_browser_main_chromeos.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/cros/onc_network_parser_unittest.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/cros_settings.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/extensions/input_method_event_router.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/login/ownership_service.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/screen_locker.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/signed_settings_helper.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/login/user_manager.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/system/udev_info_provider.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/web_socket_proxy_controller.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/wm_ipc.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/content_settings/tab_specific_content_settings.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/debugger/devtools_file_util.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/download/download_util.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/crx_installer.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_omnibox_api.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/extensions/extension_webnavigation_api.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/external_tab_container_win.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/internal_auth.cc View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/plugin_prefs.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/printing/printing_message_filter.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/resources_util.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/safe_browsing/malware_details.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/safe_browsing/safe_browsing_blocking_page.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/safe_browsing/safe_browsing_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/speech/speech_input_bubble.cc View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/speech/speech_input_extension_notification.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/spellchecker/spellcheck_profile.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/sync/util/sqlite_utils.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/tabs/pinned_tab_service_factory.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/translate/translate_manager.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/cocoa/view_id_util.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/panels/panel_manager.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/tab_contents/tab_contents_wrapper.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/views/omnibox/omnibox_view_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/chrome_url_data_manager_backend.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/constrained_html_ui.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/html_dialog_ui.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/print_preview_ui.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/web_ui_browsertest.cc View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M chrome/common/extensions/extension_message_bundle.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/common/profiling.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/common/time_format.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/default_plugin/install_dialog.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/installer/util/master_preferences.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/renderer/extensions/chrome_v8_extension.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M chrome/renderer/extensions/chrome_webstore_bindings.cc View 1 2 3 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/renderer/extensions/event_bindings.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/renderer/extensions/extension_helper.cc View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M chrome/renderer/extensions/miscellaneous_bindings.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/renderer/extensions/schema_generated_bindings.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/renderer/safe_browsing/phishing_classifier_delegate.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/service/cloud_print/cloud_print_token_store.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome_frame/chrome_frame_automation.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome_frame/com_type_info_holder.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome_frame/crash_reporting/crash_metrics.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome_frame/external_tab.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome_frame/metrics_service.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M chrome_frame/test/net/fake_external_tab.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M chrome_frame/urlmon_moniker.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome_frame/utils.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/browser_child_process_host.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/browser_thread_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/browsing_instance.cc View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/debugger/devtools_client_host.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/debugger/devtools_http_protocol_handler.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/debugger/render_view_devtools_agent_host.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/gpu/gpu_process_host.cc View 1 2 3 4 2 chunks +2 lines, -3 lines 0 comments Download
M content/browser/gpu/gpu_process_host_ui_shim.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/in_process_webkit/indexed_db_key_utility_client.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/mock_resource_context.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/net/url_request_slow_download_job.cc View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/notification_service_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/renderer_host/image_transport_client.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/renderer_host/java/java_bridge_channel_host.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_process_host.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/browser/speech/speech_input_dispatcher_host.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/common/net/url_fetcher_impl.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M content/common/np_channel_base.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/common/socket_stream_dispatcher.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/plugin/plugin_thread.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/public/renderer/render_thread.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/public/renderer/render_view_observer_tracker.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/public/utility/utility_thread.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/devtools_agent.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/renderer/gpu/renderer_gl_context.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/gpu/webgraphicscontext3d_command_buffer_impl.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/render_thread_impl.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/render_view_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M content/worker/worker_thread.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M crypto/nss_util.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M ipc/ipc_sync_channel.cc View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M jingle/glue/thread_wrapper.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M net/base/bandwidth_metrics.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/base/cert_database_nss_unittest.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/base/dns_reloader.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/ev_root_ca_metadata.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/mime_util.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/net_util.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M net/base/ssl_config_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/test_root_certs.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/test_root_certs_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/winsock_init.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/base/x509_certificate.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/base/x509_certificate_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/disk_cache/file_win.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/ocsp/nss_ocsp.cc View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M net/proxy/dhcpcsvc_init_win.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/socket/client_socket_factory.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/socket/dns_cert_provenance_checker.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/socket/nss_ssl_util.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket_mac.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/socket/ssl_client_socket_win.cc View 1 2 3 4 2 chunks +4 lines, -4 lines 0 comments Download
M net/third_party/mozilla_security_manager/nsPKCS12Blob.cpp View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M net/tools/fetch/fetch_client.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/url_request/url_request.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/url_request/url_request_test_job.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M net/websockets/websocket_job.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M printing/backend/print_backend_cups.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M printing/pdf_metafile_cg_mac.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M printing/printed_document.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M remoting/client/plugin/chromoting_instance.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M remoting/host/local_input_monitor_mac.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M remoting/host/local_input_monitor_thread_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M remoting/host/plugin/host_log_handler.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/leveldatabase/env_chromium.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/base/l10n/l10n_util_mac.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/base/l10n/l10n_util_win.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M ui/gfx/gl/gl_context.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/gl/gl_implementation_linux.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/gl/gl_surface.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/surface/accelerated_surface_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M webkit/blob/deletable_file_reference.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M webkit/glue/webkit_glue.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc View 1 2 3 4 3 chunks +6 lines, -6 lines 0 comments Download
M webkit/plugins/npapi/plugin_list.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M webkit/plugins/npapi/webplugin_delegate_impl_win.cc View 1 2 3 4 1 chunk +13 lines, -13 lines 0 comments Download
M webkit/plugins/npapi/webplugin_ime_win.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M webkit/plugins/ppapi/ppapi_interface_factory.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M webkit/tools/test_shell/simple_clipboard_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M webkit/tools/test_shell/test_shell_mac.mm View 1 2 3 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 27 (0 generated)
joth
thoughts on doing this: http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.h ? it reduces binary size by 14KB but not as ...
9 years, 1 month ago (2011-11-11 15:17:08 UTC) #1
willchan no longer on Chromium
On 2011/11/11 15:17:08, joth wrote: > thoughts on doing this: > http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.h ? > > ...
9 years, 1 month ago (2011-11-11 18:54:22 UTC) #2
joth
On 11 November 2011 18:54, <willchan@chromium.org> wrote: > On 2011/11/11 15:17:08, joth wrote: > >> ...
9 years, 1 month ago (2011-11-11 19:06:52 UTC) #3
Nico
I believe mark@ has an opinion on this. As far as I remember, the current ...
9 years, 1 month ago (2011-11-11 19:23:13 UTC) #4
Mark Mentovai
Yeah, if you move to gcc 4.6, the optimizer takes the stupidity away again. I ...
9 years, 1 month ago (2011-11-11 19:40:32 UTC) #5
joth
On 11 November 2011 19:40, <mark@chromium.org> wrote: > Yeah, if you move to gcc 4.6, ...
9 years, 1 month ago (2011-11-11 19:45:52 UTC) #6
willchan no longer on Chromium
I'm agreeable to this. I'll do a more detailed review shortly. On Fri, Nov 11, ...
9 years, 1 month ago (2011-11-11 19:50:56 UTC) #7
Mark Mentovai
Jonathan Dixon wrote: > +digit > So far we've found 4.6 hasn't fixed (on platform ...
9 years, 1 month ago (2011-11-11 19:51:55 UTC) #8
Nico
Another nice side effect is that clang's -Wglobal-constructor warning stops warning about lazy_instance with this ...
9 years, 1 month ago (2011-11-11 20:21:56 UTC) #9
joth
cool. I'll follow up on specific comments separately, but to this question.. On 11 November ...
9 years, 1 month ago (2011-11-11 20:43:34 UTC) #10
willchan no longer on Chromium
I skimmed it and things look fine. I'm going to wait for your rename before ...
9 years, 1 month ago (2011-11-11 21:12:47 UTC) #11
joth
http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.h File base/lazy_instance.h (right): http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.h#newcode171 base/lazy_instance.h:171: // Effectively private: member data is only public to ...
9 years, 1 month ago (2011-11-11 21:15:36 UTC) #12
joth
I've added in a CC: list. (I'm afraid git cl upload crashes with the cc ...
9 years, 1 month ago (2011-11-11 21:18:35 UTC) #13
M-A Ruel
Only nits, I'll defer formal approval to willchan but I'm fine with the code. http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.cc ...
9 years, 1 month ago (2011-11-11 21:34:06 UTC) #14
Mark Mentovai
http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h File base/lazy_instance.h (right): http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h#newcode48 base/lazy_instance.h:48: // LazyInstance uses it's on sruct initializer-list style static ...
9 years, 1 month ago (2011-11-11 21:38:08 UTC) #15
willchan no longer on Chromium
http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.cc File base/lazy_instance.cc (right): http://codereview.chromium.org/8491043/diff/2001/base/lazy_instance.cc#newcode25 base/lazy_instance.cc:25: state, 0, internal::kLazyInstanceStateCreating) == 0) Already within internal namespace, ...
9 years, 1 month ago (2011-11-11 22:18:21 UTC) #16
grt (UTC plus 2)
drive-by. you have my LGTM either way. http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h File base/lazy_instance.h (right): http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h#newcode51 base/lazy_instance.h:51: #define LAZY_INSTANCE_INITIALIZER ...
9 years, 1 month ago (2011-11-12 02:45:17 UTC) #17
joth
Thanks, will look at the specific changes Monday. On 11 November 2011 22:18, <willchan@chromium.org> wrote: ...
9 years, 1 month ago (2011-11-12 17:44:14 UTC) #18
joth
Thanks, PTAL. I've addressed all open comments except the state & instance pointer being combined ...
9 years, 1 month ago (2011-11-14 16:58:23 UTC) #19
willchan no longer on Chromium
I'm fine with your explanation of your design choices. Please update the changelist description though. ...
9 years, 1 month ago (2011-11-14 17:29:06 UTC) #20
grt (UTC plus 2)
still LGTM on my part. http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h File base/lazy_instance.h (right): http://codereview.chromium.org/8491043/diff/4003/base/lazy_instance.h#newcode51 base/lazy_instance.h:51: #define LAZY_INSTANCE_INITIALIZER {0} On ...
9 years, 1 month ago (2011-11-14 17:54:24 UTC) #21
joth
+OWNERS Thanks will, I plan to submit this once the try servers are green with ...
9 years, 1 month ago (2011-11-15 11:40:40 UTC) #22
joth
+ kerz. I just landed, and early signs are promising: http://build.chromium.org/p/chromium/builders/Linux/builds/17188 PERF_IMPROVE: chrome-si/initializers (40.74%) http://build.chromium.org/p/chromium/builders/Linux/builds/17187/steps/sizes/logs/stdio ...
9 years, 1 month ago (2011-11-15 14:04:15 UTC) #23
Mark Mentovai
LGTM for base OWNERS review (except I hate when people write “we” or ”our” in ...
9 years, 1 month ago (2011-11-15 14:26:06 UTC) #24
M-A Ruel
On 2011/11/15 14:26:06, Mark Mentovai wrote: > (except I hate when people write “we” or ...
9 years, 1 month ago (2011-11-15 14:31:34 UTC) #25
Mark Mentovai
maruel@chromium.org wrote: > I also hate "I" in comments but "I" do it all the ...
9 years, 1 month ago (2011-11-15 14:32:40 UTC) #26
joth
9 years, 1 month ago (2011-11-15 14:41:27 UTC) #27
On 15 November 2011 14:26, <mark@chromium.org> wrote:

> LGTM for base OWNERS review
>
> Thanks! (I'd also taken willchan's as covering base, sorry I didn't call
areas out specifically)


> (except I hate when people write “we” or ”our” in comments.)
>
> Yes, we do generally try and avoid that when we write original comments --
in our defense, "Our AtomicWord doubles as a spinlock" etc were lifted from
Singleton.

Powered by Google App Engine
This is Rietveld 408576698