llvm-project/llvm/test/MC/WebAssembly
Wouter van Oortmerssen 87af0b1911 [WebAssembly] Assembler/InstPrinter: support call_indirect type index.
A TYPE_INDEX operand (as used by call_indirect) used to be represented
by the InstPrinter as a symbol (e.g. .Ltype_index0@TYPE_INDEX) which
was a bit of a mismatch with the WasmObjectWriter which expects an
unnamed symbol, to receive the signature from and then turn into a
reloc.

There was really no good way to round-trip this information. An earlier
version of this patch tried to attach the signature information using
a .functype, but that ran into trouble when the symbol was re-emitted
without a name. Removing the name was a giant hack also.

The current version changes the assembly syntax to have an inline
signature spec for TYPEINDEX operands that is always unnamed, which
is much more elegant both in syntax and in implementation (as now the
assembler is able to follow the same path as the regular backend)

Reviewers: sbc100, dschuff, aheejin, jgravelle-google, sunfish, tlively

Subscribers: arphaman, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64758

llvm-svn: 367590
2019-08-01 18:08:26 +00:00
..
annotations.s [WebAssembly] Remove unneeded MCSymbolRefExpr variants 2019-02-22 22:29:34 +00:00
array-fill.ll [WebAssembly] Merge used feature sets, update atomics linkage policy 2019-03-29 00:14:01 +00:00
assembler-binary.ll [WebAssembly] Merge used feature sets, update atomics linkage policy 2019-03-29 00:14:01 +00:00
atomics-encodings.s [WebAssembly] Enable an atomic.notify MC test 2019-06-27 21:22:04 +00:00
basic-assembly-errors.s [WebAssembly] tablegen: distinguish float/int immediate operands. 2019-07-08 16:58:37 +00:00
basic-assembly.s [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
blockaddress.ll
bss.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
bulk-memory-encodings.s [WebAssembly] memory.fill 2019-02-13 22:25:18 +00:00
comdat.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
compile-twice.ll
custom-code-section.ll
custom-sections.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
data-section.s [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
debug-info.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
dwarfdump.ll Fix for llvm-dwarfdump changes for subroutine types 2018-12-12 21:15:48 +00:00
event-section.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
explicit-sections.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
external-data.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
external-func-address.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
file-headers.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
func-address.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
function-alias.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
function-sections.ll [WebAssembly] Remove trailing whitespaces in tests (NFC) 2019-03-06 02:00:22 +00:00
global-ctor-dtor.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
import-module.ll [WebAssembly] Fix test after r359602 2019-04-30 19:58:56 +00:00
libcall.ll
lit.local.cfg
no-dead-strip.ll [WebAssembly] Add symbol flag to the binary format llvm.used 2019-02-07 01:24:44 +00:00
null-output.s [WebAssembly] MC: Fix for outputing wasm object to /dev/null 2019-01-31 22:38:22 +00:00
objdump.s [WebAssembly] Rename except_ref type to exnref 2019-07-15 22:49:25 +00:00
offset.ll [WebAssembly] Remove trailing whitespaces in tests (NFC) 2019-03-06 02:00:22 +00:00
reloc-code.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
reloc-data.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
reloc-pic.s [WebAssembly] Fix p2align in assembler. 2019-06-27 18:11:15 +00:00
sections.ll [llvm-readobj] Change -long-option to --long-option in tests. NFC 2019-05-01 05:27:20 +00:00
simd-encodings.s [WebAssembly] Fix p2align in assembler. 2019-06-27 18:11:15 +00:00
stack-ptr.ll [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
tail-call-encodings.s [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
type-index.s [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
types.ll [WebAssembly] Add unimplemented-simd128 subtarget feature 2019-01-10 22:32:11 +00:00
unnamed-data.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
visibility.ll [WebAssembly] Merge used feature sets, update atomics linkage policy 2019-03-29 00:14:01 +00:00
weak-alias.ll [WebAssembly] Add DataCount section to object files 2019-04-12 22:27:48 +00:00
weak.ll [WebAssembly] Merge used feature sets, update atomics linkage policy 2019-03-29 00:14:01 +00:00