| # Copyright 2011 the V8 project authors. All rights reserved. |
| # Redistribution and use in source and binary forms, with or without |
| # modification, are permitted provided that the following conditions are |
| # met: |
| # |
| # * Redistributions of source code must retain the above copyright |
| # notice, this list of conditions and the following disclaimer. |
| # * Redistributions in binary form must reproduce the above |
| # copyright notice, this list of conditions and the following |
| # disclaimer in the documentation and/or other materials provided |
| # with the distribution. |
| # * Neither the name of Google Inc. nor the names of its |
| # contributors may be used to endorse or promote products derived |
| # from this software without specific prior written permission. |
| # |
| # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| [ |
| [ALWAYS, { |
| # All tests prefixed with 'Bug' are expected to fail. |
| 'test-api/Bug*': [FAIL], |
| |
| ############################################################################## |
| |
| # This test is so detailed in it's look at the literals array, I can't |
| # maintain it until the CL is done. |
| 'test-heap-profiler/AllocationSitesAreVisible': [FAIL], |
| |
| # These tests always fail. They are here to test test.py. If |
| # they don't fail then test.py has failed. |
| 'test-serialize/TestThatAlwaysFails': [FAIL], |
| 'test-api/SealHandleScope': [FAIL], |
| |
| # This test always fails. It tests that LiveEdit causes abort when turned off. |
| 'test-debug/LiveEditDisabled': [FAIL], |
| |
| # This test always fails. It tests that DisallowJavascriptExecutionScope |
| # works as intended. |
| 'test-api/DisallowJavascriptExecutionScope': [FAIL], |
| |
| # TODO(gc): Temporarily disabled in the GC branch. |
| 'test-log/EquivalenceOfLoggingAndTraversal': [PASS, FAIL], |
| |
| # We do not yet shrink weak maps after they have been emptied by the GC |
| 'test-weakmaps/Shrinking': [FAIL], |
| 'test-weaksets/WeakSet_Shrinking': [FAIL], |
| |
| # Boot up memory use is bloated in debug mode. |
| 'test-mark-compact/BootUpMemoryUse': [PASS, ['mode == debug', FAIL]], |
| |
| # This tests only that the preparser and parser agree, so there is no point in |
| # running several variants. Note that this still takes ages, because there |
| # are actually 13 * 38 * 5 * 128 = 316160 individual tests hidden here. |
| 'test-parsing/ParserSync': [PASS, NO_VARIANTS], |
| |
| # This tests only the type system, no point in running several variants. |
| 'test-types/*': [PASS, NO_VARIANTS], |
| |
| # This tests API threading, no point in running several variants. |
| 'test-api/Threading*': [PASS, SLOW, NO_VARIANTS], |
| |
| # BUG(5193). The cpu profiler tests are notoriously flaky. |
| 'test-cpu-profiler/CollectCpuProfile': [SKIP], |
| 'test-cpu-profiler/CollectCpuProfileSamples': [SKIP], |
| 'test-cpu-profiler/CollectDeoptEvents': [SKIP], |
| 'test-cpu-profiler/CpuProfileDeepStack': [SKIP], |
| 'test-cpu-profiler/DeoptAtFirstLevelInlinedSource': [SKIP], |
| 'test-cpu-profiler/DeoptAtSecondLevelInlinedSource': [SKIP], |
| 'test-cpu-profiler/DeoptUntrackedFunction': [SKIP], |
| 'test-cpu-profiler/FunctionApplySample': [SKIP], |
| 'test-cpu-profiler/HotDeoptNoFrameEntry': [SKIP], |
| 'test-cpu-profiler/JsNative1JsNative2JsSample': [SKIP], |
| 'test-cpu-profiler/JsNativeJsRuntimeJsSample': [SKIP], |
| 'test-cpu-profiler/JsNativeJsRuntimeJsSampleMultiple': [SKIP], |
| 'test-cpu-profiler/JsNativeJsSample': [SKIP], |
| 'test-cpu-profiler/NativeAccessorUninitializedIC': [SKIP], |
| 'test-cpu-profiler/SampleWhenFrameIsNotSetup': [SKIP], |
| 'test-sampler/LibSamplerCollectSample': [SKIP], |
| |
| # BUG(7202). The test is flaky. |
| 'test-cpu-profiler/NativeFrameStackTrace': [SKIP], |
| |
| # BUG(7054) |
| 'test-cpu-profiler/StaticCollectSampleAPI': [SKIP], |
| |
| # BUG(2340). Preprocessing stack traces is disabled at the moment. |
| 'test-heap/PreprocessStackTrace': [FAIL], |
| |
| # BUG(4333). Function name inferrer does not work for ES6 clases. |
| 'test-func-name-inference/UpperCaseClass': [FAIL], |
| 'test-func-name-inference/LowerCaseClass': [FAIL], |
| |
| # Bug(5784). StubCache tests need to be redesigned, as a) they don't work |
| # in the new (ignition + turbofan) pipeline environment, and b) they are |
| # stymied by a move of code stubs into builtins. |
| 'test-api/PrimaryStubCache': [SKIP], |
| 'test-api/SecondaryStubCache': [SKIP], |
| 'test-api/AccessCheckInIC': [SKIP], |
| |
| # BUG(3742). |
| 'test-mark-compact/MarkCompactCollector': [PASS, ['arch==arm', NO_VARIANTS]], |
| |
| # Test that serialization with unknown external reference fails. |
| 'test-serialize/SnapshotCreatorUnknownExternalReferences': [FAIL], |
| 'test-serialize/SnapshotCreatorUnknownHandles': [FAIL], |
| 'test-serialize/SnapshotCreatorNoExternalReferencesCustomFail1': [FAIL], |
| 'test-serialize/SnapshotCreatorNoExternalReferencesCustomFail2': [FAIL], |
| |
| ############################################################################ |
| # Slow tests. |
| 'test-debug/CallFunctionInDebugger': [PASS, ['mode == debug', SLOW]], |
| 'test-strings/StringOOM*': [PASS, ['mode == debug', SKIP]], |
| 'test-serialize/CustomSnapshotDataBlobImmortalImmovableRoots': [PASS, ['mode == debug', SKIP]], |
| 'test-parsing/ObjectRestNegativeTestSlow': [PASS, ['mode == debug', SKIP]], |
| |
| }], # ALWAYS |
| |
| ############################################################################## |
| ['arch == arm64', { |
| 'test-api/Bug618': [PASS], |
| |
| # BUG(v8:3385). |
| 'test-serialize/StartupSerializerOnceRunScript': [PASS, FAIL], |
| 'test-serialize/StartupSerializerTwiceRunScript': [PASS, FAIL], |
| |
| # BUG(v8:3154). |
| 'test-heap/ReleaseOverReservedPages': [PASS, FAIL], |
| |
| # BUG(v8:3155). |
| 'test-strings/OneByteArrayJoin': [PASS, ['mode == debug', FAIL]], |
| |
| # BUG(v8:3247). |
| 'test-mark-compact/NoPromotion': [SKIP], |
| |
| # BUG(v8:3446). |
| 'test-mark-compact/Promotion': [PASS, FAIL], |
| |
| # BUG(v8:3434). |
| ' test-api/LoadICFastApi_DirectCall_GCMoveStubWithProfiler': [SKIP], |
| }], # 'arch == arm64' |
| |
| ['arch == arm64 and simulator_run', { |
| |
| # Pass but take too long with the simulator. |
| 'test-api/ExternalArrays': [PASS, SLOW], |
| 'test-api/Threading*': [SKIP], |
| }], # 'arch == arm64 and simulator_run' |
| |
| ['arch == arm64 and mode == debug and simulator_run', { |
| |
| # Pass but take too long with the simulator in debug mode. |
| 'test-api/ExternalDoubleArray': [SKIP], |
| 'test-api/ExternalFloat32Array': [SKIP], |
| 'test-api/ExternalFloat64Array': [SKIP], |
| 'test-api/ExternalFloatArray': [SKIP], |
| 'test-api/Float32Array': [SKIP], |
| 'test-api/Float64Array': [SKIP], |
| }], # 'arch == arm64 and mode == debug and simulator_run' |
| |
| ############################################################################## |
| # TODO(ahaas): Port multiple return values to ARM, MIPS, S390 and PPC |
| ['arch == s390 or arch == s390x or arch == ppc or arch == ppc64', { |
| 'test-multiple-return/*': [SKIP], |
| }], |
| # TODO(ahaas): Port multiple return values to ARM, MIPS, S390 and PPC |
| ['arch == mips or arch == mips64 or arch == mipsel or arch == mips64el or arch == s390 or arch == s390x or arch == ppc or arch == ppc64', { |
| 'test-multiple-return/ReturnLastValue*': [SKIP], |
| }], |
| ############################################################################## |
| ['asan == True', { |
| # Skip tests not suitable for ASAN. |
| 'test-assembler-x64/AssemblerX64XchglOperations': [SKIP], |
| |
| # BUG(v8:5193): Flaky. |
| 'test-cpu-profiler/TickEvents': [SKIP], |
| }], # 'asan == True' |
| |
| ############################################################################## |
| ['msan == True', { |
| # ICU upstream issues. |
| 'test-strings/CountBreakIterator': [SKIP], |
| }], # 'msan == True' |
| |
| ############################################################################## |
| ['tsan == True', { |
| # BUG(v8:6133). |
| 'test-cpu-profiler/TickEvents': [SKIP], |
| # BUG(v8:6924). The test allocates a lot of memory. |
| 'test-api/NewStringRangeError': [PASS, NO_VARIANTS], |
| |
| # BUG(chromium:794911). |
| 'test-cpu-profiler/TracingCpuProfiler': [SKIP], |
| }], # 'tsan == True' |
| |
| ############################################################################## |
| ['no_snap == True', { |
| # Slow tests. |
| 'test-api/ExternalWrap': [PASS, SLOW], |
| 'test-api/FastReturnValues*': [PASS, SLOW], |
| 'test-decls/CrossScriptReferences_Simple2': [PASS, SLOW], |
| # "WithWarmup" means starting from a snapshot, for which nosnap builds lack |
| # support. |
| 'test-serialize/CustomSnapshotDataBlobWithWarmup': [SKIP], |
| 'test-serialize/SnapshotDataBlobWithWarmup': [SKIP], |
| }], # 'no_snap == True' |
| ['no_snap == False', { |
| # FunctionEntryHooks require bootstrapping from scratch. |
| 'test-api/SetFunctionEntryHook': [SKIP], |
| }], # 'no_snap == False' |
| |
| ############################################################################## |
| # TODO(machenbach): Fix application of '*'. Nosnap windows needs a separate |
| # section to not overwrite the expectations for TestThatAlwaysFails. |
| ['no_snap == True and system == windows', { |
| # Windows doesn't support nosnap mode. |
| 'test-serialize/*': [SKIP], |
| }], # 'no_snap == True and system == windows' |
| |
| ############################################################################## |
| ['byteorder == big', { |
| # Skip WASM atomic tests on big-endian machines. |
| # There is no support to emulate atomic WASM operations on big-endian |
| # platforms, since this would require bit swapping as a part of atomic |
| # operations. |
| 'test-run-wasm-atomics/*': [SKIP], |
| }], # 'byteorder == big' |
| |
| ############################################################################## |
| ['system == windows', { |
| |
| # BUG(3331). Fails on windows. |
| 'test-heap/NoWeakHashTableLeakWithIncrementalMarking': [SKIP], |
| |
| # BUG(v8:4573). |
| 'test-api/MultipleIsolatesOnIndividualThreads': [PASS, NO_VARIANTS], |
| |
| # BUG(v8:4642). |
| 'test-lockers/LockAndUnlockDifferentIsolates': [PASS, NO_VARIANTS], |
| |
| # BUG(v8:2999,v8:4751). |
| 'test-cpu-profiler/FunctionCallSample': [SKIP], |
| |
| # BUG(5920): Flaky crash. |
| 'test-serialize/PartialSerializerContext': [PASS, ['arch == x64 and mode == debug', SKIP]], |
| }], # 'system == windows' |
| |
| ############################################################################## |
| ['system == windows and arch == x64 and mode == debug', { |
| # BUG(v8:6328). |
| 'test-serialize/PartialSerializerCustomContext': [SKIP], |
| 'test-serialize/PartialSerializerObject': [SKIP], |
| 'test-serialize/StartupSerializerOnce': [SKIP], |
| 'test-serialize/StartupSerializerOnceRunScript': [SKIP], |
| 'test-serialize/StartupSerializerTwiceRunScript': [SKIP], |
| 'test-serialize/StartupSerializerTwice': [SKIP], |
| }], # 'system == windows and arch == x64 and mode == debug' |
| |
| ############################################################################## |
| ['arch == arm and simulator_run', { |
| # Pass but take too long with the simulator. |
| 'test-api/Threading*': [SKIP], |
| }], # 'arch == arm and simulator_run' |
| |
| ############################################################################## |
| ['arch == arm', { |
| # BUG(355): Test crashes on ARM. |
| 'test-log/ProfLazyMode': [SKIP], |
| |
| # BUG(1075): Unresolved crashes. |
| 'test-serialize/StartupSerializerOnce': [SKIP], |
| 'test-serialize/StartupSerializerTwice': [SKIP], |
| 'test-serialize/StartupSerializerOnceRunScript': [SKIP], |
| 'test-serialize/StartupSerializerTwiceRunScript': [SKIP], |
| }], # 'arch == arm' |
| |
| ############################################################################## |
| ['arch == mipsel or arch == mips', { |
| # TODO(mips-team): Improve code-size on large RegExp's. |
| 'test-heap/TestSizeOfRegExpCode': [SKIP], |
| |
| # BUG(1075): Unresolved crashes on MIPS also. |
| 'test-serialize/StartupSerializerOnce': [SKIP], |
| 'test-serialize/StartupSerializerTwice': [SKIP], |
| 'test-serialize/StartupSerializerOnceRunScript': [SKIP], |
| 'test-serialize/StartupSerializerTwiceRunScript': [SKIP], |
| }], # 'arch == mipsel or arch == mips' |
| |
| ############################################################################## |
| ['arch == mips', { |
| # Too slow with TF. |
| 'test-api/ExternalArrays': [PASS, NO_VARIANTS], |
| |
| # TODO(mips-team): Currently fails on mips board. |
| 'test-parsing/TooManyArguments': [SKIP], |
| 'test-api/Threading5': [SKIP], |
| 'test-api/Threading6': [SKIP], |
| }], # 'arch == mips' |
| |
| ############################################################################## |
| ['arch == mips64el or arch == mips64', { |
| # BUG(v8:3154). |
| 'test-heap/ReleaseOverReservedPages': [PASS, FAIL], |
| |
| # TODO(mips-team): Improve code-size on large RegExp's. |
| 'test-heap/TestSizeOfRegExpCode': [SKIP], |
| |
| # BUG(1075): Unresolved crashes on MIPS also. |
| 'test-serialize/StartupSerializerOnce': [SKIP], |
| 'test-serialize/StartupSerializerTwice': [SKIP], |
| 'test-serialize/StartupSerializerOnceRunScript': [SKIP], |
| 'test-serialize/StartupSerializerTwiceRunScript': [SKIP], |
| }], # 'arch == mips64el or arch == mips64' |
| |
| ############################################################################## |
| ['arch == mips or arch == mipsel or arch == mips64 or arch == mips64el', { |
| # For now skip wasm SIMD tests that fail when MSA instr. extension is not |
| # available (currently simd-scalar-lowering mechanism doesn't work properly |
| # for all SIMD operations) |
| 'test-run-wasm-simd/*': [SKIP], |
| }], # 'arch == mips or arch == mipsel or arch == mips64 or arch == mips64el' |
| |
| ############################################################################## |
| ['arch == android_arm or arch == android_ia32', { |
| |
| # Tests crash as there is no /tmp directory in Android. |
| 'test-log/LogAccessorCallbacks': [SKIP], |
| 'test-log/LogCallbacks': [SKIP], |
| 'test-log/ProfLazyMode': [SKIP], |
| }], # 'arch == android_arm or arch == android_ia32' |
| |
| ############################################################################## |
| ['system == aix and arch == ppc64', { |
| |
| # BUG 2857 |
| 'test-log/EquivalenceOfLoggingAndTraversal' : [SKIP], |
| |
| }], # 'system == aix and arch == ppc64' |
| |
| ############################################################################## |
| ['system == aix or (arch == ppc64 and byteorder == big)', { |
| |
| # TODO(ppc): Fix for platforms with function desciptors. |
| 'test-run-machops/RunComputedCodeObject' : [SKIP], |
| 'test-run-wasm-module/Run_WasmModule_Return114' : [SKIP], |
| 'test-run-wasm-module/Run_WasmModule_CallAdd' : [SKIP], |
| 'test-run-wasm-module/Run_WasmModule_CallMain_recursive' : [SKIP], |
| # TODO(ppc): Implement load/store reverse byte instructions |
| 'test-run-wasm-simd/RunWasmCompiled_SimdLoadStoreLoad': [SKIP], |
| 'test-run-wasm-simd/RunWasm_SimdLoadStoreLoad': [SKIP], |
| |
| }], # 'system == aix or (arch == ppc64 and byteorder == big)' |
| |
| ############################################################################## |
| ['arch == ppc and simulator_run or arch == ppc64 and simulator_run', { |
| |
| # Pass but take too long with the simulator. |
| 'test-api/Threading*': [PASS, SLOW], |
| 'test-api/ExternalArrays': [PASS, SLOW], |
| |
| }], # 'arch == ppc64 and simulator_run' |
| |
| ############################################################################## |
| ['arch == ppc or arch == ppc64 or arch == s390 or arch == s390x', { |
| |
| # TODO(ppc/s390): implement atomic operations |
| 'test-run-wasm-atomics/*': [SKIP], |
| |
| }], # 'arch == ppc or arch == ppc64 or arch == s390 or arch == s390x' |
| |
| ############################################################################## |
| ['variant == stress_incremental_marking', { |
| 'test-heap-profiler/SamplingHeapProfiler': [SKIP], |
| }], # variant == stress_incremental_marking |
| |
| ############################################################################## |
| ['variant == wasm_traps', { |
| 'test-accessors/*': [SKIP], |
| 'test-api-interceptors/*': [SKIP], |
| 'test-api/*': [SKIP], |
| 'test-bignum-dtoa/*': [SKIP], |
| 'test-cpu-profiler/*': [SKIP], |
| 'test-debug/*': [SKIP], |
| 'test-global-handles/*': [SKIP], |
| 'test-heap-profiler/*': [SKIP], |
| 'test-heap/*': [SKIP], |
| 'test-inobject-slack-tracking/*': [SKIP], |
| 'test-lockers/*': [SKIP], |
| 'test-run-machops/*': [SKIP], |
| 'test-serialize/*': [SKIP], |
| 'test-strings/*': [SKIP], |
| 'test-field-type-tracking/*': [SKIP], |
| 'test-parsing/*': [SKIP], |
| 'test-page-promotion/*': [SKIP], |
| 'test-decls/*': [SKIP], |
| 'test-log/*': [SKIP], |
| 'test-gap-resolver/*': [SKIP], |
| 'test-dtoa/*': [SKIP], |
| }], # variant == wasm_traps |
| |
| ] |