v8/test/cctest
Ng Zhi An 8bcee19168 [wasm-simd][liftoff] Handle SIMD params in function
Add a cctest that contains a function with a SIMD parameter, and calls
that function. This will exercise two cases in Liftoff which involves
preparing to call the function, and processing the SIMD parameters of
the function. The tricky case here is ARM, which requires an FP pair.
Most of the logic added is to check the RegClass/type and construct the
right type of LiftoffRegister to use.

As a drive-by, added SIMD case to the various backends' Move
implementation. This is not exercised by the test case, requires more
complicated function setup.

Bug: v8:9909
Change-Id: I1d01e8c3bee0cf336d1a8ff537317c77aedfdac0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2004369
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#65829}
2020-01-17 00:07:08 +00:00
..
compiler [compiler] Consider pushed arguments in stack check offset 2020-01-16 14:30:54 +00:00
heap api, heap: Fix move of on-stack TracedReference 2020-01-16 18:17:54 +00:00
interpreter [offthread] Add OffThreadFactory support to AST strings 2020-01-16 14:58:54 +00:00
libplatform Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
libsampler [cpu-profiler] Only record SIGPROF-based samples for samplers that request samples 2019-02-13 09:29:38 +00:00
parsing [parser] Remove script handle from ParseInfo 2020-01-08 13:16:05 +00:00
torque [torque] Implement Rest/Strict/Sloppy argument stubs in Torque 2019-12-19 11:00:10 +00:00
wasm [wasm-simd][liftoff] Handle SIMD params in function 2020-01-17 00:07:08 +00:00
assembler-helper-arm.cc [cleanup] Drop some dead (Macro)Assembler code 2019-05-27 08:53:28 +00:00
assembler-helper-arm.h Move handles-related files to src/handles 2019-05-23 06:00:15 +00:00
BUILD.gn [wasm-simd][liftoff] Support SIMD locals 2020-01-14 21:11:08 +00:00
cctest.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
cctest.h [API] Remove deprecated tasks API 2020-01-08 13:54:45 +00:00
cctest.status PPC/s390: [wasm-simd][liftoff] Support SIMD locals 2020-01-15 14:19:29 +00:00
collector.h Move remaining files in src/ 2019-05-24 18:24:36 +00:00
DEPS Reland "[tracing] Roll perfetto @ 28b633cd" 2019-09-06 13:42:02 +00:00
disasm-regex-helper.cc [turbofan] Improve load poisoning tests. 2019-07-02 17:55:04 +00:00
disasm-regex-helper.h [turbofan] Improve load poisoning tests. 2019-07-02 17:55:04 +00:00
expression-type-collector-macros.h [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
gay-fixed.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-fixed.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
gay-precision.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-precision.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
gay-shortest.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-shortest.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
manually-externalized-buffer.h [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
OWNERS [owners] Remove redundant OWNERS files in test/ 2019-06-24 12:44:32 +00:00
print-extension.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
print-extension.h [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
profiler-extension.cc Reland "[Compile] Ensure we don't access the native context during bytecode finalization." 2018-10-26 22:33:56 +00:00
profiler-extension.h [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
scope-test-helper.h [parser] Various Scope and Context speedups 2019-01-28 13:06:03 +00:00
setup-isolate-for-tests.cc [interpreter] Always put bytecode handlers in builtins table 2018-09-20 09:58:15 +00:00
setup-isolate-for-tests.h Move initialization code into src/init 2019-05-16 12:36:15 +00:00
test-access-checks.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
test-accessor-assembler.cc [cleanpup][ic] Tnodify accessor-assembler 2019-11-13 14:45:34 +00:00
test-accessors.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-allocation.cc [utils] Fix Malloced implementation 2019-07-15 09:59:22 +00:00
test-api-accessors.cc [inspector] Add "disableBreaks" parameter to "Runtime.evaluate". 2019-09-27 12:16:01 +00:00
test-api-array-buffer.cc [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
test-api-interceptors.cc Rename and retype Symbol name to description 2019-10-30 10:38:55 +00:00
test-api-stack-traces.cc [debug] Revert to old line number behavior for new Function() 2019-11-28 12:01:39 +00:00
test-api-typed-array.cc [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
test-api-wasm.cc [wasm][test] Introduce separate test-api-wasm.cc file. 2019-11-06 14:11:43 +00:00
test-api.cc Revert functionality related to SetDetachedWindowReason. 2020-01-16 13:20:24 +00:00
test-api.h [test-api] Extract arraybufs and typed arrays 2019-06-17 15:27:01 +00:00
test-array-list.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-assembler-arm64.cc [arm64][cleanup] Remove CPURegister::Is and CPURegister::is 2019-11-14 12:58:09 +00:00
test-assembler-arm.cc [wasm-simd] Fix unsigned narrow instructions 2019-11-19 18:51:09 +00:00
test-assembler-ia32.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-assembler-mips64.cc [mips][heap] Remove dynamic allocation flag on NewNumber functions 2019-09-17 14:07:59 +00:00
test-assembler-mips.cc [mips][heap] Remove dynamic allocation flag on NewNumber functions 2019-09-17 14:07:59 +00:00
test-assembler-ppc.cc Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-assembler-s390.cc [s390]tm family test: change a label name 2019-07-22 20:05:10 +00:00
test-assembler-x64.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-atomicops.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-backing-store.cc Reland x6 [arraybuffer] Rearchitect backing store ownership 2019-09-09 13:07:42 +00:00
test-bignum-dtoa.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-bignum.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-bit-vector.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-circular-queue.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
test-code-layout.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-code-pages.cc [unwinder] Add a vector-based code page mechanism for arm32 2019-12-17 08:05:20 +00:00
test-code-stub-assembler.cc [cleanup][CSA] TNodify LoadPropertyFromFastObject and related functions 2020-01-10 15:08:21 +00:00
test-compiler.cc [compiler] Ensure source positions collected when required 2019-11-28 20:14:37 +00:00
test-constantpool.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-conversions.cc [cleanup] Split out bit-field.h and bounds.h from utils/utils.h 2019-11-15 13:00:08 +00:00
test-cpu-profiler.cc [cpu-profiler] Use a min num of samples in CPU profiler tests 2020-01-02 14:48:14 +00:00
test-date.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-debug-helper.cc [torque] Generate postmortem data about bitfields 2020-01-07 16:53:36 +00:00
test-debug.cc [class] implement inspector support for private instance methods 2019-12-04 20:13:34 +00:00
test-decls.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-deoptimization.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-dictionary.cc Update Dictionary classes to use InternalIndex 2019-10-16 13:11:55 +00:00
test-disasm-arm64.cc [arm64][asan] Add missing CLEANUP to test 2019-10-07 14:19:13 +00:00
test-disasm-arm.cc Support Neon64 size for shifts 2020-01-16 18:34:54 +00:00
test-disasm-ia32.cc Reland "Reland: [builtins] Move non-JS linkage builtins code objects into RO_SPACE" 2019-11-04 10:45:10 +00:00
test-disasm-mips64.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-mips.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-ppc.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-s390.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-x64.cc Small fixes for AVX disassembly 2020-01-16 01:55:31 +00:00
test-diy-fp.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-double.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-dtoa.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-elements-kind.cc Add new nonextensible element kinds 2019-08-28 17:24:49 +00:00
test-factory.cc Move handles-related files to src/handles 2019-05-23 06:00:15 +00:00
test-fast-dtoa.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-feedback-vector.cc Reland "[ic] Don't transition to premonomorphic state" 2019-08-05 15:51:47 +00:00
test-feedback-vector.h Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-field-type-tracking.cc [cleanup] Refactor Smi::kZero to Smi::zero() 2019-11-15 11:26:48 +00:00
test-fixed-dtoa.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-flags.cc [regexp] Multiple interpreter executions tier-up 2019-09-09 15:43:42 +00:00
test-func-name-inference.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-fuzz-arm64.cc Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-global-handles.cc [api] Move forward deprecations in EmbedderHeapTracer and its references 2019-10-18 19:55:26 +00:00
test-global-object.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-hashcode.cc [ptr-compr] Pass Isolate to JSObject::NormalizeProperties() 2019-06-11 11:11:10 +00:00
test-hashmap.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-heap-profiler.cc Reland "[ic] Migrate Code-based handlers to use data driven handler." 2019-11-20 22:31:38 +00:00
test-icache.cc Move handles-related files to src/handles 2019-05-23 06:00:15 +00:00
test-identity-map.cc Move utility code to src/utils 2019-05-23 14:13:34 +00:00
test-inobject-slack-tracking.cc Use consistent capitalization rules for instance types 2019-10-09 17:44:42 +00:00
test-inspector.cc [inspector] fix typo in fromUTF16LE and cleanup test 2019-06-26 11:50:31 +00:00
test-intl.cc [lookup] Refactor LookupIterator "property or element" creation 2020-01-09 18:39:11 +00:00
test-javascript-arm64.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-js-arm64-variables.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-js-weak-refs.cc [weakrefs] Hold unregister tokens weakly 2019-12-19 22:42:09 +00:00
test-liveedit.cc Add quotes around unexpected token SyntaxError 2019-06-11 06:11:58 +00:00
test-lockers.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-log-stack-tracer.cc [cleanup] Remove unused TickSample class from the public API 2019-08-22 07:27:35 +00:00
test-log.cc [log] Use handles for LogRecordedBuffer 2020-01-07 13:44:45 +00:00
test-macro-assembler-arm64.cc [ptr-compr][arm64] Use ldr_w to load on 32 bits for CompressedHeapConstants 2019-06-21 07:37:04 +00:00
test-macro-assembler-arm.cc [cleanup] Remove 'typedef struct' and 'typedef enum' 2019-05-28 12:17:35 +00:00
test-macro-assembler-mips64.cc [mips64][codegen] Remove dead argument to Assember::stop 2019-07-12 12:06:27 +00:00
test-macro-assembler-mips.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-macro-assembler-x64.cc [cleanup] Refactor Smi::kZero to Smi::zero() 2019-11-15 11:26:48 +00:00
test-managed.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-mementos.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-modules.cc [top-level-await] Stop throwing exceptions with TLA. 2019-12-05 15:17:05 +00:00
test-object.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-orderedhashtable.cc [ordered-hash-table] Add missing argument to ::Delete 2019-10-28 16:51:51 +00:00
test-parsing.cc [offthread] Add OffThreadFactory support to AST strings 2020-01-16 14:58:54 +00:00
test-platform.cc s390: Edited Generate_CEntry to correctly return buffer when built with clang 2018-09-05 07:01:16 +00:00
test-pointer-auth-arm64.cc [arm64] Add support for pointer authentication instructions 2019-07-24 17:00:26 +00:00
test-poison-disasm-arm64.cc [arm64] Intentionally corrupt the upper half of decompressed SMIs 2019-11-19 12:14:12 +00:00
test-poison-disasm-arm.cc Reland "[TurboProp] Add MidTierMachineLoweringPhase to avoid Late/MemoryOptimizationPhases" 2019-09-26 16:39:15 +00:00
test-profile-generator.cc [cleanup] Eliminate non-const reference parameters 2019-09-10 09:31:07 +00:00
test-random-number-generator.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-regexp.cc [regexp] Add a backtracking limit in the interpreter 2019-10-21 12:48:15 +00:00
test-representation.cc Move relevant files to src/objects 2019-05-20 08:57:47 +00:00
test-roots.cc Remove noscript_shared_function_infos 2019-09-11 15:18:24 +00:00
test-sampler-api.cc [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
test-serialize.cc Deprecate SnapshotCreator::AddTemplate 2019-11-27 14:05:16 +00:00
test-smi-lexicographic-compare.cc [cleanup] Eliminate non-const reference parameters 2019-09-10 09:31:07 +00:00
test-stack-unwinding-win64.cc Unwind V8 frames correctly on Windows ARM64 2019-07-31 06:24:45 +00:00
test-strings.cc Reland "Fixes for size_t LookupIterator" 2019-11-25 22:58:40 +00:00
test-strtod.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-symbols.cc Move utility code to src/utils 2019-05-23 14:13:34 +00:00
test-sync-primitives-arm64.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
test-sync-primitives-arm.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
test-thread-termination.cc Reland "[exceptions] Don't re-request interrupt in InvokeWithTryCatch" 2019-11-29 11:10:30 +00:00
test-threads.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-trace-event.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-traced-value.cc [tracing] Improve tracing signals for compilation/optimization. 2019-03-25 14:49:08 +00:00
test-transitions.cc [ptr-compr] Isolatify Map::MigrateToMap() and friends 2019-07-03 08:08:05 +00:00
test-transitions.h Move relevant files to src/objects 2019-05-20 08:57:47 +00:00
test-typedarrays.cc [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
test-types.cc [turbofan] Disentangle header include chains 2019-07-05 14:26:05 +00:00
test-unboxed-doubles.cc Update DescriptorArray and Map to use InternalIndex 2019-10-11 14:40:43 +00:00
test-unscopables-hidden-prototype.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-unwinder-code-pages.cc [unwinder] Add a new API based on code pages for arm32 support 2019-12-19 12:59:35 +00:00
test-unwinder.cc [unwinder] Add a new API based on code pages for arm32 support 2019-12-19 12:59:35 +00:00
test-usecounters.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-utils-arm64.cc [arm64][cleanup] Remove CPURegister::Is and CPURegister::is 2019-11-14 12:58:09 +00:00
test-utils-arm64.h Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-utils.cc [cleanup] Split out bit-field.h and bounds.h from utils/utils.h 2019-11-15 13:00:08 +00:00
test-version.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-weakmaps.cc [heap] Add flag to promote young objects in MC 2019-10-17 13:38:21 +00:00
test-weaksets.cc [objects] rename kSize to kHeaderSize for JSObject subclasses 2019-11-18 15:17:52 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
trace-extension.cc [cleanup] Remove unused TickSample class from the public API 2019-08-22 07:27:35 +00:00
trace-extension.h [cleanup] Remove unused TickSample class from the public API 2019-08-22 07:27:35 +00:00
unicode-helpers.cc Move string-related files to src/strings 2019-05-21 07:17:48 +00:00
unicode-helpers.h Move string-related files to src/strings 2019-05-21 07:17:48 +00:00