[PATCH] D51182: [WebAssembly] Added default stack-only instruction mode for MC.

Wouter van Oortmerssen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 23 14:10:45 PDT 2018


aardappel created this revision.
aardappel added reviewers: dschuff, sunfish.

Made it convert from register to stack based instructions, and removed the registers.
Fixes to related code that was expecting register based instructions.
Added the correct testing flag to all tests, depending on what the
format they were expecting so far.
Translated one test to stack format as example: reg-stackify-stack.ll

tested:
llvm-lit -v `find test -name WebAssembly`
unittests/MC/*


Repository:
  rL LLVM

https://reviews.llvm.org/D51182

Files:
  lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
  lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
  lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
  lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
  lib/Target/WebAssembly/WebAssemblyInstrControl.td
  lib/Target/WebAssembly/WebAssemblyInstrMemory.td
  lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
  lib/Target/WebAssembly/WebAssemblyUtilities.cpp
  test/CodeGen/WebAssembly/address-offsets.ll
  test/CodeGen/WebAssembly/atomic-mem-consistency.ll
  test/CodeGen/WebAssembly/atomic-rmw.ll
  test/CodeGen/WebAssembly/byval.ll
  test/CodeGen/WebAssembly/call.ll
  test/CodeGen/WebAssembly/cfg-stackify-eh.ll
  test/CodeGen/WebAssembly/cfg-stackify.ll
  test/CodeGen/WebAssembly/cfi.ll
  test/CodeGen/WebAssembly/comparisons_f32.ll
  test/CodeGen/WebAssembly/comparisons_f64.ll
  test/CodeGen/WebAssembly/comparisons_i32.ll
  test/CodeGen/WebAssembly/comparisons_i64.ll
  test/CodeGen/WebAssembly/conv-trap.ll
  test/CodeGen/WebAssembly/conv.ll
  test/CodeGen/WebAssembly/copysign-casts.ll
  test/CodeGen/WebAssembly/divrem-constant.ll
  test/CodeGen/WebAssembly/exception.ll
  test/CodeGen/WebAssembly/explicit-locals.mir
  test/CodeGen/WebAssembly/f16.ll
  test/CodeGen/WebAssembly/f32.ll
  test/CodeGen/WebAssembly/f64.ll
  test/CodeGen/WebAssembly/fast-isel-br-i1.ll
  test/CodeGen/WebAssembly/fast-isel-i24.ll
  test/CodeGen/WebAssembly/fast-isel-i256.ll
  test/CodeGen/WebAssembly/fast-isel-noreg.ll
  test/CodeGen/WebAssembly/fast-isel.ll
  test/CodeGen/WebAssembly/frem.ll
  test/CodeGen/WebAssembly/func.ll
  test/CodeGen/WebAssembly/function-bitcasts-varargs.ll
  test/CodeGen/WebAssembly/function-bitcasts.ll
  test/CodeGen/WebAssembly/global.ll
  test/CodeGen/WebAssembly/i128.ll
  test/CodeGen/WebAssembly/i32-load-store-alignment.ll
  test/CodeGen/WebAssembly/i32.ll
  test/CodeGen/WebAssembly/i64-load-store-alignment.ll
  test/CodeGen/WebAssembly/i64.ll
  test/CodeGen/WebAssembly/ident.ll
  test/CodeGen/WebAssembly/immediates.ll
  test/CodeGen/WebAssembly/implicit-def.ll
  test/CodeGen/WebAssembly/import-module.ll
  test/CodeGen/WebAssembly/indirect-import.ll
  test/CodeGen/WebAssembly/inline-asm-m.ll
  test/CodeGen/WebAssembly/inline-asm.ll
  test/CodeGen/WebAssembly/irreducible-cfg.ll
  test/CodeGen/WebAssembly/legalize.ll
  test/CodeGen/WebAssembly/libcalls.ll
  test/CodeGen/WebAssembly/load-ext-atomic.ll
  test/CodeGen/WebAssembly/load-ext.ll
  test/CodeGen/WebAssembly/load-store-i1.ll
  test/CodeGen/WebAssembly/load.ll
  test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
  test/CodeGen/WebAssembly/lower-global-dtors.ll
  test/CodeGen/WebAssembly/mem-intrinsics.ll
  test/CodeGen/WebAssembly/memory-addr32.ll
  test/CodeGen/WebAssembly/muloti4.ll
  test/CodeGen/WebAssembly/negative-base-reg.ll
  test/CodeGen/WebAssembly/offset-atomics.ll
  test/CodeGen/WebAssembly/offset-fastisel.ll
  test/CodeGen/WebAssembly/offset-folding.ll
  test/CodeGen/WebAssembly/offset.ll
  test/CodeGen/WebAssembly/phi.ll
  test/CodeGen/WebAssembly/reg-stackify.ll
  test/CodeGen/WebAssembly/return-int32.ll
  test/CodeGen/WebAssembly/returned.ll
  test/CodeGen/WebAssembly/select.ll
  test/CodeGen/WebAssembly/signext-arg.ll
  test/CodeGen/WebAssembly/signext-inreg.ll
  test/CodeGen/WebAssembly/signext-zeroext.ll
  test/CodeGen/WebAssembly/simd-arith.ll
  test/CodeGen/WebAssembly/stack-alignment.ll
  test/CodeGen/WebAssembly/store-trunc-atomic.ll
  test/CodeGen/WebAssembly/store-trunc.ll
  test/CodeGen/WebAssembly/store.ll
  test/CodeGen/WebAssembly/switch.ll
  test/CodeGen/WebAssembly/tls.ll
  test/CodeGen/WebAssembly/umulo-i64.ll
  test/CodeGen/WebAssembly/unsupported-function-bitcasts.ll
  test/CodeGen/WebAssembly/unused-argument.ll
  test/CodeGen/WebAssembly/userstack.ll
  test/CodeGen/WebAssembly/varargs.ll
  test/CodeGen/WebAssembly/vtable.ll
  test/MC/Disassembler/WebAssembly/wasm.txt
  test/MC/WebAssembly/basic-assembly.s
  test/MC/WebAssembly/reloc-code.ll
  test/MC/WebAssembly/weak-alias.ll
  unittests/MC/Disassembler.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D51182.162264.patch
Type: text/x-patch
Size: 136820 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180823/08648efe/attachment-0001.bin>


More information about the llvm-commits mailing list