blob: d5ba3539470202b9e821458595eef43a2079509e [file] [log] [blame]
Emily Bernierd0a1eb72015-03-24 16:35:39 -04001# Copyright 2014 the V8 project authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Ben Murdoch61f157c2016-09-16 13:49:30 +01005# Please keep this file in sync with BUILD.gn.
6
Emily Bernierd0a1eb72015-03-24 16:35:39 -04007{
8 'variables': {
9 'v8_code': 1,
10 },
Ben Murdochc5610432016-08-08 18:44:38 +010011 'includes': ['../../gypfiles/toolchain.gypi', '../../gypfiles/features.gypi'],
Emily Bernierd0a1eb72015-03-24 16:35:39 -040012 'targets': [
13 {
14 'target_name': 'unittests',
15 'type': 'executable',
16 'variables': {
17 'optimize': 'max',
18 },
19 'dependencies': [
20 '../../testing/gmock.gyp:gmock',
21 '../../testing/gtest.gyp:gtest',
Ben Murdochc5610432016-08-08 18:44:38 +010022 '../../src/v8.gyp:v8_libplatform',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040023 ],
24 'include_dirs': [
25 '../..',
26 ],
27 'sources': [ ### gcmole(all) ###
Ben Murdochc5610432016-08-08 18:44:38 +010028 'base/atomic-utils-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040029 'base/bits-unittest.cc',
30 'base/cpu-unittest.cc',
31 'base/division-by-constant-unittest.cc',
32 'base/flags-unittest.cc',
33 'base/functional-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +010034 'base/ieee754-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000035 'base/logging-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040036 'base/iterator-unittest.cc',
37 'base/platform/condition-variable-unittest.cc',
38 'base/platform/mutex-unittest.cc',
39 'base/platform/platform-unittest.cc',
40 'base/platform/semaphore-unittest.cc',
41 'base/platform/time-unittest.cc',
42 'base/sys-info-unittest.cc',
43 'base/utils/random-number-generator-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000044 'cancelable-tasks-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040045 'char-predicates-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000046 'compiler/branch-elimination-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +010047 'compiler/checkpoint-elimination-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040048 'compiler/common-operator-reducer-unittest.cc',
49 'compiler/common-operator-unittest.cc',
50 'compiler/compiler-test-utils.h',
51 'compiler/control-equivalence-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000052 'compiler/control-flow-optimizer-unittest.cc',
53 'compiler/dead-code-elimination-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040054 'compiler/diamond-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +010055 'compiler/effect-control-linearizer-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000056 'compiler/escape-analysis-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040057 'compiler/graph-reducer-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000058 'compiler/graph-reducer-unittest.h',
59 'compiler/graph-trimmer-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040060 'compiler/graph-unittest.cc',
61 'compiler/graph-unittest.h',
62 'compiler/instruction-selector-unittest.cc',
63 'compiler/instruction-selector-unittest.h',
64 'compiler/instruction-sequence-unittest.cc',
65 'compiler/instruction-sequence-unittest.h',
Ben Murdoch097c5b22016-05-18 11:27:45 +010066 'compiler/int64-lowering-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040067 'compiler/js-builtin-reducer-unittest.cc',
Ben Murdoch097c5b22016-05-18 11:27:45 +010068 'compiler/js-create-lowering-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000069 'compiler/js-intrinsic-lowering-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040070 'compiler/js-operator-unittest.cc',
71 'compiler/js-typed-lowering-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000072 'compiler/linkage-tail-call-unittest.cc',
73 'compiler/liveness-analyzer-unittest.cc',
74 'compiler/live-range-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040075 'compiler/load-elimination-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000076 'compiler/loop-peeling-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040077 'compiler/machine-operator-reducer-unittest.cc',
78 'compiler/machine-operator-unittest.cc',
79 'compiler/move-optimizer-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000080 'compiler/node-cache-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040081 'compiler/node-matchers-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000082 'compiler/node-properties-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040083 'compiler/node-test-utils.cc',
84 'compiler/node-test-utils.h',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000085 'compiler/node-unittest.cc',
86 'compiler/opcodes-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040087 'compiler/register-allocator-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000088 'compiler/schedule-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000089 'compiler/scheduler-unittest.cc',
Ben Murdoch097c5b22016-05-18 11:27:45 +010090 'compiler/scheduler-rpo-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040091 'compiler/simplified-operator-reducer-unittest.cc',
92 'compiler/simplified-operator-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000093 'compiler/state-values-utils-unittest.cc',
94 'compiler/tail-call-optimization-unittest.cc',
95 'compiler/typer-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -040096 'compiler/value-numbering-reducer-unittest.cc',
97 'compiler/zone-pool-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +000098 'counters-unittest.cc',
99 'interpreter/bytecodes-unittest.cc',
100 'interpreter/bytecode-array-builder-unittest.cc',
101 'interpreter/bytecode-array-iterator-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +0100102 'interpreter/bytecode-array-writer-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +0100103 'interpreter/bytecode-dead-code-optimizer-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +0100104 'interpreter/bytecode-peephole-optimizer-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +0100105 'interpreter/bytecode-pipeline-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +0100106 'interpreter/bytecode-register-allocator-unittest.cc',
107 'interpreter/bytecode-register-optimizer-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000108 'interpreter/constant-array-builder-unittest.cc',
Ben Murdoch097c5b22016-05-18 11:27:45 +0100109 'interpreter/interpreter-assembler-unittest.cc',
110 'interpreter/interpreter-assembler-unittest.h',
Ben Murdochda12d292016-06-02 14:46:10 +0100111 'interpreter/source-position-table-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400112 'libplatform/default-platform-unittest.cc',
113 'libplatform/task-queue-unittest.cc',
114 'libplatform/worker-thread-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000115 'heap/bitmap-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400116 'heap/gc-idle-time-handler-unittest.cc',
Ben Murdochda12d292016-06-02 14:46:10 +0100117 'heap/gc-tracer-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000118 'heap/memory-reducer-unittest.cc',
119 'heap/heap-unittest.cc',
120 'heap/scavenge-job-unittest.cc',
Ben Murdoch097c5b22016-05-18 11:27:45 +0100121 'heap/slot-set-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000122 'locked-queue-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +0100123 'register-configuration-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400124 'run-all-unittests.cc',
125 'test-utils.h',
126 'test-utils.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +0100127 'wasm/asm-types-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000128 'wasm/ast-decoder-unittest.cc',
Ben Murdoch61f157c2016-09-16 13:49:30 +0100129 'wasm/control-transfer-unittest.cc',
Ben Murdochda12d292016-06-02 14:46:10 +0100130 'wasm/decoder-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000131 'wasm/encoder-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +0100132 'wasm/leb-helper-unittest.cc',
Ben Murdoch097c5b22016-05-18 11:27:45 +0100133 'wasm/loop-assignment-analysis-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000134 'wasm/module-decoder-unittest.cc',
Ben Murdochc5610432016-08-08 18:44:38 +0100135 'wasm/switch-logic-unittest.cc',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000136 'wasm/wasm-macro-gen-unittest.cc',
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400137 ],
138 'conditions': [
139 ['v8_target_arch=="arm"', {
140 'sources': [ ### gcmole(arch:arm) ###
141 'compiler/arm/instruction-selector-arm-unittest.cc',
142 ],
143 }],
144 ['v8_target_arch=="arm64"', {
145 'sources': [ ### gcmole(arch:arm64) ###
146 'compiler/arm64/instruction-selector-arm64-unittest.cc',
147 ],
148 }],
149 ['v8_target_arch=="ia32"', {
150 'sources': [ ### gcmole(arch:ia32) ###
151 'compiler/ia32/instruction-selector-ia32-unittest.cc',
152 ],
153 }],
Ben Murdochc5610432016-08-08 18:44:38 +0100154 ['v8_target_arch=="mips"', {
155 'sources': [ ### gcmole(arch:mips) ###
156 'compiler/mips/instruction-selector-mips-unittest.cc',
157 ],
158 }],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400159 ['v8_target_arch=="mipsel"', {
160 'sources': [ ### gcmole(arch:mipsel) ###
161 'compiler/mips/instruction-selector-mips-unittest.cc',
162 ],
163 }],
Ben Murdochc5610432016-08-08 18:44:38 +0100164 ['v8_target_arch=="mips64"', {
165 'sources': [ ### gcmole(arch:mips64) ###
166 'compiler/mips64/instruction-selector-mips64-unittest.cc',
167 ],
168 }],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400169 ['v8_target_arch=="mips64el"', {
170 'sources': [ ### gcmole(arch:mips64el) ###
171 'compiler/mips64/instruction-selector-mips64-unittest.cc',
172 ],
173 }],
174 ['v8_target_arch=="x64"', {
175 'sources': [ ### gcmole(arch:x64) ###
176 'compiler/x64/instruction-selector-x64-unittest.cc',
177 ],
178 }],
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000179 ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
180 'sources': [ ### gcmole(arch:ppc) ###
181 'compiler/ppc/instruction-selector-ppc-unittest.cc',
182 ],
183 }],
Ben Murdochda12d292016-06-02 14:46:10 +0100184 ['v8_target_arch=="s390" or v8_target_arch=="s390x"', {
185 'sources': [ ### gcmole(arch:s390) ###
186 'compiler/s390/instruction-selector-s390-unittest.cc',
187 ],
188 }],
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000189 ['OS=="aix"', {
190 'ldflags': [ '-Wl,-bbigtoc' ],
191 }],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400192 ['component=="shared_library"', {
193 # compiler-unittests can't be built against a shared library, so we
194 # need to depend on the underlying static target in that case.
Ben Murdochc5610432016-08-08 18:44:38 +0100195 'dependencies': ['../../src/v8.gyp:v8_maybe_snapshot'],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400196 }, {
Ben Murdochc5610432016-08-08 18:44:38 +0100197 'dependencies': ['../../src/v8.gyp:v8'],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400198 }],
199 ['os_posix == 1', {
200 # TODO(svenpanne): This is a temporary work-around to fix the warnings
201 # that show up because we use -std=gnu++0x instead of -std=c++11.
202 'cflags!': [
203 '-pedantic',
204 ],
205 'direct_dependent_settings': {
206 'cflags!': [
207 '-pedantic',
208 ],
209 },
210 }],
211 ],
212 },
213 ],
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000214 'conditions': [
215 ['test_isolation_mode != "noop"', {
216 'targets': [
217 {
218 'target_name': 'unittests_run',
219 'type': 'none',
220 'dependencies': [
221 'unittests',
222 ],
223 'includes': [
Ben Murdochc5610432016-08-08 18:44:38 +0100224 '../../gypfiles/isolate.gypi',
Ben Murdoch4a90d5f2016-03-22 12:00:34 +0000225 ],
226 'sources': [
227 'unittests.isolate',
228 ],
229 },
230 ],
231 }],
232 ],
Emily Bernierd0a1eb72015-03-24 16:35:39 -0400233}