summaryrefslogtreecommitdiff
path: root/deps/v8/test/unittests/unittests.gyp
blob: de871b7678ecdfecc8748412768375988734fb8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
# Copyright 2014 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# The sources are kept automatically in sync with BUILD.gn.

{
  'variables': {
    'v8_code': 1,
    'unittests_sources': [  ### gcmole(all) ###
      'base/atomic-utils-unittest.cc',
      'base/bits-unittest.cc',
      'base/cpu-unittest.cc',
      'base/division-by-constant-unittest.cc',
      'base/flags-unittest.cc',
      'base/functional-unittest.cc',
      'base/ieee754-unittest.cc',
      'base/logging-unittest.cc',
      'base/iterator-unittest.cc',
      'base/platform/condition-variable-unittest.cc',
      'base/platform/mutex-unittest.cc',
      'base/platform/platform-unittest.cc',
      'base/platform/semaphore-unittest.cc',
      'base/platform/time-unittest.cc',
      'base/sys-info-unittest.cc',
      'base/utils/random-number-generator-unittest.cc',
      'cancelable-tasks-unittest.cc',
      'char-predicates-unittest.cc',
      'compiler/branch-elimination-unittest.cc',
      'compiler/checkpoint-elimination-unittest.cc',
      'compiler/common-operator-reducer-unittest.cc',
      'compiler/common-operator-unittest.cc',
      'compiler/compiler-test-utils.h',
      'compiler/control-equivalence-unittest.cc',
      'compiler/control-flow-optimizer-unittest.cc',
      'compiler/dead-code-elimination-unittest.cc',
      'compiler/diamond-unittest.cc',
      'compiler/effect-control-linearizer-unittest.cc',
      'compiler/escape-analysis-unittest.cc',
      'compiler/graph-reducer-unittest.cc',
      'compiler/graph-reducer-unittest.h',
      'compiler/graph-trimmer-unittest.cc',
      'compiler/graph-unittest.cc',
      'compiler/graph-unittest.h',
      'compiler/instruction-unittest.cc',
      'compiler/instruction-selector-unittest.cc',
      'compiler/instruction-selector-unittest.h',
      'compiler/instruction-sequence-unittest.cc',
      'compiler/instruction-sequence-unittest.h',
      'compiler/int64-lowering-unittest.cc',
      'compiler/js-builtin-reducer-unittest.cc',
      'compiler/js-create-lowering-unittest.cc',
      'compiler/js-intrinsic-lowering-unittest.cc',
      'compiler/js-operator-unittest.cc',
      'compiler/js-typed-lowering-unittest.cc',
      'compiler/linkage-tail-call-unittest.cc',
      'compiler/liveness-analyzer-unittest.cc',
      'compiler/live-range-builder.h',
      'compiler/live-range-unittest.cc',
      'compiler/load-elimination-unittest.cc',
      'compiler/loop-peeling-unittest.cc',
      'compiler/machine-operator-reducer-unittest.cc',
      'compiler/machine-operator-unittest.cc',
      'compiler/move-optimizer-unittest.cc',
      'compiler/node-cache-unittest.cc',
      'compiler/node-matchers-unittest.cc',
      'compiler/node-properties-unittest.cc',
      'compiler/node-test-utils.cc',
      'compiler/node-test-utils.h',
      'compiler/node-unittest.cc',
      'compiler/opcodes-unittest.cc',
      'compiler/register-allocator-unittest.cc',
      'compiler/schedule-unittest.cc',
      'compiler/scheduler-unittest.cc',
      'compiler/scheduler-rpo-unittest.cc',
      'compiler/simplified-operator-reducer-unittest.cc',
      'compiler/simplified-operator-unittest.cc',
      'compiler/state-values-utils-unittest.cc',
      'compiler/tail-call-optimization-unittest.cc',
      'compiler/typed-optimization-unittest.cc',
      'compiler/typer-unittest.cc',
      'compiler/value-numbering-reducer-unittest.cc',
      'compiler/zone-stats-unittest.cc',
      'compiler-dispatcher/compiler-dispatcher-job-unittest.cc',
      'compiler-dispatcher/compiler-dispatcher-tracer-unittest.cc',
      'counters-unittest.cc',
      'eh-frame-iterator-unittest.cc',
      'eh-frame-writer-unittest.cc',
      'interpreter/bytecodes-unittest.cc',
      'interpreter/bytecode-array-builder-unittest.cc',
      'interpreter/bytecode-array-iterator-unittest.cc',
      'interpreter/bytecode-array-writer-unittest.cc',
      'interpreter/bytecode-dead-code-optimizer-unittest.cc',
      'interpreter/bytecode-decoder-unittest.cc',
      'interpreter/bytecode-peephole-optimizer-unittest.cc',
      'interpreter/bytecode-pipeline-unittest.cc',
      'interpreter/bytecode-register-allocator-unittest.cc',
      'interpreter/bytecode-register-optimizer-unittest.cc',
      'interpreter/bytecode-utils.h',
      'interpreter/constant-array-builder-unittest.cc',
      'interpreter/interpreter-assembler-unittest.cc',
      'interpreter/interpreter-assembler-unittest.h',
      'libplatform/default-platform-unittest.cc',
      'libplatform/task-queue-unittest.cc',
      'libplatform/worker-thread-unittest.cc',
      'heap/bitmap-unittest.cc',
      'heap/gc-idle-time-handler-unittest.cc',
      'heap/gc-tracer-unittest.cc',
      'heap/marking-unittest.cc',
      'heap/memory-reducer-unittest.cc',
      'heap/heap-unittest.cc',
      'heap/scavenge-job-unittest.cc',
      'heap/slot-set-unittest.cc',
      'locked-queue-unittest.cc',
      'register-configuration-unittest.cc',
      'run-all-unittests.cc',
      'source-position-table-unittest.cc',
      'test-utils.h',
      'test-utils.cc',
      'unicode-unittest.cc',
      'value-serializer-unittest.cc',
      'zone/segmentpool-unittest.cc',
      'zone/zone-chunk-list-unittest.cc',
      'zone/zone-unittest.cc',
      'wasm/asm-types-unittest.cc',
      'wasm/ast-decoder-unittest.cc',
      'wasm/control-transfer-unittest.cc',
      'wasm/decoder-unittest.cc',
      'wasm/leb-helper-unittest.cc',
      'wasm/loop-assignment-analysis-unittest.cc',
      'wasm/module-decoder-unittest.cc',
      'wasm/switch-logic-unittest.cc',
      'wasm/wasm-macro-gen-unittest.cc',
      'wasm/wasm-module-builder-unittest.cc',
    ],
    'unittests_sources_arm': [  ### gcmole(arch:arm) ###
      'compiler/arm/instruction-selector-arm-unittest.cc',
    ],
    'unittests_sources_arm64': [  ### gcmole(arch:arm64) ###
      'compiler/arm64/instruction-selector-arm64-unittest.cc',
    ],
    'unittests_sources_ia32': [  ### gcmole(arch:ia32) ###
      'compiler/ia32/instruction-selector-ia32-unittest.cc',
    ],
    'unittests_sources_mips': [  ### gcmole(arch:mips) ###
      'compiler/mips/instruction-selector-mips-unittest.cc',
    ],
    'unittests_sources_mips64': [  ### gcmole(arch:mips64) ###
      'compiler/mips64/instruction-selector-mips64-unittest.cc',
    ],
    'unittests_sources_x64': [  ### gcmole(arch:x64) ###
      'compiler/x64/instruction-selector-x64-unittest.cc',
    ],
    'unittests_sources_ppc': [  ### gcmole(arch:ppc) ###
      'compiler/ppc/instruction-selector-ppc-unittest.cc',
    ],
    'unittests_sources_s390': [  ### gcmole(arch:s390) ###
      'compiler/s390/instruction-selector-s390-unittest.cc',
    ],
  },
  'includes': ['../../gypfiles/toolchain.gypi', '../../gypfiles/features.gypi'],
  'targets': [
    {
      'target_name': 'unittests',
      'type': 'executable',
      'variables': {
        'optimize': 'max',
      },
      'dependencies': [
        '../../testing/gmock.gyp:gmock',
        '../../testing/gtest.gyp:gtest',
        '../../src/v8.gyp:v8',
        '../../src/v8.gyp:v8_libbase',
        '../../src/v8.gyp:v8_libplatform',
      ],
      'include_dirs': [
        '../..',
      ],
      'sources': [
        '<@(unittests_sources)',
      ],
      'conditions': [
        ['v8_target_arch=="arm"', {
          'sources': [
            '<@(unittests_sources_arm)',
          ],
        }],
        ['v8_target_arch=="arm64"', {
          'sources': [
            '<@(unittests_sources_arm64)',
          ],
        }],
        ['v8_target_arch=="ia32"', {
          'sources': [
            '<@(unittests_sources_ia32)',
          ],
        }],
        ['v8_target_arch=="mips"', {
          'sources': [
            '<@(unittests_sources_mips)',
          ],
        }],
        ['v8_target_arch=="mipsel"', {
          'sources': [
            '<@(unittests_sources_mips)',
          ],
        }],
        ['v8_target_arch=="mips64"', {
          'sources': [
            '<@(unittests_sources_mips64)',
          ],
        }],
        ['v8_target_arch=="mips64el"', {
          'sources': [
            '<@(unittests_sources_mips64)',
          ],
        }],
        ['v8_target_arch=="x64"', {
          'sources': [
            '<@(unittests_sources_x64)',
          ],
        }],
        ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
          'sources': [
            '<@(unittests_sources_ppc)',
          ],
        }],
        ['v8_target_arch=="s390" or v8_target_arch=="s390x"', {
          'sources': [
            '<@(unittests_sources_s390)',
          ],
        }],
        ['OS=="aix"', {
          'ldflags': [ '-Wl,-bbigtoc' ],
        }],
        ['v8_enable_i18n_support==1', {
          'dependencies': [
            '<(icu_gyp_path):icui18n',
            '<(icu_gyp_path):icuuc',
          ],
        }],
        ['os_posix == 1', {
          # TODO(svenpanne): This is a temporary work-around to fix the warnings
          # that show up because we use -std=gnu++0x instead of -std=c++11.
          'cflags!': [
            '-pedantic',
          ],
          'direct_dependent_settings': {
            'cflags!': [
              '-pedantic',
            ],
          },
        }],
      ],
    },
  ],
  'conditions': [
    ['test_isolation_mode != "noop"', {
      'targets': [
        {
          'target_name': 'unittests_run',
          'type': 'none',
          'dependencies': [
            'unittests',
          ],
          'includes': [
            '../../gypfiles/isolate.gypi',
          ],
          'sources': [
            'unittests.isolate',
          ],
        },
      ],
    }],
  ],
}