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

Side by Side Diff: base/allocator/allocator.gyp

Issue 774683003: Remove tcmalloc when not being used. Restore shim on Windows. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add realloc death test. nits. Created 5 years, 11 months 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 | « no previous file | base/allocator/allocator_shim.h » ('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) 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 { 5 {
6 'target_defaults': { 6 'target_defaults': {
7 'variables': { 7 'variables': {
8 # This code gets run a lot and debugged rarely, so it should be fast 8 # This code gets run a lot and debugged rarely, so it should be fast
9 # by default. See http://crbug.com/388949. 9 # by default. See http://crbug.com/388949.
10 'debug_optimize': '2', 10 'debug_optimize': '2',
(...skipping 11 matching lines...) Expand all
22 # allocator target; only the application (the final executable) 22 # allocator target; only the application (the final executable)
23 # knows what allocator makes sense. 23 # knows what allocator makes sense.
24 { 24 {
25 'target_name': 'allocator', 25 'target_name': 'allocator',
26 'type': 'static_library', 26 'type': 'static_library',
27 # Make sure the allocation library is optimized to 27 # Make sure the allocation library is optimized to
28 # the hilt in official builds. 28 # the hilt in official builds.
29 'variables': { 29 'variables': {
30 'optimize': 'max', 30 'optimize': 'max',
31 }, 31 },
32 'include_dirs': [
33 '.',
34 '<(tcmalloc_dir)/src/base',
35 '<(tcmalloc_dir)/src',
36 '../..',
37 ],
38 'direct_dependent_settings': { 32 'direct_dependent_settings': {
39 'configurations': { 33 'configurations': {
40 'Common_Base': { 34 'Common_Base': {
41 'msvs_settings': { 35 'msvs_settings': {
42 'VCLinkerTool': { 36 'VCLinkerTool': {
43 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'], 37 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'],
44 'AdditionalDependencies': [ 38 'AdditionalDependencies': [
45 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib' 39 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib'
46 ], 40 ],
47 }, 41 },
48 }, 42 },
49 }, 43 },
50 }, 44 },
51 'conditions': [ 45 'conditions': [
52 ['OS=="win"', { 46 ['OS=="win"', {
53 'defines': [ 47 'defines': [
54 'PERFTOOLS_DLL_DECL=', 48 'PERFTOOLS_DLL_DECL=',
55 ], 49 ],
56 }], 50 }],
57 ], 51 ],
58 }, 52 },
59 'sources': [
60 # Generated for our configuration from tcmalloc's build
61 # and checked in.
62 '<(tcmalloc_dir)/src/config.h',
63 '<(tcmalloc_dir)/src/config_android.h',
64 '<(tcmalloc_dir)/src/config_linux.h',
65 '<(tcmalloc_dir)/src/config_win.h',
66
67 # all tcmalloc native and forked files
68 '<(tcmalloc_dir)/src/addressmap-inl.h',
69 '<(tcmalloc_dir)/src/base/abort.cc',
70 '<(tcmalloc_dir)/src/base/abort.h',
71 '<(tcmalloc_dir)/src/base/arm_instruction_set_select.h',
72 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
73 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-generic.h',
74 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-v6plus.h',
75 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
76 '<(tcmalloc_dir)/src/base/atomicops-internals-windows.h',
77 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc',
78 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
79 '<(tcmalloc_dir)/src/base/atomicops.h',
80 '<(tcmalloc_dir)/src/base/basictypes.h',
81 '<(tcmalloc_dir)/src/base/commandlineflags.h',
82 '<(tcmalloc_dir)/src/base/cycleclock.h',
83 # We don't list dynamic_annotations.c since its copy is already
84 # present in the dynamic_annotations target.
85 '<(tcmalloc_dir)/src/base/dynamic_annotations.h',
86 '<(tcmalloc_dir)/src/base/elf_mem_image.cc',
87 '<(tcmalloc_dir)/src/base/elf_mem_image.h',
88 '<(tcmalloc_dir)/src/base/elfcore.h',
89 '<(tcmalloc_dir)/src/base/googleinit.h',
90 '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
91 '<(tcmalloc_dir)/src/base/linuxthreads.cc',
92 '<(tcmalloc_dir)/src/base/linuxthreads.h',
93 '<(tcmalloc_dir)/src/base/logging.cc',
94 '<(tcmalloc_dir)/src/base/logging.h',
95 '<(tcmalloc_dir)/src/base/low_level_alloc.cc',
96 '<(tcmalloc_dir)/src/base/low_level_alloc.h',
97 '<(tcmalloc_dir)/src/base/simple_mutex.h',
98 '<(tcmalloc_dir)/src/base/spinlock.cc',
99 '<(tcmalloc_dir)/src/base/spinlock.h',
100 '<(tcmalloc_dir)/src/base/spinlock_internal.cc',
101 '<(tcmalloc_dir)/src/base/spinlock_internal.h',
102 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
103 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
104 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
105 '<(tcmalloc_dir)/src/base/stl_allocator.h',
106 '<(tcmalloc_dir)/src/base/synchronization_profiling.h',
107 '<(tcmalloc_dir)/src/base/sysinfo.cc',
108 '<(tcmalloc_dir)/src/base/sysinfo.h',
109 '<(tcmalloc_dir)/src/base/thread_annotations.h',
110 '<(tcmalloc_dir)/src/base/thread_lister.c',
111 '<(tcmalloc_dir)/src/base/thread_lister.h',
112 '<(tcmalloc_dir)/src/base/vdso_support.cc',
113 '<(tcmalloc_dir)/src/base/vdso_support.h',
114 '<(tcmalloc_dir)/src/central_freelist.cc',
115 '<(tcmalloc_dir)/src/central_freelist.h',
116 '<(tcmalloc_dir)/src/common.cc',
117 '<(tcmalloc_dir)/src/common.h',
118 '<(tcmalloc_dir)/src/debugallocation.cc',
119 '<(tcmalloc_dir)/src/deep-heap-profile.cc',
120 '<(tcmalloc_dir)/src/deep-heap-profile.h',
121 '<(tcmalloc_dir)/src/free_list.cc',
122 '<(tcmalloc_dir)/src/free_list.h',
123 '<(tcmalloc_dir)/src/getpc.h',
124 '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
125 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
126 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
127 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
128 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
129 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
130 '<(tcmalloc_dir)/src/gperftools/profiler.h',
131 '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
132 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
133 '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
134 '<(tcmalloc_dir)/src/heap-checker.cc',
135 '<(tcmalloc_dir)/src/heap-profile-table.cc',
136 '<(tcmalloc_dir)/src/heap-profile-table.h',
137 '<(tcmalloc_dir)/src/heap-profiler.cc',
138 '<(tcmalloc_dir)/src/internal_logging.cc',
139 '<(tcmalloc_dir)/src/internal_logging.h',
140 '<(tcmalloc_dir)/src/libc_override.h',
141 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
142 '<(tcmalloc_dir)/src/libc_override_glibc.h',
143 '<(tcmalloc_dir)/src/libc_override_osx.h',
144 '<(tcmalloc_dir)/src/libc_override_redefine.h',
145 '<(tcmalloc_dir)/src/linked_list.h',
146 '<(tcmalloc_dir)/src/malloc_extension.cc',
147 '<(tcmalloc_dir)/src/malloc_hook-inl.h',
148 '<(tcmalloc_dir)/src/malloc_hook.cc',
149 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
150 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
151 '<(tcmalloc_dir)/src/maybe_threads.cc',
152 '<(tcmalloc_dir)/src/maybe_threads.h',
153 '<(tcmalloc_dir)/src/memfs_malloc.cc',
154 '<(tcmalloc_dir)/src/memory_region_map.cc',
155 '<(tcmalloc_dir)/src/memory_region_map.h',
156 '<(tcmalloc_dir)/src/packed-cache-inl.h',
157 '<(tcmalloc_dir)/src/page_heap.cc',
158 '<(tcmalloc_dir)/src/page_heap.h',
159 '<(tcmalloc_dir)/src/page_heap_allocator.h',
160 '<(tcmalloc_dir)/src/pagemap.h',
161 '<(tcmalloc_dir)/src/profile-handler.cc',
162 '<(tcmalloc_dir)/src/profile-handler.h',
163 '<(tcmalloc_dir)/src/profiledata.cc',
164 '<(tcmalloc_dir)/src/profiledata.h',
165 '<(tcmalloc_dir)/src/profiler.cc',
166 '<(tcmalloc_dir)/src/raw_printer.cc',
167 '<(tcmalloc_dir)/src/raw_printer.h',
168 '<(tcmalloc_dir)/src/sampler.cc',
169 '<(tcmalloc_dir)/src/sampler.h',
170 '<(tcmalloc_dir)/src/span.cc',
171 '<(tcmalloc_dir)/src/span.h',
172 '<(tcmalloc_dir)/src/stack_trace_table.cc',
173 '<(tcmalloc_dir)/src/stack_trace_table.h',
174 '<(tcmalloc_dir)/src/stacktrace.cc',
175 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
176 '<(tcmalloc_dir)/src/stacktrace_config.h',
177 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
178 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
179 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
180 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
181 '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
182 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
183 '<(tcmalloc_dir)/src/static_vars.cc',
184 '<(tcmalloc_dir)/src/static_vars.h',
185 '<(tcmalloc_dir)/src/symbolize.cc',
186 '<(tcmalloc_dir)/src/symbolize.h',
187 '<(tcmalloc_dir)/src/system-alloc.cc',
188 '<(tcmalloc_dir)/src/system-alloc.h',
189 '<(tcmalloc_dir)/src/tcmalloc.cc',
190 '<(tcmalloc_dir)/src/tcmalloc_guard.h',
191 '<(tcmalloc_dir)/src/thread_cache.cc',
192 '<(tcmalloc_dir)/src/thread_cache.h',
193 '<(tcmalloc_dir)/src/windows/config.h',
194 '<(tcmalloc_dir)/src/windows/get_mangled_names.cc',
195 '<(tcmalloc_dir)/src/windows/gperftools/tcmalloc.h',
196 '<(tcmalloc_dir)/src/windows/ia32_modrm_map.cc',
197 '<(tcmalloc_dir)/src/windows/ia32_opcode_map.cc',
198 '<(tcmalloc_dir)/src/windows/mingw.h',
199 '<(tcmalloc_dir)/src/windows/mini_disassembler.cc',
200 '<(tcmalloc_dir)/src/windows/mini_disassembler.h',
201 '<(tcmalloc_dir)/src/windows/mini_disassembler_types.h',
202 '<(tcmalloc_dir)/src/windows/override_functions.cc',
203 '<(tcmalloc_dir)/src/windows/patch_functions.cc',
204 '<(tcmalloc_dir)/src/windows/port.cc',
205 '<(tcmalloc_dir)/src/windows/port.h',
206 '<(tcmalloc_dir)/src/windows/preamble_patcher.cc',
207 '<(tcmalloc_dir)/src/windows/preamble_patcher.h',
208 '<(tcmalloc_dir)/src/windows/preamble_patcher_with_stub.cc',
209
210 'allocator_shim.cc',
211 'allocator_shim.h',
212 'debugallocation_shim.cc',
213 'generic_allocators.cc',
214 'win_allocator.cc',
215 ],
216 # sources! means that these are not compiled directly.
217 'sources!': [
218 # Included by allocator_shim.cc for maximal inlining.
219 'generic_allocators.cc',
220 'win_allocator.cc',
221
222 # Included by debugallocation_shim.cc.
223 '<(tcmalloc_dir)/src/debugallocation.cc',
224 '<(tcmalloc_dir)/src/tcmalloc.cc',
225
226 # We simply don't use these, but list them above so that IDE
227 # users can view the full available source for reference, etc.
228 '<(tcmalloc_dir)/src/addressmap-inl.h',
229 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
230 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
231 '<(tcmalloc_dir)/src/base/atomicops-internals-x86-msvc.h',
232 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc',
233 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
234 '<(tcmalloc_dir)/src/base/atomicops.h',
235 '<(tcmalloc_dir)/src/base/basictypes.h',
236 '<(tcmalloc_dir)/src/base/commandlineflags.h',
237 '<(tcmalloc_dir)/src/base/cycleclock.h',
238 '<(tcmalloc_dir)/src/base/elf_mem_image.h',
239 '<(tcmalloc_dir)/src/base/elfcore.h',
240 '<(tcmalloc_dir)/src/base/googleinit.h',
241 '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
242 '<(tcmalloc_dir)/src/base/simple_mutex.h',
243 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
244 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
245 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
246 '<(tcmalloc_dir)/src/base/stl_allocator.h',
247 '<(tcmalloc_dir)/src/base/thread_annotations.h',
248 '<(tcmalloc_dir)/src/getpc.h',
249 '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
250 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
251 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
252 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
253 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
254 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
255 '<(tcmalloc_dir)/src/gperftools/profiler.h',
256 '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
257 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
258 '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
259 '<(tcmalloc_dir)/src/heap-checker.cc',
260 '<(tcmalloc_dir)/src/libc_override.h',
261 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
262 '<(tcmalloc_dir)/src/libc_override_glibc.h',
263 '<(tcmalloc_dir)/src/libc_override_osx.h',
264 '<(tcmalloc_dir)/src/libc_override_redefine.h',
265 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
266 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
267 '<(tcmalloc_dir)/src/memfs_malloc.cc',
268 '<(tcmalloc_dir)/src/packed-cache-inl.h',
269 '<(tcmalloc_dir)/src/page_heap_allocator.h',
270 '<(tcmalloc_dir)/src/pagemap.h',
271 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
272 '<(tcmalloc_dir)/src/stacktrace_config.h',
273 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
274 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
275 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
276 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
277 '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
278 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
279 '<(tcmalloc_dir)/src/tcmalloc_guard.h',
280 '<(tcmalloc_dir)/src/windows/config.h',
281 '<(tcmalloc_dir)/src/windows/gperftools/tcmalloc.h',
282 '<(tcmalloc_dir)/src/windows/get_mangled_names.cc',
283 '<(tcmalloc_dir)/src/windows/ia32_modrm_map.cc',
284 '<(tcmalloc_dir)/src/windows/ia32_opcode_map.cc',
285 '<(tcmalloc_dir)/src/windows/mingw.h',
286 '<(tcmalloc_dir)/src/windows/mini_disassembler.cc',
287 '<(tcmalloc_dir)/src/windows/mini_disassembler.h',
288 '<(tcmalloc_dir)/src/windows/mini_disassembler_types.h',
289 '<(tcmalloc_dir)/src/windows/override_functions.cc',
290 '<(tcmalloc_dir)/src/windows/patch_functions.cc',
291 '<(tcmalloc_dir)/src/windows/preamble_patcher.cc',
292 '<(tcmalloc_dir)/src/windows/preamble_patcher.h',
293 '<(tcmalloc_dir)/src/windows/preamble_patcher_with_stub.cc',
294 ],
295 'dependencies': [ 53 'dependencies': [
296 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_anno tations', 54 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_anno tations',
297 ], 55 ],
298 'msvs_settings': { 56 'msvs_settings': {
299 # TODO(sgk): merge this with build/common.gypi settings 57 # TODO(sgk): merge this with build/common.gypi settings
300 'VCLibrarianTool': { 58 'VCLibrarianTool': {
301 'AdditionalOptions': ['/ignore:4006,4221'], 59 'AdditionalOptions': ['/ignore:4006,4221'],
302 }, 60 },
303 'VCLinkerTool': { 61 'VCLinkerTool': {
304 'AdditionalOptions': ['/ignore:4006'], 62 'AdditionalOptions': ['/ignore:4006'],
305 }, 63 },
306 }, 64 },
307 'configurations': { 65 'configurations': {
308 'Debug_Base': { 66 'Debug_Base': {
309 'msvs_settings': { 67 'msvs_settings': {
310 'VCCLCompilerTool': { 68 'VCCLCompilerTool': {
311 'RuntimeLibrary': '0', 69 'RuntimeLibrary': '0',
312 }, 70 },
313 }, 71 },
314 'variables': { 72 'variables': {
315 # Provide a way to force disable debugallocation in Debug builds, 73 # Provide a way to force disable debugallocation in Debug builds,
316 # e.g. for profiling (it's more rare to profile Debug builds, 74 # e.g. for profiling (it's more rare to profile Debug builds,
317 # but people sometimes need to do that). 75 # but people sometimes need to do that).
318 'disable_debugallocation%': 0, 76 'disable_debugallocation%': 0,
319 }, 77 },
320 'conditions': [ 78 'conditions': [
321 # TODO(phajdan.jr): Also enable on Windows. 79 ['disable_debugallocation==0', {
322 ['disable_debugallocation==0 and OS!="win"', {
323 'defines': [ 80 'defines': [
324 # Use debugallocation for Debug builds to catch problems early 81 # Use debugallocation for Debug builds to catch problems early
325 # and cleanly, http://crbug.com/30715 . 82 # and cleanly, http://crbug.com/30715 .
326 'TCMALLOC_FOR_DEBUGALLOCATION', 83 'TCMALLOC_FOR_DEBUGALLOCATION',
327 ], 84 ],
328 }], 85 }],
329 ], 86 ],
330 }, 87 },
331 }, 88 },
332 # Disable the heap checker in tcmalloc.
333 'defines': [
334 'NO_HEAP_CHECK',
335 ],
336 'conditions': [ 89 'conditions': [
90 ['use_allocator=="tcmalloc"', {
91 # Disable the heap checker in tcmalloc.
92 'defines': [
93 'NO_HEAP_CHECK',
94 ],
95 'include_dirs': [
96 '.',
97 '<(tcmalloc_dir)/src/base',
98 '<(tcmalloc_dir)/src',
99 '../..',
100 ],
101 'sources': [
102 # Generated for our configuration from tcmalloc's build
103 # and checked in.
104 '<(tcmalloc_dir)/src/config.h',
105 '<(tcmalloc_dir)/src/config_android.h',
106 '<(tcmalloc_dir)/src/config_linux.h',
107 '<(tcmalloc_dir)/src/config_win.h',
108
109 # all tcmalloc native and forked files
110 '<(tcmalloc_dir)/src/addressmap-inl.h',
111 '<(tcmalloc_dir)/src/base/abort.cc',
112 '<(tcmalloc_dir)/src/base/abort.h',
113 '<(tcmalloc_dir)/src/base/arm_instruction_set_select.h',
114 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
115 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-generic.h',
116 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-v6plus.h',
117 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
118 '<(tcmalloc_dir)/src/base/atomicops-internals-windows.h',
119 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc',
120 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
121 '<(tcmalloc_dir)/src/base/atomicops.h',
122 '<(tcmalloc_dir)/src/base/basictypes.h',
123 '<(tcmalloc_dir)/src/base/commandlineflags.h',
124 '<(tcmalloc_dir)/src/base/cycleclock.h',
125 # We don't list dynamic_annotations.c since its copy is already
126 # present in the dynamic_annotations target.
127 '<(tcmalloc_dir)/src/base/dynamic_annotations.h',
128 '<(tcmalloc_dir)/src/base/elf_mem_image.cc',
129 '<(tcmalloc_dir)/src/base/elf_mem_image.h',
130 '<(tcmalloc_dir)/src/base/elfcore.h',
131 '<(tcmalloc_dir)/src/base/googleinit.h',
132 '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
133 '<(tcmalloc_dir)/src/base/linuxthreads.cc',
134 '<(tcmalloc_dir)/src/base/linuxthreads.h',
135 '<(tcmalloc_dir)/src/base/logging.cc',
136 '<(tcmalloc_dir)/src/base/logging.h',
137 '<(tcmalloc_dir)/src/base/low_level_alloc.cc',
138 '<(tcmalloc_dir)/src/base/low_level_alloc.h',
139 '<(tcmalloc_dir)/src/base/simple_mutex.h',
140 '<(tcmalloc_dir)/src/base/spinlock.cc',
141 '<(tcmalloc_dir)/src/base/spinlock.h',
142 '<(tcmalloc_dir)/src/base/spinlock_internal.cc',
143 '<(tcmalloc_dir)/src/base/spinlock_internal.h',
144 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
145 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
146 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
147 '<(tcmalloc_dir)/src/base/stl_allocator.h',
148 '<(tcmalloc_dir)/src/base/synchronization_profiling.h',
149 '<(tcmalloc_dir)/src/base/sysinfo.cc',
150 '<(tcmalloc_dir)/src/base/sysinfo.h',
151 '<(tcmalloc_dir)/src/base/thread_annotations.h',
152 '<(tcmalloc_dir)/src/base/thread_lister.c',
153 '<(tcmalloc_dir)/src/base/thread_lister.h',
154 '<(tcmalloc_dir)/src/base/vdso_support.cc',
155 '<(tcmalloc_dir)/src/base/vdso_support.h',
156 '<(tcmalloc_dir)/src/central_freelist.cc',
157 '<(tcmalloc_dir)/src/central_freelist.h',
158 '<(tcmalloc_dir)/src/common.cc',
159 '<(tcmalloc_dir)/src/common.h',
160 '<(tcmalloc_dir)/src/debugallocation.cc',
161 '<(tcmalloc_dir)/src/deep-heap-profile.cc',
162 '<(tcmalloc_dir)/src/deep-heap-profile.h',
163 '<(tcmalloc_dir)/src/free_list.cc',
164 '<(tcmalloc_dir)/src/free_list.h',
165 '<(tcmalloc_dir)/src/getpc.h',
166 '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
167 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
168 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
169 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
170 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
171 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
172 '<(tcmalloc_dir)/src/gperftools/profiler.h',
173 '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
174 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
175 '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
176 '<(tcmalloc_dir)/src/heap-checker.cc',
177 '<(tcmalloc_dir)/src/heap-profile-table.cc',
178 '<(tcmalloc_dir)/src/heap-profile-table.h',
179 '<(tcmalloc_dir)/src/heap-profiler.cc',
180 '<(tcmalloc_dir)/src/internal_logging.cc',
181 '<(tcmalloc_dir)/src/internal_logging.h',
182 '<(tcmalloc_dir)/src/libc_override.h',
183 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
184 '<(tcmalloc_dir)/src/libc_override_glibc.h',
185 '<(tcmalloc_dir)/src/libc_override_osx.h',
186 '<(tcmalloc_dir)/src/libc_override_redefine.h',
187 '<(tcmalloc_dir)/src/linked_list.h',
188 '<(tcmalloc_dir)/src/malloc_extension.cc',
189 '<(tcmalloc_dir)/src/malloc_hook-inl.h',
190 '<(tcmalloc_dir)/src/malloc_hook.cc',
191 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
192 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
193 '<(tcmalloc_dir)/src/maybe_threads.cc',
194 '<(tcmalloc_dir)/src/maybe_threads.h',
195 '<(tcmalloc_dir)/src/memfs_malloc.cc',
196 '<(tcmalloc_dir)/src/memory_region_map.cc',
197 '<(tcmalloc_dir)/src/memory_region_map.h',
198 '<(tcmalloc_dir)/src/packed-cache-inl.h',
199 '<(tcmalloc_dir)/src/page_heap.cc',
200 '<(tcmalloc_dir)/src/page_heap.h',
201 '<(tcmalloc_dir)/src/page_heap_allocator.h',
202 '<(tcmalloc_dir)/src/pagemap.h',
203 '<(tcmalloc_dir)/src/profile-handler.cc',
204 '<(tcmalloc_dir)/src/profile-handler.h',
205 '<(tcmalloc_dir)/src/profiledata.cc',
206 '<(tcmalloc_dir)/src/profiledata.h',
207 '<(tcmalloc_dir)/src/profiler.cc',
208 '<(tcmalloc_dir)/src/raw_printer.cc',
209 '<(tcmalloc_dir)/src/raw_printer.h',
210 '<(tcmalloc_dir)/src/sampler.cc',
211 '<(tcmalloc_dir)/src/sampler.h',
212 '<(tcmalloc_dir)/src/span.cc',
213 '<(tcmalloc_dir)/src/span.h',
214 '<(tcmalloc_dir)/src/stack_trace_table.cc',
215 '<(tcmalloc_dir)/src/stack_trace_table.h',
216 '<(tcmalloc_dir)/src/stacktrace.cc',
217 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
218 '<(tcmalloc_dir)/src/stacktrace_config.h',
219 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
220 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
221 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
222 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
223 '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
224 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
225 '<(tcmalloc_dir)/src/static_vars.cc',
226 '<(tcmalloc_dir)/src/static_vars.h',
227 '<(tcmalloc_dir)/src/symbolize.cc',
228 '<(tcmalloc_dir)/src/symbolize.h',
229 '<(tcmalloc_dir)/src/system-alloc.cc',
230 '<(tcmalloc_dir)/src/system-alloc.h',
231 '<(tcmalloc_dir)/src/tcmalloc.cc',
232 '<(tcmalloc_dir)/src/tcmalloc_guard.h',
233 '<(tcmalloc_dir)/src/thread_cache.cc',
234 '<(tcmalloc_dir)/src/thread_cache.h',
235
236 'debugallocation_shim.cc',
237 ],
238 # sources! means that these are not compiled directly.
239 'sources!': [
240 # We simply don't use these, but list them above so that IDE
241 # users can view the full available source for reference, etc.
242 '<(tcmalloc_dir)/src/addressmap-inl.h',
243 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
244 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
245 '<(tcmalloc_dir)/src/base/atomicops-internals-x86-msvc.h',
246 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
247 '<(tcmalloc_dir)/src/base/atomicops.h',
248 '<(tcmalloc_dir)/src/base/basictypes.h',
249 '<(tcmalloc_dir)/src/base/commandlineflags.h',
250 '<(tcmalloc_dir)/src/base/cycleclock.h',
251 '<(tcmalloc_dir)/src/base/elf_mem_image.h',
252 '<(tcmalloc_dir)/src/base/elfcore.h',
253 '<(tcmalloc_dir)/src/base/googleinit.h',
254 '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
255 '<(tcmalloc_dir)/src/base/simple_mutex.h',
256 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
257 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
258 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
259 '<(tcmalloc_dir)/src/base/stl_allocator.h',
260 '<(tcmalloc_dir)/src/base/thread_annotations.h',
261 '<(tcmalloc_dir)/src/getpc.h',
262 '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
263 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
264 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
265 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
266 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
267 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
268 '<(tcmalloc_dir)/src/gperftools/profiler.h',
269 '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
270 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
271 '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
272 '<(tcmalloc_dir)/src/heap-checker.cc',
273 '<(tcmalloc_dir)/src/libc_override.h',
274 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
275 '<(tcmalloc_dir)/src/libc_override_glibc.h',
276 '<(tcmalloc_dir)/src/libc_override_osx.h',
277 '<(tcmalloc_dir)/src/libc_override_redefine.h',
278 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
279 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
280 '<(tcmalloc_dir)/src/memfs_malloc.cc',
281 '<(tcmalloc_dir)/src/packed-cache-inl.h',
282 '<(tcmalloc_dir)/src/page_heap_allocator.h',
283 '<(tcmalloc_dir)/src/pagemap.h',
284 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
285 '<(tcmalloc_dir)/src/stacktrace_config.h',
286 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
287 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
288 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
289 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
290 '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
291 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
292 '<(tcmalloc_dir)/src/tcmalloc_guard.h',
293
294 # Included by debugallocation_shim.cc.
295 '<(tcmalloc_dir)/src/debugallocation.cc',
296 '<(tcmalloc_dir)/src/tcmalloc.cc',
297 ]
298 },{
299 'include_dirs': [
300 '.',
301 '../..',
302 ],
303 }],
337 ['OS=="linux" and clang_type_profiler==1', { 304 ['OS=="linux" and clang_type_profiler==1', {
338 'dependencies': [ 305 'dependencies': [
339 'type_profiler_tcmalloc', 306 'type_profiler_tcmalloc',
340 ], 307 ],
341 # It is undoing dependencies and cflags_cc for type_profiler which 308 # It is undoing dependencies and cflags_cc for type_profiler which
342 # build/common.gypi injects into all targets. 309 # build/common.gypi injects into all targets.
343 'dependencies!': [ 310 'dependencies!': [
344 'type_profiler', 311 'type_profiler',
345 ], 312 ],
346 'cflags_cc!': [ 313 'cflags_cc!': [
347 '-fintercept-allocation-functions', 314 '-fintercept-allocation-functions',
348 ], 315 ],
349 }], 316 }],
350 ['OS=="win"', { 317 ['OS=="win"', {
351 'defines': [
352 'PERFTOOLS_DLL_DECL=',
353 ],
354 'defines!': [
355 # tcmalloc source files unconditionally define this, remove it from
356 # the list of defines that common.gypi defines globally.
357 'NOMINMAX',
358 ],
359 'dependencies': [ 318 'dependencies': [
360 'libcmt', 319 'libcmt',
361 ], 320 ],
362 'include_dirs': [ 321 'sources': [
363 '<(tcmalloc_dir)/src/windows', 322 'allocator_shim_win.cc',
323 'generic_allocators.cc',
364 ], 324 ],
325 # sources! means that these are not compiled directly.
365 'sources!': [ 326 'sources!': [
366 '<(tcmalloc_dir)/src/base/elf_mem_image.cc', 327 # Included by allocator_shim_win.cc for maximal inlining.
367 '<(tcmalloc_dir)/src/base/elf_mem_image.h', 328 'generic_allocators.cc',
368 '<(tcmalloc_dir)/src/base/linuxthreads.cc',
369 '<(tcmalloc_dir)/src/base/linuxthreads.h',
370 '<(tcmalloc_dir)/src/base/vdso_support.cc',
371 '<(tcmalloc_dir)/src/base/vdso_support.h',
372 '<(tcmalloc_dir)/src/maybe_threads.cc',
373 '<(tcmalloc_dir)/src/maybe_threads.h',
374 '<(tcmalloc_dir)/src/symbolize.h',
375 '<(tcmalloc_dir)/src/system-alloc.cc',
376 '<(tcmalloc_dir)/src/system-alloc.h',
377
378 # included by allocator_shim.cc
379 'debugallocation_shim.cc',
380 ], 329 ],
381 }], 330 }],
382 ['OS=="win" or profiling!=1', { 331 ['profiling!=1', {
383 'sources!': [ 332 'sources!': [
384 # cpuprofiler 333 # cpuprofiler
385 '<(tcmalloc_dir)/src/base/thread_lister.c', 334 '<(tcmalloc_dir)/src/base/thread_lister.c',
386 '<(tcmalloc_dir)/src/base/thread_lister.h', 335 '<(tcmalloc_dir)/src/base/thread_lister.h',
387 '<(tcmalloc_dir)/src/profiledata.cc', 336 '<(tcmalloc_dir)/src/profiledata.cc',
388 '<(tcmalloc_dir)/src/profiledata.h', 337 '<(tcmalloc_dir)/src/profiledata.h',
389 '<(tcmalloc_dir)/src/profile-handler.cc', 338 '<(tcmalloc_dir)/src/profile-handler.cc',
390 '<(tcmalloc_dir)/src/profile-handler.h', 339 '<(tcmalloc_dir)/src/profile-handler.h',
391 '<(tcmalloc_dir)/src/profiler.cc', 340 '<(tcmalloc_dir)/src/profiler.cc',
392 ], 341 ],
393 }], 342 }],
394 ['OS=="linux" or OS=="freebsd" or OS=="solaris" or OS=="android"', { 343 ['OS=="linux" or OS=="freebsd" or OS=="solaris" or OS=="android"', {
395 'sources!': [ 344 'sources!': [
396 '<(tcmalloc_dir)/src/system-alloc.h', 345 '<(tcmalloc_dir)/src/system-alloc.h',
397 '<(tcmalloc_dir)/src/windows/port.cc',
398 '<(tcmalloc_dir)/src/windows/port.h',
399
400 # TODO(willchan): Support allocator shim later on.
401 'allocator_shim.cc',
402 ], 346 ],
403 # We enable all warnings by default, but upstream disables a few. 347 # We enable all warnings by default, but upstream disables a few.
404 # Keep "-Wno-*" flags in sync with upstream by comparing against: 348 # Keep "-Wno-*" flags in sync with upstream by comparing against:
405 # http://code.google.com/p/google-perftools/source/browse/trunk/Makefi le.am 349 # http://code.google.com/p/google-perftools/source/browse/trunk/Makefi le.am
406 'cflags': [ 350 'cflags': [
407 '-Wno-sign-compare', 351 '-Wno-sign-compare',
408 '-Wno-unused-result', 352 '-Wno-unused-result',
409 ], 353 ],
410 'cflags!': [ 354 'cflags!': [
411 '-fvisibility=hidden', 355 '-fvisibility=hidden',
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
491 { 435 {
492 'target_name': 'allocator_unittests', 436 'target_name': 'allocator_unittests',
493 'type': 'executable', 437 'type': 'executable',
494 'dependencies': [ 438 'dependencies': [
495 'allocator', 439 'allocator',
496 'allocator_extension_thunks', 440 'allocator_extension_thunks',
497 '../../testing/gtest.gyp:gtest', 441 '../../testing/gtest.gyp:gtest',
498 ], 442 ],
499 'include_dirs': [ 443 'include_dirs': [
500 '.', 444 '.',
501 '<(tcmalloc_dir)/src/base',
502 '<(tcmalloc_dir)/src',
503 '../..', 445 '../..',
504 ], 446 ],
505 'sources': [ 447 'sources': [
506 'allocator_unittest.cc', 448 'allocator_unittest.cc',
507 '../profiler/alternate_timer.cc', 449 '../profiler/alternate_timer.cc',
508 '../profiler/alternate_timer.h', 450 '../profiler/alternate_timer.h',
509 ], 451 ],
510 }, 452 },
511 {
512 'target_name': 'tcmalloc_unittest',
513 'type': 'executable',
514 'sources': [
515 'tcmalloc_unittest.cc',
516 ],
517 'include_dirs': [
518 '../..',
519 # For constants of TCMalloc.
520 '<(tcmalloc_dir)/src',
521 ],
522 'dependencies': [
523 '../../testing/gtest.gyp:gtest',
524 '../base.gyp:base',
525 'allocator',
526 ],
527 },
528 ], 453 ],
529 }], 454 }],
530 ['OS=="win" and target_arch=="ia32"', { 455 ['OS=="win" and target_arch=="ia32"', {
531 'targets': [ 456 'targets': [
532 { 457 {
533 'target_name': 'allocator_extension_thunks_win64', 458 'target_name': 'allocator_extension_thunks_win64',
534 'type': 'static_library', 459 'type': 'static_library',
535 'sources': [ 460 'sources': [
536 'allocator_extension_thunks.cc', 461 'allocator_extension_thunks.cc',
537 'allocator_extension_thunks.h', 462 'allocator_extension_thunks.h',
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
628 '../..', 553 '../..',
629 ], 554 ],
630 'sources': [ 555 'sources': [
631 'type_profiler_map_unittest.cc', 556 'type_profiler_map_unittest.cc',
632 '<(tcmalloc_dir)/src/gperftools/type_profiler_map.h', 557 '<(tcmalloc_dir)/src/gperftools/type_profiler_map.h',
633 '<(tcmalloc_dir)/src/type_profiler_map.cc', 558 '<(tcmalloc_dir)/src/type_profiler_map.cc',
634 ], 559 ],
635 }, 560 },
636 ], 561 ],
637 }], 562 }],
563 ['use_allocator=="tcmalloc"', {
564 'targets': [
565 {
566 'target_name': 'tcmalloc_unittest',
567 'type': 'executable',
568 'sources': [
569 'tcmalloc_unittest.cc',
570 ],
571 'include_dirs': [
572 '<(tcmalloc_dir)/src',
573 '../..',
574 ],
575 'dependencies': [
576 '../../testing/gtest.gyp:gtest',
577 'allocator',
578 ],
579 },
580 ],
581 }],
638 ], 582 ],
639 } 583 }
OLDNEW
« no previous file with comments | « no previous file | base/allocator/allocator_shim.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698