llvm-project/llvm/test/CodeGen/WebAssembly
Thomas Lively 31e944556f [WebAssembly] Prototype extending multiplication SIMD instructions
As proposed in https://github.com/WebAssembly/simd/pull/376. This commit
implements new builtin functions and intrinsics for these instructions, but does
not yet add them to wasm_simd128.h because they have not yet been merged to the
proposal. These are the first instructions with opcodes greater than 0xff, so
this commit updates the MC layer and disassembler to handle that correctly.

Differential Revision: https://reviews.llvm.org/D90253
2020-10-28 09:38:59 -07:00
..
PR40172.ll [WebAssembly][FastISel] Do not assume naive CmpInst lowering 2019-01-14 22:03:43 +00:00
PR40267.ll [LegalizeVectorTypes] Allow illegal indices when splitting extract_vector_elt 2019-01-31 00:35:37 +00:00
PR41149.ll [SelectionDAG] Add scalarization of ABS node (PR41149) 2019-03-21 11:18:54 +00:00
PR41841.ll [WebAssembly] Don't assume that zext/sext result is i32/i64 in fast isel (PR41841) 2019-05-13 19:40:18 +00:00
add-prototypes-conflict.ll [WebAssembly] Fix a typo in a test file name 2019-07-09 01:21:04 +00:00
add-prototypes.ll [WebAssembly] Make sret parameter work with AddMissingPrototypes 2019-07-09 02:10:33 +00:00
address-offsets.ll [WebAssembly] Limit PIC support to the Emscripten target 2019-06-05 20:01:01 +00:00
aliases.ll [WebAssembly] MC: Fix for data aliases with offsets (getelementptr) 2020-06-17 16:25:50 -07:00
atomic-fence.ll [WebAssembly] Add atomic.fence instruction 2019-08-28 23:13:43 +00:00
atomic-fence.mir [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
atomic-mem-consistency.ll [WebAssembly] Remove uses of ThreadModel 2019-02-28 18:39:08 +00:00
atomic-rmw.ll [WebAssembly] Remove uses of ThreadModel 2019-02-28 18:39:08 +00:00
bulk-memory.ll [WebAssembly] Restore defaults for stores per memop 2019-09-18 23:18:16 +00:00
bulk-memory64.ll [WebAssembly] Added 64-bit memory.grow/size/copy/fill 2020-07-06 12:49:50 -07:00
byval.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
call-pic.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
call.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
cfg-stackify-dbg-skip.ll [WebAssembly] Run ExplicitLocals pass after CFGStackify 2019-03-30 09:29:57 +00:00
cfg-stackify-dbg.mir [WebAssembly] Handle END_LOOP in unreachable BB in CFGStackify 2019-03-29 19:36:51 +00:00
cfg-stackify-eh.ll [WebAssembly] Fix fixEndsAtEndOfFunction for try-catch 2020-09-08 09:27:40 -07:00
cfg-stackify.ll Reland "[WebAssembly] Eliminate range checks on br_tables" 2020-06-03 14:04:59 -07:00
cfi.ll
clear-cache.ll Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
comparisons-f32.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
comparisons-f64.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
comparisons-i32.ll [WebAssembly][FastISel] Do not assume naive CmpInst lowering 2019-01-14 22:03:43 +00:00
comparisons-i64.ll [WebAssembly][FastISel] Do not assume naive CmpInst lowering 2019-01-14 22:03:43 +00:00
conv-trap.ll [WebAssembly] Trapping fptoint builtins and intrinsics 2019-10-15 01:11:51 +00:00
conv.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
copysign-casts.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
cpus.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
custom-sections.ll [WebAssembly] Add languages from debug info to producers section 2019-01-18 02:47:48 +00:00
dbgvalue.ll
dead-vreg.ll
debugtest-opt.ll [WebAssembly] Add int32 DW_OP_WASM_location variant 2020-04-16 16:32:17 -07:00
debugtrap.ll [WebAssembly] Lower llvm.debugtrap properly 2020-06-04 13:25:10 -07:00
divrem-constant.ll
eh-labels.mir Simplify MachineVerifier's block-successor verification. 2020-06-06 22:30:51 -04:00
eh-lsda.ll
exception.ll [WebAssembly] Fix a bug in finding matching EH pad 2020-05-28 19:46:11 -07:00
explicit-locals.mir [WebAssembly] Make returns variadic 2019-10-09 21:42:08 +00:00
export-name.ll [WebAssembly] Add new `export_name` clang attribute for controlling wasm export names 2019-12-11 11:54:57 -08:00
f16.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
f32.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
f64.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
fast-isel-br-i1.ll
fast-isel-i24.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
fast-isel-i256.ll
fast-isel-noreg.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
fast-isel-pr47040.ll [WebAssembly] Fix FastISel address calculation bug 2020-08-08 15:23:11 -07:00
fast-isel.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
frem.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
fshl.ll [SelectionDAG] Handle non-power-of-2 bitwidths in expandROT 2020-08-26 09:20:46 +01:00
func.ll
function-bitcasts-varargs.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
function-bitcasts.ll [WebAssembly] Rename Emscripten EH functions 2020-10-07 09:42:49 -07:00
function-info.mir [WebAssembly] Make returns variadic 2019-10-09 21:42:08 +00:00
function-pointer64.ll [WebAssembly] 64-bit (function) pointer fixes. 2020-07-16 14:10:22 -07:00
global.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
global_dtors.ll [WebAssembly] Fix crash when @llvm.global_dtors is external 2019-03-01 00:12:13 +00:00
globl.ll
i32-load-store-alignment.ll Fix typo in comment 2019-01-09 14:20:20 +00:00
i32.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
i64-load-store-alignment.ll Fix typo in comment 2019-01-09 14:20:20 +00:00
i64.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
i128-returned.ll
i128.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
ident.ll
immediates.ll
implicit-def.ll [WebAssembly] Disable MachineBlockPlacement pass 2019-03-05 20:35:34 +00:00
import-module.ll [WebAssembly] Add codegen support for the import_field attribute 2019-02-01 22:27:34 +00:00
indirect-import.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
indirectbr.ll [WebAssembly] Make BR_TABLE non-duplicable 2020-06-11 15:11:45 -07:00
inline-asm-m.ll
inline-asm-roundtrip.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
inline-asm.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
inlineasm-output-template.ll [AsmPrinter] refactor to support %c w/ GlobalAddress' 2019-04-26 18:45:04 +00:00
irreducible-cfg-exceptions.ll [WebAssembly] Improve readability of irreducibility tests 2019-03-19 05:10:39 +00:00
irreducible-cfg.ll [WebAssembly] Optimize the number of routing blocks in FixIrreducibleCFG 2019-03-30 01:31:11 +00:00
irreducible-cfg.mir [WebAssembly] Optimize the number of routing blocks in FixIrreducibleCFG 2019-03-30 01:31:11 +00:00
legalize.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
libcalls.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
lit.local.cfg
llround-conv-i32.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
load-ext-atomic.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
load-ext.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
load-store-i1.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
load-store-pic.ll [WebAssembly] Limit PIC support to the Emscripten target 2019-06-05 20:01:01 +00:00
load.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
lower-em-ehsjlj-multi-return.ll [WebAssembly] Rename Emscripten EH functions 2020-10-07 09:42:49 -07:00
lower-em-ehsjlj-options.ll [WebAssembly] Rename Emscripten EH functions 2020-10-07 09:42:49 -07:00
lower-em-exceptions-allowed.ll [Target] As part of using inclusive language within the llvm project, 2020-06-20 00:06:39 -07:00
lower-em-exceptions-resume-only.ll [WebAssembly] Fix resume-only case in Emscripten EH 2020-01-23 18:13:52 -08:00
lower-em-exceptions.ll [WebAssembly] Check features before making SjLj vars thread-local 2020-09-25 11:45:16 -07:00
lower-em-sjlj-alias.ll [WebAssembly] Compare functions by names in Emscripten Sjlj 2019-09-03 22:26:49 +00:00
lower-em-sjlj-debuginfo.ll [WebAssembly] Use dummy debug info in Emscripten SjLj 2020-04-09 18:44:50 -07:00
lower-em-sjlj-sret.ll [WebAssembly] Rename Emscripten EH functions 2020-10-07 09:42:49 -07:00
lower-em-sjlj.ll [WebAssembly] Handle indirect uses of longjmp 2020-10-08 11:37:19 -07:00
lower-global-dtors.ll [WebAssembly] Fix the order of destructors in the LowerGlobalDtors pass. 2020-03-26 16:19:02 -07:00
main-declaration.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
main-no-args.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
main-three-args.ll [WebAssembly] Re-enable main-function signature rewriting 2019-01-29 10:53:42 +00:00
main-with-args.ll [WebAssembly] Re-enable main-function signature rewriting 2019-01-29 10:53:42 +00:00
mem-intrinsics.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
memory-addr32.ll [WebAssembly] Remove tests for old intrinsics. 2019-01-14 18:25:29 +00:00
memory-addr64.ll [WebAssembly] Added 64-bit memory.grow/size/copy/fill 2020-07-06 12:49:50 -07:00
muloti4.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
multi-return.ll [WebAssembly] Track frame registers through VReg and local allocation 2020-01-17 17:23:56 -08:00
multivalue-stackify.ll [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue 2020-02-18 14:56:09 -08:00
multivalue-stackify.py [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue 2020-02-18 14:56:09 -08:00
multivalue.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
mutable-globals.ll [WebAssembly] Add mutable globals feature 2019-03-29 22:00:18 +00:00
negative-base-reg.ll Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
null-streamer.ll
offset-atomics.ll Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
offset-fastisel.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
offset-folding.ll
offset.ll [SelectionDAGBuilder] Stop setting alignment to one for hidden sret values 2020-05-04 14:44:39 +01:00
phi.ll [WebAssembly] Make LBB markers not affected by test order 2019-04-23 21:17:03 +00:00
pr47375.ll [WebAssembly] Fix incorrect assumption of simple value types 2020-09-06 15:42:21 -07:00
reference-types.ll [WebAssembly] Add reference types target feature 2020-01-24 14:26:27 -08:00
reg-argument.mir [WebAssembly] Make returns variadic 2019-10-09 21:42:08 +00:00
reg-copy.mir [WebAssembly] Make returns variadic 2019-10-09 21:42:08 +00:00
reg-stackify.ll [DAGCombiner] Rebuild (setcc x, y, ==) from (xor (xor x, y), 1) 2020-07-15 07:34:22 +00:00
return-address-emscripten.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
return-address-unknown.ll [WebAssembly] Implement __builtin_return_address for emscripten 2019-05-23 01:24:01 +00:00
return-int32.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
return-void.ll
returned.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
select.ll [WebAssembly] Fix miscompile of select with and 2019-11-15 16:22:01 -08:00
signext-arg.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
signext-inreg.ll [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
signext-zeroext.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
simd-arith.ll [WebAssembly] Prefer v128.const for constant splats 2020-07-10 18:27:52 -07:00
simd-bitcasts.ll [WebAssembly] Enable recently implemented SIMD operations 2020-02-04 18:36:32 -08:00
simd-build-pair.ll [WebAssembly] Enable recently implemented SIMD operations 2020-02-04 18:36:32 -08:00
simd-build-vector.ll Reland "[WebAssembly] Emulate v128.const efficiently"" 2020-10-13 04:36:59 +00:00
simd-comparisons.ll [WebAssembly] Enable recently implemented SIMD operations 2020-02-04 18:36:32 -08:00
simd-conversions.ll [WebAssembly] Renumber SIMD opcodes 2020-05-01 17:20:49 -07:00
simd-extended-extract.ll [WebAssembly] Enable recently implemented SIMD operations 2020-02-04 18:36:32 -08:00
simd-illegal-signext.ll [WebAssembly] Implement ReplaceNodeResults to fix a SIMD crash 2019-05-23 18:09:26 +00:00
simd-intrinsics.ll [WebAssembly] Prototype extending multiplication SIMD instructions 2020-10-28 09:38:59 -07:00
simd-load-lane-offset.ll Reland "[WebAssembly] v128.load{8,16,32,64}_lane instructions" 2020-10-15 19:32:34 +00:00
simd-load-splat.ll Reland "[WebAssembly] Handle multiple loads of splatted loads" 2019-10-31 20:02:24 -07:00
simd-load-store-alignment.ll [NFC][WebAssembly] Add tests for alignment on new SIMD loads 2020-06-09 13:46:12 -07:00
simd-load-zero-offset.ll [WebAssembly] Implement prototype v128.load{32,64}_zero instructions 2020-08-03 13:54:00 -07:00
simd-nested-shuffles.ll
simd-nonconst-sext.ll [WebAssembly] Fix ISel crash in SIGN_EXTEND_INREG lowering 2020-06-03 15:36:44 -07:00
simd-noopt.ll
simd-offset.ll [WebAssembly] Implement truncating vector stores 2020-07-28 17:46:45 -07:00
simd-reductions.ll [WebAssembly] Optimize ISel for SIMD Boolean reductions 2019-06-19 00:02:13 +00:00
simd-scalar-to-vector.ll [WebAssembly] Enable recently implemented SIMD operations 2020-02-04 18:36:32 -08:00
simd-select.ll [WebAssembly] Implement v128.select 2020-07-16 11:37:25 -07:00
simd-sext-inreg.ll [WebAssembly] Simplify extract_vector lowering 2020-02-25 13:54:48 -08:00
simd-shift-complex-splats.ll [WebAssembly][NFC] Simplify vector shift lowering and add tests 2020-07-10 00:18:59 -07:00
simd-shuffle-bitcast.ll [NFC] Fix typo in triples from unkown to unknown 2020-07-02 16:21:54 +08:00
simd-unsupported.ll [WebAssembly] Implement i64x2.mul and remove i8x16.mul 2020-05-19 12:50:44 -07:00
simd-widening.ll [WebAssembly] Remove intrinsics for SIMD widening ops 2020-07-28 18:25:55 -07:00
simd.ll [WebAssembly] Prefer v128.const for constant splats 2020-07-10 18:27:52 -07:00
stack-alignment.ll [WebAssembly] Adding 64-bit versions of __stack_pointer and other globals 2020-06-25 15:52:44 -07:00
stack-insts.ll Reland "[WebAssembly] Eliminate range checks on br_tables" 2020-06-03 14:04:59 -07:00
stack-protector.ll [WebAssembly] Generate unreachable after __stack_chk_fail 2020-07-08 01:02:05 -07:00
stackified-debug.ll [WebAssembly] Added Debug Fixup pass 2020-05-14 13:14:45 -07:00
store-trunc-atomic.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
store-trunc.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
store.ll [WebAssembly] Adding 64-bit versions of all load & store ops. 2020-06-15 08:31:56 -07:00
swiftcc.ll [WebAssembly] Support swiftself and swifterror for WebAssembly target 2020-03-19 17:39:52 -07:00
switch-in-loop.ll [WebAssembly] Make BR_TABLE non-duplicable 2020-06-11 15:11:45 -07:00
switch-unreachable-default.ll [WebAssembly] Fix bug in FixBrTables and use branch analysis utils 2020-06-17 12:34:45 -07:00
switch.ll [WebAssembly] Fixed 64-bit indices in br_table 2020-07-30 10:52:16 -07:00
tailcall.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
target-features-tls.ll [WebAssembly] Disallow 'shared-mem' rather than 'atomics' 2020-05-08 13:52:39 -07:00
target-features.ll [WebAssembly] Update bleeding-edge CPU features 2020-01-24 14:27:35 -08:00
tls-general-dynamic.ll Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
tls-local-exec.ll [WebAssembly] Compile all TLS on Emscripten as local-exec 2019-07-16 22:22:08 +00:00
umulo-128-legalisation-lowering.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
umulo-i64.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
unreachable.ll [WebAssembly] Update CodeGen test expectations after rL354697. NFC 2019-02-23 00:07:39 +00:00
unsupported-function-bitcasts.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
unused-argument.ll [WebAssembly] Replace all calls with generalized multivalue calls 2020-02-18 15:55:20 -08:00
userstack.ll [WebAssembly] Adding 64-bit versions of __stack_pointer and other globals 2020-06-25 15:52:44 -07:00
varargs.ll [WebAssembly] Properly align fp128 arguments in outgoing varargs arguments 2019-02-26 05:20:19 +00:00
vector-sdiv.ll
vtable.ll [WebAssembly] Remove uses of ThreadModel 2019-02-28 18:39:08 +00:00
wasmehprepare.ll [WebAssembly] Fix wasm.lsda() optimization in WasmEHPrepare 2020-04-04 07:02:50 -07:00