diff options
| author | Wouter van Oortmerssen <aardappel@gmail.com> | 2018-06-18 21:22:44 +0000 |
|---|---|---|
| committer | Wouter van Oortmerssen <aardappel@gmail.com> | 2018-06-18 21:22:44 +0000 |
| commit | 48dac3109e40e8870b454edf253e308d76625823 (patch) | |
| tree | 56ccbb99fd9ce98b55dc3e1880016f8cea85ff30 /llvm/test | |
| parent | 932ba20af8742b2cf47ee8e3fa0e05e1c3a895de (diff) | |
| download | bcm5719-llvm-48dac3109e40e8870b454edf253e308d76625823.tar.gz bcm5719-llvm-48dac3109e40e8870b454edf253e308d76625823.zip | |
[WebAssembly] Modified tablegen defs to have 2 parallel instuction sets.
Summary:
One for register based, much like the existing definitions,
and one for stack based (suffix _S).
This allows us to use registers in most of LLVM (which works better),
and stack based in MC (which results in a simpler and more readable
assembler / disassembler).
Tried to keep this change as small as possible while passing tests,
follow-up commit will:
- Add reg->stack conversion in MI.
- Fix asm/disasm in MC to be stack based.
- Fix emitter to be stack based.
tests passing:
llvm-lit -v `find test -name WebAssembly`
test/CodeGen/WebAssembly
test/MC/WebAssembly
test/MC/Disassembler/WebAssembly
test/DebugInfo/WebAssembly
test/CodeGen/MIR/WebAssembly
test/tools/llvm-objdump/WebAssembly
Reviewers: dschuff, sbc100, jgravelle-google, sunfish
Subscribers: aheejin, JDevlieghere, llvm-commits
Differential Revision: https://reviews.llvm.org/D48183
llvm-svn: 334985
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/MC/Disassembler/WebAssembly/wasm.txt | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/test/MC/Disassembler/WebAssembly/wasm.txt b/llvm/test/MC/Disassembler/WebAssembly/wasm.txt index d6229f69700..63c9bb183c8 100644 --- a/llvm/test/MC/Disassembler/WebAssembly/wasm.txt +++ b/llvm/test/MC/Disassembler/WebAssembly/wasm.txt @@ -5,14 +5,14 @@ # CHECK: nop 0x01 -# CHECK: i32.add $0=, $0, $0 -# NOTE: registers are meaningless, as there is no context for what they are. +# CHECK: i32.add 0x6a -# CHECK: i64.const $0=, -1 +# CHECK: i64.const -1 0x42 0x7F -# CHECK: i64.load32_u $0=, 16($0):p2align=1 +# CHECK: i64.load32_u 16, :p2align=1 +# FIXME: fix p2align output in WebAssemblyInstPrinter 0x35 0x01 0x10 # CHECK: block @@ -25,9 +25,9 @@ # FIXME: WebAssemblyInstPrinter does not print immediates. 0x11 0x80 0x01 0x00 -# CHECK: get_local $0=, 128 +# CHECK: get_local 128 0x20 0x80 0x01 # Prefix byte example: -# CHECK: i64.trunc_u:sat/f64 $0=, $0 +# CHECK: i64.trunc_u:sat/f64 0xFC 0x07 |

