1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/lib/Target/WebAssembly/MCTargetDesc
Wouter van Oortmerssen 83a02771fb [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
..
CMakeLists.txt [WebAssembly] Move InstPrinter files to MCTargetDesc. NFC 2019-05-13 03:32:41 +00:00
LLVMBuild.txt [WebAssembly] Move InstPrinter files to MCTargetDesc. NFC 2019-05-13 03:32:41 +00:00
WebAssemblyAsmBackend.cpp [WebAssembly] Rename wasm fixup kinds 2019-03-28 02:07:28 +00:00
WebAssemblyFixupKinds.h [WebAssembly] Rename wasm fixup kinds 2019-03-28 02:07:28 +00:00
WebAssemblyInstPrinter.cpp [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
WebAssemblyInstPrinter.h [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
WebAssemblyMCAsmInfo.cpp [WebAssembly] clang-tidy (NFC) 2019-02-04 19:13:39 +00:00
WebAssemblyMCAsmInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
WebAssemblyMCCodeEmitter.cpp [WebAssembly] Rename wasm fixup kinds 2019-03-28 02:07:28 +00:00
WebAssemblyMCTargetDesc.cpp [WebAssembly] Rename except_ref type to exnref 2019-07-15 22:49:25 +00:00
WebAssemblyMCTargetDesc.h [WebAssembly] Add missing utility methods for exnref type 2019-07-15 23:04:00 +00:00
WebAssemblyTargetStreamer.cpp [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
WebAssemblyTargetStreamer.h [WebAssembly] Assembler/InstPrinter: support call_indirect type index. 2019-08-01 18:08:26 +00:00
WebAssemblyWasmObjectWriter.cpp [WebAssembly] Add new explicit relocation types for PIC relocations 2019-04-04 17:43:50 +00:00