| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // Workaround for crosbug:629593. Using AFDO on the tcmalloc files is | 5 // Workaround for crosbug:629593. Using AFDO on the tcmalloc files is |
| 6 // causing problems. The tcmalloc files depend on stack layouts and | 6 // causing problems. The tcmalloc files depend on stack layouts and |
| 7 // AFDO can mess with them. Better not to use AFDO there. This is a | 7 // AFDO can mess with them. Better not to use AFDO there. This is a |
| 8 // temporary hack. We will add a mechanism in the build system to | 8 // temporary hack. We will add a mechanism in the build system to |
| 9 // avoid using -fauto-profile for tcmalloc files. | 9 // avoid using -fauto-profile for tcmalloc files. |
| 10 #if !defined(__clang__) | 10 #if !defined(__clang__) && (defined(OS_CHROMEOS) || __GNUC__ > 5) |
| 11 // Note that this option only seems to be available in the chromeos GCC 4.9 |
| 12 // toolchain, and stock GCC 5 and up. |
| 11 #pragma GCC optimize ("no-auto-profile") | 13 #pragma GCC optimize ("no-auto-profile") |
| 12 #endif | 14 #endif |
| 13 | 15 |
| 14 #if defined(TCMALLOC_FOR_DEBUGALLOCATION) | 16 #if defined(TCMALLOC_FOR_DEBUGALLOCATION) |
| 15 #include "third_party/tcmalloc/chromium/src/debugallocation.cc" | 17 #include "third_party/tcmalloc/chromium/src/debugallocation.cc" |
| 16 #else | 18 #else |
| 17 #include "third_party/tcmalloc/chromium/src/tcmalloc.cc" | 19 #include "third_party/tcmalloc/chromium/src/tcmalloc.cc" |
| 18 #endif | 20 #endif |
| OLD | NEW |