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

Side by Side Diff: chrome/app/chrome_exe_main_gtk.cc

Issue 399081: Enable TCMalloc on Linux by default. (Closed)
Patch Set: Oops, remove unintended change. Created 11 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « build/common.gypi ('k') | chrome/chrome.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/at_exit.h" 5 #include "base/at_exit.h"
6 #include "base/process_util.h" 6 #include "base/process_util.h"
7 7
8 // The entry point for all invocations of Chromium, browser and renderer. On 8 // The entry point for all invocations of Chromium, browser and renderer. On
9 // windows, this does nothing but load chrome.dll and invoke its entry point in 9 // windows, this does nothing but load chrome.dll and invoke its entry point in
10 // order to make it easy to update the app from GoogleUpdate. We don't need 10 // order to make it easy to update the app from GoogleUpdate. We don't need
11 // that extra layer with on linux. 11 // that extra layer with on linux.
12 // 12 //
13 // TODO(tc): This is similar to chrome_exe_main.mm. After it's more clear what 13 // TODO(tc): This is similar to chrome_exe_main.mm. After it's more clear what
14 // needs to go here, we should evaluate whether or not to merge this file with 14 // needs to go here, we should evaluate whether or not to merge this file with
15 // chrome_exe_main.mm. 15 // chrome_exe_main.mm.
16 16
17 extern "C" { 17 extern "C" {
18 int ChromeMain(int argc, const char** argv); 18 int ChromeMain(int argc, const char** argv);
19
20 #if defined(LINUX_USE_TCMALLOC)
21
22 int tc_set_new_mode(int mode);
23
24 #endif // defined(LINUX_USE_TCMALLOC)
25
19 } 26 }
20 27
21 int main(int argc, const char** argv) { 28 int main(int argc, const char** argv) {
22 base::EnableTerminationOnHeapCorruption(); 29 base::EnableTerminationOnHeapCorruption();
23 base::EnableTerminationOnOutOfMemory(); 30 base::EnableTerminationOnOutOfMemory();
24 31
32 // NOTE(willchan): One might ask why this call is done here rather than in
33 // process_util_linux.cc with the definition of
34 // EnableTerminationOnOutOfMemory(). That's because base shouldn't have a
35 // dependency on TCMalloc. Really, we ought to have our allocator shim code
36 // implement this EnableTerminationOnOutOfMemory() function. Whateverz. This
37 // works for now.
38 #if defined(LINUX_USE_TCMALLOC)
39 // For tcmalloc, we need to tell it to behave like new.
40 tc_set_new_mode(1);
41 #endif
42
25 // The exit manager is in charge of calling the dtors of singletons. 43 // The exit manager is in charge of calling the dtors of singletons.
26 // Win has one here, but we assert with multiples from BrowserMain() if we 44 // Win has one here, but we assert with multiples from BrowserMain() if we
27 // keep it. 45 // keep it.
28 // base::AtExitManager exit_manager; 46 // base::AtExitManager exit_manager;
29 47
30 #if defined(GOOGLE_CHROME_BUILD) 48 #if defined(GOOGLE_CHROME_BUILD)
31 // TODO(tc): init crash reporter 49 // TODO(tc): init crash reporter
32 #endif 50 #endif
33 51
34 return ChromeMain(argc, argv); 52 return ChromeMain(argc, argv);
35 } 53 }
OLDNEW
« no previous file with comments | « build/common.gypi ('k') | chrome/chrome.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698