1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/ObjectYAML/wasm
Thomas Lively e539ec198a [WebAssembly] Target features section
Summary:
Implements a new target features section in assembly and object files
that records what features are used, required, and disallowed in
WebAssembly objects. The linker uses this information to ensure that
all objects participating in a link are feature-compatible and records
the set of used features in the output binary for use by optimizers
and other tools later in the toolchain.

The "atomics" feature is always required or disallowed to prevent
linking code with stripped atomics into multithreaded binaries. Other
features are marked used if they are enabled globally or on any
function in a module.

Future CLs will add linker flags for ignoring feature compatibility
checks and for specifying the set of allowed features, implement using
the presence of the "atomics" feature to control the type of memory
and segments in the linked binary, and add front-end flags for
relaxing the linkage policy for atomics.

Reviewers: aheejin, sbc100, dschuff

Subscribers: jgravelle-google, hiraditya, sunfish, mgrang, jfb, jdoerfert, llvm-commits

Tags: #llvm

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

llvm-svn: 356610
2019-03-20 20:26:45 +00:00
..
code_section.yaml [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
custom_section.yaml [WebAssembly] libObject: Don't include the name the size of custom sections 2018-04-12 20:31:12 +00:00
data_section.yaml [WebAssembly] Update MC for bulk memory 2019-02-19 22:56:19 +00:00
dylink_section.yaml [WebAssembly] Update dylink section parsing 2018-12-12 23:40:58 +00:00
elem_section.yaml [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
event_section.yaml [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
export_section.yaml [WebAssembly] Fix tests with invalid yaml (required CODE section missing) 2018-03-05 12:28:01 +00:00
function_section.yaml [WebAssembly] Fix tests with invalid yaml (required CODE section missing) 2018-03-05 12:28:01 +00:00
global_section.yaml [WebAssembly] Explicitly specify function/global index space in YAML 2018-01-09 21:38:53 +00:00
header_invalid_version.yaml
header.yaml
import_memory_shared.yaml [WebAssembly] Add shared memory support to limits field 2018-11-06 17:27:25 +00:00
import_section.yaml [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
invalid_export.yaml
invalid_global_weak.yaml [WebAssembly] Store section alignment as a power of 2 2019-01-16 01:34:48 +00:00
invalid_section_order.yaml [WebAssembly] Check if the section order is correct 2018-12-15 00:58:12 +00:00
linking_section.yaml [WebAssembly] Update MC for bulk memory 2019-02-19 22:56:19 +00:00
memory_section.yaml [WebAssembly] Use bitfield types in wasm YAML representation 2017-12-13 22:02:25 +00:00
name_section.yaml [WebAssembly] Explicitly specify function/global index space in YAML 2018-01-09 21:38:53 +00:00
producers_section_repeat.yaml [WebAssembly] Parse llvm.ident into producers section 2019-01-17 02:29:55 +00:00
producers_section.yaml [WebAssembly] Parse llvm.ident into producers section 2019-01-17 02:29:55 +00:00
start_section.yaml [WebAssembly] Fix tests with invalid yaml (required CODE section missing) 2018-03-05 12:28:01 +00:00
table_section.yaml [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
target-features-section.yaml [WebAssembly] Target features section 2019-03-20 20:26:45 +00:00
type_section.yaml [WebAssembly] Explicitly specify function/global index space in YAML 2018-01-09 21:38:53 +00:00
weak_symbols.yaml [WebAssembly] Store section alignment as a power of 2 2019-01-16 01:34:48 +00:00