diff options
| author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-11-08 18:30:50 +0000 |
|---|---|---|
| committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-11-08 18:30:50 +0000 |
| commit | d2148caffc1f8aa975e03370e6b441169d424625 (patch) | |
| tree | 3747e8ab570fa7fb77acdce6554e9ceaa3c7dbc1 /llvm/test/MC/Disassembler/SystemZ | |
| parent | e527dc62230479e05ca0b5f23c5ed91281f847b4 (diff) | |
| download | bcm5719-llvm-d2148caffc1f8aa975e03370e6b441169d424625.tar.gz bcm5719-llvm-d2148caffc1f8aa975e03370e6b441169d424625.zip | |
[SystemZ] Refactor branch and conditional instruction patterns
Rework patterns for branches, call & return instructions,
compare-and-branch, compare-and-trap, and conditional move
instructions.
In particular, simplify creation of patterns for the extended
opcodes of instructions that take a CC mask.
Also, use semantical instruction classes for all the instructions
instead of open-coding them in SystemZInstrInfo.td.
Adds a couple of the basic branch instructions (that are unused
for codegen) for the assembler/disassembler.
llvm-svn: 286263
Diffstat (limited to 'llvm/test/MC/Disassembler/SystemZ')
| -rw-r--r-- | llvm/test/MC/Disassembler/SystemZ/insns.txt | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/llvm/test/MC/Disassembler/SystemZ/insns.txt b/llvm/test/MC/Disassembler/SystemZ/insns.txt index 6c6ac7bbd79..9a1cfe69dec 100644 --- a/llvm/test/MC/Disassembler/SystemZ/insns.txt +++ b/llvm/test/MC/Disassembler/SystemZ/insns.txt @@ -778,6 +778,24 @@ # CHECK: ay %r15, 0 0xe3 0xf0 0x00 0x00 0x00 0x5a +# CHECK: bas %r0, 0 +0x4d 0x00 0x00 0x00 + +# CHECK: bas %r1, 4095 +0x4d 0x10 0x0f 0xff + +# CHECK: bas %r2, 0(%r1) +0x4d 0x20 0x10 0x00 + +# CHECK: bas %r3, 0(%r15) +0x4d 0x30 0xf0 0x00 + +# CHECK: bas %r14, 4095(%r1,%r15) +0x4d 0xe1 0xff 0xff + +# CHECK: bas %r15, 4095(%r15,%r1) +0x4d 0xff 0x1f 0xff + # CHECK: basr %r0, %r1 0x0d 0x01 @@ -790,6 +808,84 @@ # CHECK: basr %r15, %r1 0x0d 0xf1 +# CHECK: b 0 +0x47 0xf0 0x00 0x00 + +# CHECK: b 4095 +0x47 0xf0 0x0f 0xff + +# CHECK: b 0(%r1) +0x47 0xf0 0x10 0x00 + +# CHECK: b 0(%r15) +0x47 0xf0 0xf0 0x00 + +# CHECK: b 4095(%r1,%r15) +0x47 0xf1 0xff 0xff + +# CHECK: b 4095(%r15,%r1) +0x47 0xff 0x1f 0xff + +# CHECK: bc 0, 0 +0x47 0x00 0x00 0x00 + +# CHECK: bc 0, 4095 +0x47 0x00 0x0f 0xff + +# CHECK: bc 0, 0(%r1) +0x47 0x00 0x10 0x00 + +# CHECK: bc 0, 0(%r15) +0x47 0x00 0xf0 0x00 + +# CHECK: bc 0, 4095(%r1,%r15) +0x47 0x01 0xff 0xff + +# CHECK: bc 0, 4095(%r15,%r1) +0x47 0x0f 0x1f 0xff + +# CHECK: bo 0(%r13) +0x47 0x10 0xd0 0x00 + +# CHECK: bh 0(%r12) +0x47 0x20 0xc0 0x00 + +# CHECK: bnle 0(%r11) +0x47 0x30 0xb0 0x00 + +# CHECK: bl 0(%r10) +0x47 0x40 0xa0 0x00 + +# CHECK: bnhe 0(%r9) +0x47 0x50 0x90 0x00 + +# CHECK: blh 0(%r8) +0x47 0x60 0x80 0x00 + +# CHECK: bne 0(%r7) +0x47 0x70 0x70 0x00 + +# CHECK: be 0(%r6) +0x47 0x80 0x60 0x00 + +# CHECK: bnlh 0(%r5) +0x47 0x90 0x50 0x00 + +# CHECK: bhe 0(%r4) +0x47 0xa0 0x40 0x00 + +# CHECK: bnl 0(%r3) +0x47 0xb0 0x30 0x00 + +# CHECK: ble 0(%r2) +0x47 0xc0 0x20 0x00 + +# CHECK: bnh 0(%r1) +0x47 0xd0 0x10 0x00 + +# CHECK: bno 0 +0x47 0xe0 0x00 0x00 + # CHECK: bcr 0, %r14 0x07 0x0e |

