[WebAssembly] Make segment/size/type directives optional in asm
authorWouter van Oortmerssen <aardappel@gmail.com>
Mon, 4 Feb 2019 18:03:11 +0000 (18:03 +0000)
committerWouter van Oortmerssen <aardappel@gmail.com>
Mon, 4 Feb 2019 18:03:11 +0000 (18:03 +0000)
commit0b3cf247c47e0ae718a5ff28195407f35f8523ac
tree24670b4f2bcff2f5a5adf8e572e41912a5f094e7
parent79e33171d6aed199f08a172ac41bd39f8f3a35b4
[WebAssembly] Make segment/size/type directives optional in asm

Summary:
These were "boilerplate" that repeated information already present
in .functype and end_function, that needed to be repeated to Please
the particular way our object writing works, and missing them would
generate errors.

Instead, we generate the information for these automatically so the
user can concern itself with writing more canonical wasm functions
that always work as expected.

Reviewers: dschuff, sbc100

Subscribers: jgravelle-google, aheejin, sunfish, llvm-commits

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

llvm-svn: 353067
llvm/lib/MC/MCParser/WasmAsmParser.cpp
llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
llvm/test/MC/WebAssembly/assembler-binary.ll
llvm/test/MC/WebAssembly/basic-assembly-errors.s
llvm/test/MC/WebAssembly/basic-assembly.s
llvm/test/MC/WebAssembly/objdump.s