c5b9cae05b
Update the wasm spec tests to include the memory64 proposal. Some tests are failing currently because of broken spec tests or missing v8 support. This will be addressed in follow-up CLs. R=ahaas@chromium.org CC=zhin@chromium.org Bug: v8:11401 Change-Id: I1a8f75e70f9d0828ad32c960c113f5e4c0d1a44b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2679683 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#72561}
70 lines
2.2 KiB
Python
70 lines
2.2 KiB
Python
# Copyright 2017 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.
|
|
|
|
import os
|
|
|
|
from testrunner.local import testsuite
|
|
from testrunner.objects import testcase
|
|
|
|
proposal_flags = [{
|
|
'name': 'reference-types',
|
|
'flags': ['--experimental-wasm-reftypes',
|
|
'--wasm-staging']
|
|
},
|
|
{
|
|
'name': 'bulk-memory-operations',
|
|
'flags': ['--experimental-wasm-bulk-memory',
|
|
'--wasm-staging']
|
|
},
|
|
{
|
|
'name': 'js-types',
|
|
'flags': ['--experimental-wasm-type-reflection',
|
|
'--wasm-staging']
|
|
},
|
|
{
|
|
'name': 'tail-call',
|
|
'flags': ['--experimental-wasm-return-call',
|
|
'--wasm-staging']
|
|
},
|
|
{
|
|
'name': 'simd',
|
|
'flags': ['--experimental-wasm-simd',
|
|
'--wasm-staging']
|
|
},
|
|
{
|
|
'name': 'memory64',
|
|
'flags': ['--experimental-wasm-memory64',
|
|
'--wasm-staging']
|
|
},
|
|
]
|
|
|
|
class TestLoader(testsuite.JSTestLoader):
|
|
pass
|
|
|
|
class TestSuite(testsuite.TestSuite):
|
|
def __init__(self, *args, **kwargs):
|
|
super(TestSuite, self).__init__(*args, **kwargs)
|
|
self.test_root = os.path.join(self.root, "tests")
|
|
self._test_loader.test_root = self.test_root
|
|
|
|
def _test_loader_class(self):
|
|
return TestLoader
|
|
|
|
def _test_class(self):
|
|
return TestCase
|
|
|
|
class TestCase(testcase.D8TestCase):
|
|
def _get_files_params(self):
|
|
return [os.path.join(self.suite.test_root, self.path + self._get_suffix())]
|
|
|
|
def _get_source_flags(self):
|
|
for proposal in proposal_flags:
|
|
if os.sep.join(['proposals', proposal['name']]) in self.path:
|
|
return proposal['flags']
|
|
return []
|
|
|
|
|
|
def GetSuite(*args, **kwargs):
|
|
return TestSuite(*args, **kwargs)
|