diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-18 09:56:40 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-18 09:56:40 +0000 |
commit | e2d6f91d63a2e8cf77b07794cda7d9ef72504769 (patch) | |
tree | 8aaa9c82d2ca65020e98eb5954302f1e01a81e2a /test/MC/Disassembler | |
parent | 8634b0ee47be832fbf3fd6ceebb8ac9104106bc2 (diff) | |
download | external_llvm-e2d6f91d63a2e8cf77b07794cda7d9ef72504769.zip external_llvm-e2d6f91d63a2e8cf77b07794cda7d9ef72504769.tar.gz external_llvm-e2d6f91d63a2e8cf77b07794cda7d9ef72504769.tar.bz2 |
[SystemZ] Add unsigned compare-and-branch instructions
For some reason I never got around to adding these at the same time as
the signed versions. No idea why.
I'm not sure whether this SystemZII::BranchC* stuff is useful, or whether
it should just be replaced with an "is normal" flag. I'll leave that
for later though.
There are some boundary conditions that can be tweaked, such as preferring
unsigned comparisons for equality with [128, 256), and "<= 255" over "< 256",
but again I'll leave those for a separate patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190930 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/Disassembler')
-rw-r--r-- | test/MC/Disassembler/SystemZ/insns-pcrel.txt | 368 |
1 files changed, 368 insertions, 0 deletions
diff --git a/test/MC/Disassembler/SystemZ/insns-pcrel.txt b/test/MC/Disassembler/SystemZ/insns-pcrel.txt index c250f19..b7edab6 100644 --- a/test/MC/Disassembler/SystemZ/insns-pcrel.txt +++ b/test/MC/Disassembler/SystemZ/insns-pcrel.txt @@ -1362,3 +1362,371 @@ # 0x000007aa: # CHECK: pfdrl 15, 0x1000007a8 0xc6 0xf2 0x7f 0xff 0xff 0xff + +# 0x000007b0: +# CHECK: clgrj %r0, %r0, 0, 0x7b0 +0xec 0x00 0x00 0x00 0x00 0x65 + +# 0x000007b6: +# CHECK: clgrj %r0, %r15, 0, 0x7b6 +0xec 0x0f 0x00 0x00 0x00 0x65 + +# 0x000007bc: +# CHECK: clgrj %r15, %r0, 0, 0x7bc +0xec 0xf0 0x00 0x00 0x00 0x65 + +# 0x000007c2: +# CHECK: clgrj %r7, %r8, 0, 0x7c2 +0xec 0x78 0x00 0x00 0x00 0x65 + +# 0x000007c8: +# CHECK: clgrj %r0, %r0, 0, 0x7c6 +0xec 0x00 0xff 0xff 0x00 0x65 + +# 0x000007ce: +# CHECK: clgrj %r0, %r0, 0, 0xffffffffffff07ce +0xec 0x00 0x80 0x00 0x00 0x65 + +# 0x000007d4: +# CHECK: clgrj %r0, %r0, 0, 0x107d2 +0xec 0x00 0x7f 0xff 0x00 0x65 + +# 0x000007da: +# CHECK: clgrj %r0, %r0, 1, 0x7da +0xec 0x00 0x00 0x00 0x10 0x65 + +# 0x000007e0: +# CHECK: clgrjh %r0, %r0, 0x7e0 +0xec 0x00 0x00 0x00 0x20 0x65 + +# 0x000007e6: +# CHECK: clgrj %r0, %r0, 3, 0x7e6 +0xec 0x00 0x00 0x00 0x30 0x65 + +# 0x000007ec: +# CHECK: clgrjl %r0, %r0, 0x7ec +0xec 0x00 0x00 0x00 0x40 0x65 + +# 0x000007f2: +# CHECK: clgrj %r0, %r0, 5, 0x7f2 +0xec 0x00 0x00 0x00 0x50 0x65 + +# 0x000007f8: +# CHECK: clgrjlh %r0, %r0, 0x7f8 +0xec 0x00 0x00 0x00 0x60 0x65 + +# 0x000007fe: +# CHECK: clgrj %r0, %r0, 7, 0x7fe +0xec 0x00 0x00 0x00 0x70 0x65 + +# 0x00000804: +# CHECK: clgrje %r0, %r0, 0x804 +0xec 0x00 0x00 0x00 0x80 0x65 + +# 0x0000080a: +# CHECK: clgrj %r0, %r0, 9, 0x80a +0xec 0x00 0x00 0x00 0x90 0x65 + +# 0x00000810: +# CHECK: clgrjhe %r0, %r0, 0x810 +0xec 0x00 0x00 0x00 0xa0 0x65 + +# 0x00000816: +# CHECK: clgrj %r0, %r0, 11, 0x816 +0xec 0x00 0x00 0x00 0xb0 0x65 + +# 0x0000081c: +# CHECK: clgrjle %r0, %r0, 0x81c +0xec 0x00 0x00 0x00 0xc0 0x65 + +# 0x00000822: +# CHECK: clgrj %r0, %r0, 13, 0x822 +0xec 0x00 0x00 0x00 0xd0 0x65 + +# 0x00000828: +# CHECK: clgrj %r0, %r0, 14, 0x828 +0xec 0x00 0x00 0x00 0xe0 0x65 + +# 0x0000082e: +# CHECK: clgrj %r0, %r0, 15, 0x82e +0xec 0x00 0x00 0x00 0xf0 0x65 + +# 0x00000834: +# CHECK: clrj %r0, %r0, 0, 0x834 +0xec 0x00 0x00 0x00 0x00 0x77 + +# 0x0000083a: +# CHECK: clrj %r0, %r15, 0, 0x83a +0xec 0x0f 0x00 0x00 0x00 0x77 + +# 0x00000840: +# CHECK: clrj %r15, %r0, 0, 0x840 +0xec 0xf0 0x00 0x00 0x00 0x77 + +# 0x00000846: +# CHECK: clrj %r7, %r8, 0, 0x846 +0xec 0x78 0x00 0x00 0x00 0x77 + +# 0x0000084c: +# CHECK: clrj %r0, %r0, 0, 0x84a +0xec 0x00 0xff 0xff 0x00 0x77 + +# 0x00000852: +# CHECK: clrj %r0, %r0, 0, 0xffffffffffff0852 +0xec 0x00 0x80 0x00 0x00 0x77 + +# 0x00000858: +# CHECK: clrj %r0, %r0, 0, 0x10856 +0xec 0x00 0x7f 0xff 0x00 0x77 + +# 0x0000085e: +# CHECK: clrj %r0, %r0, 1, 0x85e +0xec 0x00 0x00 0x00 0x10 0x77 + +# 0x00000864: +# CHECK: clrjh %r0, %r0, 0x864 +0xec 0x00 0x00 0x00 0x20 0x77 + +# 0x0000086a: +# CHECK: clrj %r0, %r0, 3, 0x86a +0xec 0x00 0x00 0x00 0x30 0x77 + +# 0x00000870: +# CHECK: clrjl %r0, %r0, 0x870 +0xec 0x00 0x00 0x00 0x40 0x77 + +# 0x00000876: +# CHECK: clrj %r0, %r0, 5, 0x876 +0xec 0x00 0x00 0x00 0x50 0x77 + +# 0x0000087c: +# CHECK: clrjlh %r0, %r0, 0x87c +0xec 0x00 0x00 0x00 0x60 0x77 + +# 0x00000882: +# CHECK: clrj %r0, %r0, 7, 0x882 +0xec 0x00 0x00 0x00 0x70 0x77 + +# 0x00000888: +# CHECK: clrje %r0, %r0, 0x888 +0xec 0x00 0x00 0x00 0x80 0x77 + +# 0x0000088e: +# CHECK: clrj %r0, %r0, 9, 0x88e +0xec 0x00 0x00 0x00 0x90 0x77 + +# 0x00000894: +# CHECK: clrjhe %r0, %r0, 0x894 +0xec 0x00 0x00 0x00 0xa0 0x77 + +# 0x0000089a: +# CHECK: clrj %r0, %r0, 11, 0x89a +0xec 0x00 0x00 0x00 0xb0 0x77 + +# 0x000008a0: +# CHECK: clrjle %r0, %r0, 0x8a0 +0xec 0x00 0x00 0x00 0xc0 0x77 + +# 0x000008a6: +# CHECK: clrj %r0, %r0, 13, 0x8a6 +0xec 0x00 0x00 0x00 0xd0 0x77 + +# 0x000008ac: +# CHECK: clrj %r0, %r0, 14, 0x8ac +0xec 0x00 0x00 0x00 0xe0 0x77 + +# 0x000008b2: +# CHECK: clrj %r0, %r0, 15, 0x8b2 +0xec 0x00 0x00 0x00 0xf0 0x77 + +# 0x000008b8: +# CHECK: clgij %r0, 0, 0, 0x8b8 +0xec 0x00 0x00 0x00 0x00 0x7d + +# 0x000008be: +# CHECK: clgij %r0, 127, 0, 0x8be +0xec 0x00 0x00 0x00 0x7f 0x7d + +# 0x000008c4: +# CHECK: clgij %r0, 128, 0, 0x8c4 +0xec 0x00 0x00 0x00 0x80 0x7d + +# 0x000008ca: +# CHECK: clgij %r0, 255, 0, 0x8ca +0xec 0x00 0x00 0x00 0xff 0x7d + +# 0x000008d0: +# CHECK: clgij %r15, 0, 0, 0x8d0 +0xec 0xf0 0x00 0x00 0x00 0x7d + +# 0x000008d6: +# CHECK: clgij %r7, 100, 0, 0x8d6 +0xec 0x70 0x00 0x00 0x64 0x7d + +# 0x000008dc: +# CHECK: clgij %r0, 0, 0, 0x8da +0xec 0x00 0xff 0xff 0x00 0x7d + +# 0x000008e2: +# CHECK: clgij %r0, 0, 0, 0xffffffffffff08e2 +0xec 0x00 0x80 0x00 0x00 0x7d + +# 0x000008e8: +# CHECK: clgij %r0, 0, 0, 0x108e6 +0xec 0x00 0x7f 0xff 0x00 0x7d + +# 0x000008ee: +# CHECK: clgij %r0, 0, 1, 0x8ee +0xec 0x01 0x00 0x00 0x00 0x7d + +# 0x000008f4: +# CHECK: clgijh %r0, 0, 0x8f4 +0xec 0x02 0x00 0x00 0x00 0x7d + +# 0x000008fa: +# CHECK: clgij %r0, 0, 3, 0x8fa +0xec 0x03 0x00 0x00 0x00 0x7d + +# 0x00000900: +# CHECK: clgijl %r0, 0, 0x900 +0xec 0x04 0x00 0x00 0x00 0x7d + +# 0x00000906: +# CHECK: clgij %r0, 0, 5, 0x906 +0xec 0x05 0x00 0x00 0x00 0x7d + +# 0x0000090c: +# CHECK: clgijlh %r0, 0, 0x90c +0xec 0x06 0x00 0x00 0x00 0x7d + +# 0x00000912: +# CHECK: clgij %r0, 0, 7, 0x912 +0xec 0x07 0x00 0x00 0x00 0x7d + +# 0x00000918: +# CHECK: clgije %r0, 0, 0x918 +0xec 0x08 0x00 0x00 0x00 0x7d + +# 0x0000091e: +# CHECK: clgij %r0, 0, 9, 0x91e +0xec 0x09 0x00 0x00 0x00 0x7d + +# 0x00000924: +# CHECK: clgijhe %r0, 0, 0x924 +0xec 0x0a 0x00 0x00 0x00 0x7d + +# 0x0000092a: +# CHECK: clgij %r0, 0, 11, 0x92a +0xec 0x0b 0x00 0x00 0x00 0x7d + +# 0x00000930: +# CHECK: clgijle %r0, 0, 0x930 +0xec 0x0c 0x00 0x00 0x00 0x7d + +# 0x00000936: +# CHECK: clgij %r0, 0, 13, 0x936 +0xec 0x0d 0x00 0x00 0x00 0x7d + +# 0x0000093c: +# CHECK: clgij %r0, 0, 14, 0x93c +0xec 0x0e 0x00 0x00 0x00 0x7d + +# 0x00000942: +# CHECK: clgij %r0, 0, 15, 0x942 +0xec 0x0f 0x00 0x00 0x00 0x7d + +# 0x00000948: +# CHECK: clij %r0, 0, 0, 0x948 +0xec 0x00 0x00 0x00 0x00 0x7f + +# 0x0000094e: +# CHECK: clij %r0, 127, 0, 0x94e +0xec 0x00 0x00 0x00 0x7f 0x7f + +# 0x00000954: +# CHECK: clij %r0, 128, 0, 0x954 +0xec 0x00 0x00 0x00 0x80 0x7f + +# 0x0000095a: +# CHECK: clij %r0, 255, 0, 0x95a +0xec 0x00 0x00 0x00 0xff 0x7f + +# 0x00000960: +# CHECK: clij %r15, 0, 0, 0x960 +0xec 0xf0 0x00 0x00 0x00 0x7f + +# 0x00000966: +# CHECK: clij %r7, 100, 0, 0x966 +0xec 0x70 0x00 0x00 0x64 0x7f + +# 0x0000096c: +# CHECK: clij %r0, 0, 0, 0x96a +0xec 0x00 0xff 0xff 0x00 0x7f + +# 0x00000972: +# CHECK: clij %r0, 0, 0, 0xffffffffffff0972 +0xec 0x00 0x80 0x00 0x00 0x7f + +# 0x00000978: +# CHECK: clij %r0, 0, 0, 0x10976 +0xec 0x00 0x7f 0xff 0x00 0x7f + +# 0x0000097e: +# CHECK: clij %r0, 0, 1, 0x97e +0xec 0x01 0x00 0x00 0x00 0x7f + +# 0x00000984: +# CHECK: clijh %r0, 0, 0x984 +0xec 0x02 0x00 0x00 0x00 0x7f + +# 0x0000098a: +# CHECK: clij %r0, 0, 3, 0x98a +0xec 0x03 0x00 0x00 0x00 0x7f + +# 0x00000990: +# CHECK: clijl %r0, 0, 0x990 +0xec 0x04 0x00 0x00 0x00 0x7f + +# 0x00000996: +# CHECK: clij %r0, 0, 5, 0x996 +0xec 0x05 0x00 0x00 0x00 0x7f + +# 0x0000099c: +# CHECK: clijlh %r0, 0, 0x99c +0xec 0x06 0x00 0x00 0x00 0x7f + +# 0x000009a2: +# CHECK: clij %r0, 0, 7, 0x9a2 +0xec 0x07 0x00 0x00 0x00 0x7f + +# 0x000009a8: +# CHECK: clije %r0, 0, 0x9a8 +0xec 0x08 0x00 0x00 0x00 0x7f + +# 0x000009ae: +# CHECK: clij %r0, 0, 9, 0x9ae +0xec 0x09 0x00 0x00 0x00 0x7f + +# 0x000009b4: +# CHECK: clijhe %r0, 0, 0x9b4 +0xec 0x0a 0x00 0x00 0x00 0x7f + +# 0x000009ba: +# CHECK: clij %r0, 0, 11, 0x9ba +0xec 0x0b 0x00 0x00 0x00 0x7f + +# 0x000009c0: +# CHECK: clijle %r0, 0, 0x9c0 +0xec 0x0c 0x00 0x00 0x00 0x7f + +# 0x000009c6: +# CHECK: clij %r0, 0, 13, 0x9c6 +0xec 0x0d 0x00 0x00 0x00 0x7f + +# 0x000009cc: +# CHECK: clij %r0, 0, 14, 0x9cc +0xec 0x0e 0x00 0x00 0x00 0x7f + +# 0x000009d2: +# CHECK: clij %r0, 0, 15, 0x9d2 +0xec 0x0f 0x00 0x00 0x00 0x7f |