aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/SystemZ
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-04-23 16:57:46 -0700
committerStephen Hines <srhines@google.com>2014-04-24 15:53:16 -0700
commit36b56886974eae4f9c5ebc96befd3e7bfe5de338 (patch)
treee6cfb69fbbd937f450eeb83bfb83b9da3b01275a /test/MC/SystemZ
parent69a8640022b04415ae9fac62f8ab090601d8f889 (diff)
downloadexternal_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.zip
external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.gz
external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.bz2
Update to LLVM 3.5a.
Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
Diffstat (limited to 'test/MC/SystemZ')
-rw-r--r--test/MC/SystemZ/insn-bad-z196.s290
-rw-r--r--test/MC/SystemZ/insn-bad.s100
-rw-r--r--test/MC/SystemZ/insn-good-z196.s408
3 files changed, 798 insertions, 0 deletions
diff --git a/test/MC/SystemZ/insn-bad-z196.s b/test/MC/SystemZ/insn-bad-z196.s
index 089d9b5..da23a4b 100644
--- a/test/MC/SystemZ/insn-bad-z196.s
+++ b/test/MC/SystemZ/insn-bad-z196.s
@@ -33,6 +33,62 @@
aih %r0, (1 << 31)
#CHECK: error: invalid operand
+#CHECK: cdlfbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cdlfbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: cdlfbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: cdlfbr %f0, 16, %r0, 0
+
+ cdlfbr %f0, 0, %r0, -1
+ cdlfbr %f0, 0, %r0, 16
+ cdlfbr %f0, -1, %r0, 0
+ cdlfbr %f0, 16, %r0, 0
+
+#CHECK: error: invalid operand
+#CHECK: cdlgbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cdlgbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: cdlgbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: cdlgbr %f0, 16, %r0, 0
+
+ cdlgbr %f0, 0, %r0, -1
+ cdlgbr %f0, 0, %r0, 16
+ cdlgbr %f0, -1, %r0, 0
+ cdlgbr %f0, 16, %r0, 0
+
+#CHECK: error: invalid operand
+#CHECK: celfbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: celfbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: celfbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: celfbr %f0, 16, %r0, 0
+
+ celfbr %f0, 0, %r0, -1
+ celfbr %f0, 0, %r0, 16
+ celfbr %f0, -1, %r0, 0
+ celfbr %f0, 16, %r0, 0
+
+#CHECK: error: invalid operand
+#CHECK: celgbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: celgbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: celgbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: celgbr %f0, 16, %r0, 0
+
+ celgbr %f0, 0, %r0, -1
+ celgbr %f0, 0, %r0, 16
+ celgbr %f0, -1, %r0, 0
+ celgbr %f0, 16, %r0, 0
+
+#CHECK: error: invalid operand
#CHECK: chf %r0, -524289
#CHECK: error: invalid operand
#CHECK: chf %r0, 524288
@@ -49,6 +105,96 @@
cih %r0, (1 << 31)
#CHECK: error: invalid operand
+#CHECK: clfdbr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clfdbr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clfdbr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clfdbr %r0, 16, %f0, 0
+
+ clfdbr %r0, 0, %f0, -1
+ clfdbr %r0, 0, %f0, 16
+ clfdbr %r0, -1, %f0, 0
+ clfdbr %r0, 16, %f0, 0
+
+#CHECK: error: invalid operand
+#CHECK: clfebr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clfebr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clfebr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clfebr %r0, 16, %f0, 0
+
+ clfebr %r0, 0, %f0, -1
+ clfebr %r0, 0, %f0, 16
+ clfebr %r0, -1, %f0, 0
+ clfebr %r0, 16, %f0, 0
+
+#CHECK: error: invalid operand
+#CHECK: clfxbr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clfxbr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clfxbr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clfxbr %r0, 16, %f0, 0
+#CHECK: error: invalid register pair
+#CHECK: clfxbr %r0, 0, %f14, 0
+
+ clfxbr %r0, 0, %f0, -1
+ clfxbr %r0, 0, %f0, 16
+ clfxbr %r0, -1, %f0, 0
+ clfxbr %r0, 16, %f0, 0
+ clfxbr %r0, 0, %f14, 0
+
+#CHECK: error: invalid operand
+#CHECK: clgdbr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clgdbr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clgdbr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clgdbr %r0, 16, %f0, 0
+
+ clgdbr %r0, 0, %f0, -1
+ clgdbr %r0, 0, %f0, 16
+ clgdbr %r0, -1, %f0, 0
+ clgdbr %r0, 16, %f0, 0
+
+#CHECK: error: invalid operand
+#CHECK: clgebr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clgebr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clgebr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clgebr %r0, 16, %f0, 0
+
+ clgebr %r0, 0, %f0, -1
+ clgebr %r0, 0, %f0, 16
+ clgebr %r0, -1, %f0, 0
+ clgebr %r0, 16, %f0, 0
+
+#CHECK: error: invalid operand
+#CHECK: clgxbr %r0, 0, %f0, -1
+#CHECK: error: invalid operand
+#CHECK: clgxbr %r0, 0, %f0, 16
+#CHECK: error: invalid operand
+#CHECK: clgxbr %r0, -1, %f0, 0
+#CHECK: error: invalid operand
+#CHECK: clgxbr %r0, 16, %f0, 0
+#CHECK: error: invalid register pair
+#CHECK: clgxbr %r0, 0, %f14, 0
+
+ clgxbr %r0, 0, %f0, -1
+ clgxbr %r0, 0, %f0, 16
+ clgxbr %r0, -1, %f0, 0
+ clgxbr %r0, 16, %f0, 0
+ clgxbr %r0, 0, %f14, 0
+
+#CHECK: error: invalid operand
#CHECK: clhf %r0, -524289
#CHECK: error: invalid operand
#CHECK: clhf %r0, 524288
@@ -65,6 +211,40 @@
clih %r0, (1 << 32)
#CHECK: error: invalid operand
+#CHECK: cxlfbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cxlfbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: cxlfbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: cxlfbr %f0, 16, %r0, 0
+#CHECK: error: invalid register pair
+#CHECK: cxlfbr %f2, 0, %r0, 0
+
+ cxlfbr %f0, 0, %r0, -1
+ cxlfbr %f0, 0, %r0, 16
+ cxlfbr %f0, -1, %r0, 0
+ cxlfbr %f0, 16, %r0, 0
+ cxlfbr %f2, 0, %r0, 0
+
+#CHECK: error: invalid operand
+#CHECK: cxlgbr %f0, 0, %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cxlgbr %f0, 0, %r0, 16
+#CHECK: error: invalid operand
+#CHECK: cxlgbr %f0, -1, %r0, 0
+#CHECK: error: invalid operand
+#CHECK: cxlgbr %f0, 16, %r0, 0
+#CHECK: error: invalid register pair
+#CHECK: cxlgbr %f2, 0, %r0, 0
+
+ cxlgbr %f0, 0, %r0, -1
+ cxlgbr %f0, 0, %r0, 16
+ cxlgbr %f0, -1, %r0, 0
+ cxlgbr %f0, 16, %r0, 0
+ cxlgbr %f2, 0, %r0, 0
+
+#CHECK: error: invalid operand
#CHECK: fidbra %f0, 0, %f0, -1
#CHECK: error: invalid operand
#CHECK: fidbra %f0, 0, %f0, 16
@@ -113,6 +293,116 @@
fixbra %f2, 0, %f0, 0
#CHECK: error: invalid operand
+#CHECK: laa %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laa %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laa %r0, %r0, 0(%r1,%r2)
+
+ laa %r0, %r0, -524289
+ laa %r0, %r0, 524288
+ laa %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: laag %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laag %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laag %r0, %r0, 0(%r1,%r2)
+
+ laag %r0, %r0, -524289
+ laag %r0, %r0, 524288
+ laag %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: laal %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laal %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laal %r0, %r0, 0(%r1,%r2)
+
+ laal %r0, %r0, -524289
+ laal %r0, %r0, 524288
+ laal %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: laalg %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laalg %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laalg %r0, %r0, 0(%r1,%r2)
+
+ laalg %r0, %r0, -524289
+ laalg %r0, %r0, 524288
+ laalg %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: lan %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: lan %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: lan %r0, %r0, 0(%r1,%r2)
+
+ lan %r0, %r0, -524289
+ lan %r0, %r0, 524288
+ lan %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: lang %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: lang %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: lang %r0, %r0, 0(%r1,%r2)
+
+ lang %r0, %r0, -524289
+ lang %r0, %r0, 524288
+ lang %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: lao %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: lao %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: lao %r0, %r0, 0(%r1,%r2)
+
+ lao %r0, %r0, -524289
+ lao %r0, %r0, 524288
+ lao %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: laog %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laog %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laog %r0, %r0, 0(%r1,%r2)
+
+ laog %r0, %r0, -524289
+ laog %r0, %r0, 524288
+ laog %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: lax %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: lax %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: lax %r0, %r0, 0(%r1,%r2)
+
+ lax %r0, %r0, -524289
+ lax %r0, %r0, 524288
+ lax %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
+#CHECK: laxg %r0, %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: laxg %r0, %r0, 524288
+#CHECK: error: invalid use of indexed addressing
+#CHECK: laxg %r0, %r0, 0(%r1,%r2)
+
+ laxg %r0, %r0, -524289
+ laxg %r0, %r0, 524288
+ laxg %r0, %r0, 0(%r1,%r2)
+
+#CHECK: error: invalid operand
#CHECK: lbh %r0, -524289
#CHECK: error: invalid operand
#CHECK: lbh %r0, 524288
diff --git a/test/MC/SystemZ/insn-bad.s b/test/MC/SystemZ/insn-bad.s
index 2a3fb98..8004168 100644
--- a/test/MC/SystemZ/insn-bad.s
+++ b/test/MC/SystemZ/insn-bad.s
@@ -386,6 +386,16 @@
cdb %f0, -1
cdb %f0, 4096
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: cdlfbr %f0, 0, %r0, 0
+
+ cdlfbr %f0, 0, %r0, 0
+
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: cdlgbr %f0, 0, %r0, 0
+
+ cdlgbr %f0, 0, %r0, 0
+
#CHECK: error: invalid operand
#CHECK: ceb %f0, -1
#CHECK: error: invalid operand
@@ -394,6 +404,16 @@
ceb %f0, -1
ceb %f0, 4096
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: celfbr %f0, 0, %r0, 0
+
+ celfbr %f0, 0, %r0, 0
+
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: celgbr %f0, 0, %r0, 0
+
+ celgbr %f0, 0, %r0, 0
+
#CHECK: error: invalid operand
#CHECK: cfdbr %r0, -1, %f0
#CHECK: error: invalid operand
@@ -784,6 +804,16 @@
clhf %r0, 0
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clfdbr %r0, 0, %f0, 0
+
+ clfdbr %r0, 0, %f0, 0
+
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clfebr %r0, 0, %f0, 0
+
+ clfebr %r0, 0, %f0, 0
+
#CHECK: error: invalid operand
#CHECK: clfhsi -1, 0
#CHECK: error: invalid operand
@@ -809,6 +839,11 @@
clfi %r0, -1
clfi %r0, (1 << 32)
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clfxbr %r0, 0, %f0, 0
+
+ clfxbr %r0, 0, %f0, 0
+
#CHECK: error: invalid operand
#CHECK: clg %r0, -524289
#CHECK: error: invalid operand
@@ -817,6 +852,16 @@
clg %r0, -524289
clg %r0, 524288
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clgdbr %r0, 0, %f0, 0
+
+ clgdbr %r0, 0, %f0, 0
+
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clgebr %r0, 0, %f0, 0
+
+ clgebr %r0, 0, %f0, 0
+
#CHECK: error: invalid operand
#CHECK: clgf %r0, -524289
#CHECK: error: invalid operand
@@ -936,6 +981,11 @@
clgrl %r0, 1
clgrl %r0, 0x100000000
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: clgxbr %r0, 0, %f0, 0
+
+ clgxbr %r0, 0, %f0, 0
+
#CHECK: error: invalid operand
#CHECK: clhhsi -1, 0
#CHECK: error: invalid operand
@@ -1167,6 +1217,16 @@
cxgbr %f2, %r0
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: cxlfbr %f0, 0, %r0, 0
+
+ cxlfbr %f0, 0, %r0, 0
+
+#CHECK: error: {{(instruction requires: fp-extension)?}}
+#CHECK: cxlgbr %f0, 0, %r0, 0
+
+ cxlgbr %f0, 0, %r0, 0
+
#CHECK: error: invalid operand
#CHECK: cy %r0, -524289
#CHECK: error: invalid operand
@@ -1393,6 +1453,46 @@
la %r0, -1
la %r0, 4096
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laa %r1, %r2, 100(%r3)
+ laa %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laag %r1, %r2, 100(%r3)
+ laag %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laal %r1, %r2, 100(%r3)
+ laal %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laalg %r1, %r2, 100(%r3)
+ laalg %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: lan %r1, %r2, 100(%r3)
+ lan %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: lang %r1, %r2, 100(%r3)
+ lang %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: lao %r1, %r2, 100(%r3)
+ lao %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laog %r1, %r2, 100(%r3)
+ laog %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: lax %r1, %r2, 100(%r3)
+ lax %r1, %r2, 100(%r3)
+
+#CHECK: error: {{(instruction requires: interlocked-access1)?}}
+#CHECK: laxg %r1, %r2, 100(%r3)
+ laxg %r1, %r2, 100(%r3)
+
#CHECK: error: offset out of range
#CHECK: larl %r0, -0x1000000002
#CHECK: error: offset out of range
diff --git a/test/MC/SystemZ/insn-good-z196.s b/test/MC/SystemZ/insn-good-z196.s
index 258e06f..834bdad 100644
--- a/test/MC/SystemZ/insn-good-z196.s
+++ b/test/MC/SystemZ/insn-good-z196.s
@@ -135,6 +135,62 @@
ark %r15,%r0,%r0
ark %r7,%r8,%r9
+#CHECK: cdlfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x91,0x00,0x00]
+#CHECK: cdlfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x91,0x0f,0x00]
+#CHECK: cdlfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x91,0x00,0x0f]
+#CHECK: cdlfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x91,0xf0,0x00]
+#CHECK: cdlfbr %f4, 5, %r6, 7 # encoding: [0xb3,0x91,0x57,0x46]
+#CHECK: cdlfbr %f15, 0, %r0, 0 # encoding: [0xb3,0x91,0x00,0xf0]
+
+ cdlfbr %f0, 0, %r0, 0
+ cdlfbr %f0, 0, %r0, 15
+ cdlfbr %f0, 0, %r15, 0
+ cdlfbr %f0, 15, %r0, 0
+ cdlfbr %f4, 5, %r6, 7
+ cdlfbr %f15, 0, %r0, 0
+
+#CHECK: cdlgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa1,0x00,0x00]
+#CHECK: cdlgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa1,0x0f,0x00]
+#CHECK: cdlgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa1,0x00,0x0f]
+#CHECK: cdlgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa1,0xf0,0x00]
+#CHECK: cdlgbr %f4, 5, %r6, 7 # encoding: [0xb3,0xa1,0x57,0x46]
+#CHECK: cdlgbr %f15, 0, %r0, 0 # encoding: [0xb3,0xa1,0x00,0xf0]
+
+ cdlgbr %f0, 0, %r0, 0
+ cdlgbr %f0, 0, %r0, 15
+ cdlgbr %f0, 0, %r15, 0
+ cdlgbr %f0, 15, %r0, 0
+ cdlgbr %f4, 5, %r6, 7
+ cdlgbr %f15, 0, %r0, 0
+
+#CHECK: celfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x90,0x00,0x00]
+#CHECK: celfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x90,0x0f,0x00]
+#CHECK: celfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x90,0x00,0x0f]
+#CHECK: celfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x90,0xf0,0x00]
+#CHECK: celfbr %f4, 5, %r6, 7 # encoding: [0xb3,0x90,0x57,0x46]
+#CHECK: celfbr %f15, 0, %r0, 0 # encoding: [0xb3,0x90,0x00,0xf0]
+
+ celfbr %f0, 0, %r0, 0
+ celfbr %f0, 0, %r0, 15
+ celfbr %f0, 0, %r15, 0
+ celfbr %f0, 15, %r0, 0
+ celfbr %f4, 5, %r6, 7
+ celfbr %f15, 0, %r0, 0
+
+#CHECK: celgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa0,0x00,0x00]
+#CHECK: celgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa0,0x0f,0x00]
+#CHECK: celgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa0,0x00,0x0f]
+#CHECK: celgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa0,0xf0,0x00]
+#CHECK: celgbr %f4, 5, %r6, 7 # encoding: [0xb3,0xa0,0x57,0x46]
+#CHECK: celgbr %f15, 0, %r0, 0 # encoding: [0xb3,0xa0,0x00,0xf0]
+
+ celgbr %f0, 0, %r0, 0
+ celgbr %f0, 0, %r0, 15
+ celgbr %f0, 0, %r15, 0
+ celgbr %f0, 15, %r0, 0
+ celgbr %f4, 5, %r6, 7
+ celgbr %f15, 0, %r0, 0
+
#CHECK: chf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcd]
#CHECK: chf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcd]
#CHECK: chf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcd]
@@ -171,6 +227,90 @@
cih %r0, (1 << 31) - 1
cih %r15, 0
+#CHECK: clfdbr %r0, 0, %f0, 0 # encoding: [0xb3,0x9d,0x00,0x00]
+#CHECK: clfdbr %r0, 0, %f0, 15 # encoding: [0xb3,0x9d,0x0f,0x00]
+#CHECK: clfdbr %r0, 0, %f15, 0 # encoding: [0xb3,0x9d,0x00,0x0f]
+#CHECK: clfdbr %r0, 15, %f0, 0 # encoding: [0xb3,0x9d,0xf0,0x00]
+#CHECK: clfdbr %r4, 5, %f6, 7 # encoding: [0xb3,0x9d,0x57,0x46]
+#CHECK: clfdbr %r15, 0, %f0, 0 # encoding: [0xb3,0x9d,0x00,0xf0]
+
+ clfdbr %r0, 0, %f0, 0
+ clfdbr %r0, 0, %f0, 15
+ clfdbr %r0, 0, %f15, 0
+ clfdbr %r0, 15, %f0, 0
+ clfdbr %r4, 5, %f6, 7
+ clfdbr %r15, 0, %f0, 0
+
+#CHECK: clfebr %r0, 0, %f0, 0 # encoding: [0xb3,0x9c,0x00,0x00]
+#CHECK: clfebr %r0, 0, %f0, 15 # encoding: [0xb3,0x9c,0x0f,0x00]
+#CHECK: clfebr %r0, 0, %f15, 0 # encoding: [0xb3,0x9c,0x00,0x0f]
+#CHECK: clfebr %r0, 15, %f0, 0 # encoding: [0xb3,0x9c,0xf0,0x00]
+#CHECK: clfebr %r4, 5, %f6, 7 # encoding: [0xb3,0x9c,0x57,0x46]
+#CHECK: clfebr %r15, 0, %f0, 0 # encoding: [0xb3,0x9c,0x00,0xf0]
+
+ clfebr %r0, 0, %f0, 0
+ clfebr %r0, 0, %f0, 15
+ clfebr %r0, 0, %f15, 0
+ clfebr %r0, 15, %f0, 0
+ clfebr %r4, 5, %f6, 7
+ clfebr %r15, 0, %f0, 0
+
+#CHECK: clfxbr %r0, 0, %f0, 0 # encoding: [0xb3,0x9e,0x00,0x00]
+#CHECK: clfxbr %r0, 0, %f0, 15 # encoding: [0xb3,0x9e,0x0f,0x00]
+#CHECK: clfxbr %r0, 0, %f13, 0 # encoding: [0xb3,0x9e,0x00,0x0d]
+#CHECK: clfxbr %r0, 15, %f0, 0 # encoding: [0xb3,0x9e,0xf0,0x00]
+#CHECK: clfxbr %r7, 5, %f8, 9 # encoding: [0xb3,0x9e,0x59,0x78]
+#CHECK: clfxbr %r15, 0, %f0, 0 # encoding: [0xb3,0x9e,0x00,0xf0]
+
+ clfxbr %r0, 0, %f0, 0
+ clfxbr %r0, 0, %f0, 15
+ clfxbr %r0, 0, %f13, 0
+ clfxbr %r0, 15, %f0, 0
+ clfxbr %r7, 5, %f8, 9
+ clfxbr %r15, 0, %f0, 0
+
+#CHECK: clgdbr %r0, 0, %f0, 0 # encoding: [0xb3,0xad,0x00,0x00]
+#CHECK: clgdbr %r0, 0, %f0, 15 # encoding: [0xb3,0xad,0x0f,0x00]
+#CHECK: clgdbr %r0, 0, %f15, 0 # encoding: [0xb3,0xad,0x00,0x0f]
+#CHECK: clgdbr %r0, 15, %f0, 0 # encoding: [0xb3,0xad,0xf0,0x00]
+#CHECK: clgdbr %r4, 5, %f6, 7 # encoding: [0xb3,0xad,0x57,0x46]
+#CHECK: clgdbr %r15, 0, %f0, 0 # encoding: [0xb3,0xad,0x00,0xf0]
+
+ clgdbr %r0, 0, %f0, 0
+ clgdbr %r0, 0, %f0, 15
+ clgdbr %r0, 0, %f15, 0
+ clgdbr %r0, 15, %f0, 0
+ clgdbr %r4, 5, %f6, 7
+ clgdbr %r15, 0, %f0, 0
+
+#CHECK: clgebr %r0, 0, %f0, 0 # encoding: [0xb3,0xac,0x00,0x00]
+#CHECK: clgebr %r0, 0, %f0, 15 # encoding: [0xb3,0xac,0x0f,0x00]
+#CHECK: clgebr %r0, 0, %f15, 0 # encoding: [0xb3,0xac,0x00,0x0f]
+#CHECK: clgebr %r0, 15, %f0, 0 # encoding: [0xb3,0xac,0xf0,0x00]
+#CHECK: clgebr %r4, 5, %f6, 7 # encoding: [0xb3,0xac,0x57,0x46]
+#CHECK: clgebr %r15, 0, %f0, 0 # encoding: [0xb3,0xac,0x00,0xf0]
+
+ clgebr %r0, 0, %f0, 0
+ clgebr %r0, 0, %f0, 15
+ clgebr %r0, 0, %f15, 0
+ clgebr %r0, 15, %f0, 0
+ clgebr %r4, 5, %f6, 7
+ clgebr %r15, 0, %f0, 0
+
+#CHECK: clgxbr %r0, 0, %f0, 0 # encoding: [0xb3,0xae,0x00,0x00]
+#CHECK: clgxbr %r0, 0, %f0, 15 # encoding: [0xb3,0xae,0x0f,0x00]
+#CHECK: clgxbr %r0, 0, %f13, 0 # encoding: [0xb3,0xae,0x00,0x0d]
+#CHECK: clgxbr %r0, 15, %f0, 0 # encoding: [0xb3,0xae,0xf0,0x00]
+#CHECK: clgxbr %r7, 5, %f8, 9 # encoding: [0xb3,0xae,0x59,0x78]
+#CHECK: clgxbr %r15, 0, %f0, 0 # encoding: [0xb3,0xae,0x00,0xf0]
+
+ clgxbr %r0, 0, %f0, 0
+ clgxbr %r0, 0, %f0, 15
+ clgxbr %r0, 0, %f13, 0
+ clgxbr %r0, 15, %f0, 0
+ clgxbr %r7, 5, %f8, 9
+ clgxbr %r15, 0, %f0, 0
+
#CHECK: clhf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcf]
#CHECK: clhf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcf]
#CHECK: clhf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcf]
@@ -203,6 +343,34 @@
clih %r0, (1 << 32) - 1
clih %r15, 0
+#CHECK: cxlfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x92,0x00,0x00]
+#CHECK: cxlfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x92,0x0f,0x00]
+#CHECK: cxlfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x92,0x00,0x0f]
+#CHECK: cxlfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x92,0xf0,0x00]
+#CHECK: cxlfbr %f4, 5, %r9, 10 # encoding: [0xb3,0x92,0x5a,0x49]
+#CHECK: cxlfbr %f13, 0, %r0, 0 # encoding: [0xb3,0x92,0x00,0xd0]
+
+ cxlfbr %f0, 0, %r0, 0
+ cxlfbr %f0, 0, %r0, 15
+ cxlfbr %f0, 0, %r15, 0
+ cxlfbr %f0, 15, %r0, 0
+ cxlfbr %f4, 5, %r9, 10
+ cxlfbr %f13, 0, %r0, 0
+
+#CHECK: cxlgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa2,0x00,0x00]
+#CHECK: cxlgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa2,0x0f,0x00]
+#CHECK: cxlgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa2,0x00,0x0f]
+#CHECK: cxlgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa2,0xf0,0x00]
+#CHECK: cxlgbr %f4, 5, %r9, 10 # encoding: [0xb3,0xa2,0x5a,0x49]
+#CHECK: cxlgbr %f13, 0, %r0, 0 # encoding: [0xb3,0xa2,0x00,0xd0]
+
+ cxlgbr %f0, 0, %r0, 0
+ cxlgbr %f0, 0, %r0, 15
+ cxlgbr %f0, 0, %r15, 0
+ cxlgbr %f0, 15, %r0, 0
+ cxlgbr %f4, 5, %r9, 10
+ cxlgbr %f13, 0, %r0, 0
+
#CHECK: fidbra %f0, 0, %f0, 0 # encoding: [0xb3,0x5f,0x00,0x00]
#CHECK: fidbra %f0, 0, %f0, 15 # encoding: [0xb3,0x5f,0x0f,0x00]
#CHECK: fidbra %f0, 0, %f15, 0 # encoding: [0xb3,0x5f,0x00,0x0f]
@@ -245,6 +413,246 @@
fixbra %f4, 5, %f8, 9
fixbra %f13, 0, %f0, 0
+#CHECK: laa %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf8]
+#CHECK: laa %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xf8]
+#CHECK: laa %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf8]
+#CHECK: laa %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xf8]
+#CHECK: laa %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf8]
+#CHECK: laa %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf8]
+#CHECK: laa %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf8]
+#CHECK: laa %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xf8]
+#CHECK: laa %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xf8]
+#CHECK: laa %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf8]
+#CHECK: laa %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf8]
+
+ laa %r0, %r0, -524288
+ laa %r0, %r0, -1
+ laa %r0, %r0, 0
+ laa %r0, %r0, 1
+ laa %r0, %r0, 524287
+ laa %r0, %r0, 0(%r1)
+ laa %r0, %r0, 0(%r15)
+ laa %r0, %r0, 524287(%r1)
+ laa %r0, %r0, 524287(%r15)
+ laa %r0, %r15, 0
+ laa %r15, %r0, 0
+
+#CHECK: laag %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe8]
+#CHECK: laag %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xe8]
+#CHECK: laag %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe8]
+#CHECK: laag %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xe8]
+#CHECK: laag %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe8]
+#CHECK: laag %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe8]
+#CHECK: laag %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe8]
+#CHECK: laag %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xe8]
+#CHECK: laag %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xe8]
+#CHECK: laag %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe8]
+#CHECK: laag %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe8]
+
+ laag %r0, %r0, -524288
+ laag %r0, %r0, -1
+ laag %r0, %r0, 0
+ laag %r0, %r0, 1
+ laag %r0, %r0, 524287
+ laag %r0, %r0, 0(%r1)
+ laag %r0, %r0, 0(%r15)
+ laag %r0, %r0, 524287(%r1)
+ laag %r0, %r0, 524287(%r15)
+ laag %r0, %r15, 0
+ laag %r15, %r0, 0
+
+#CHECK: laal %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xfa]
+#CHECK: laal %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xfa]
+#CHECK: laal %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xfa]
+#CHECK: laal %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xfa]
+#CHECK: laal %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xfa]
+#CHECK: laal %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xfa]
+#CHECK: laal %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xfa]
+#CHECK: laal %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xfa]
+#CHECK: laal %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xfa]
+#CHECK: laal %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xfa]
+#CHECK: laal %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xfa]
+
+ laal %r0, %r0, -524288
+ laal %r0, %r0, -1
+ laal %r0, %r0, 0
+ laal %r0, %r0, 1
+ laal %r0, %r0, 524287
+ laal %r0, %r0, 0(%r1)
+ laal %r0, %r0, 0(%r15)
+ laal %r0, %r0, 524287(%r1)
+ laal %r0, %r0, 524287(%r15)
+ laal %r0, %r15, 0
+ laal %r15, %r0, 0
+
+#CHECK: laalg %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xea]
+#CHECK: laalg %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xea]
+#CHECK: laalg %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xea]
+#CHECK: laalg %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xea]
+#CHECK: laalg %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xea]
+#CHECK: laalg %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xea]
+#CHECK: laalg %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xea]
+#CHECK: laalg %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xea]
+#CHECK: laalg %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xea]
+#CHECK: laalg %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xea]
+#CHECK: laalg %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xea]
+
+ laalg %r0, %r0, -524288
+ laalg %r0, %r0, -1
+ laalg %r0, %r0, 0
+ laalg %r0, %r0, 1
+ laalg %r0, %r0, 524287
+ laalg %r0, %r0, 0(%r1)
+ laalg %r0, %r0, 0(%r15)
+ laalg %r0, %r0, 524287(%r1)
+ laalg %r0, %r0, 524287(%r15)
+ laalg %r0, %r15, 0
+ laalg %r15, %r0, 0
+
+#CHECK: lan %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf4]
+#CHECK: lan %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xf4]
+#CHECK: lan %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf4]
+#CHECK: lan %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xf4]
+#CHECK: lan %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf4]
+#CHECK: lan %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf4]
+#CHECK: lan %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf4]
+#CHECK: lan %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xf4]
+#CHECK: lan %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xf4]
+#CHECK: lan %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf4]
+#CHECK: lan %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf4]
+
+ lan %r0, %r0, -524288
+ lan %r0, %r0, -1
+ lan %r0, %r0, 0
+ lan %r0, %r0, 1
+ lan %r0, %r0, 524287
+ lan %r0, %r0, 0(%r1)
+ lan %r0, %r0, 0(%r15)
+ lan %r0, %r0, 524287(%r1)
+ lan %r0, %r0, 524287(%r15)
+ lan %r0, %r15, 0
+ lan %r15, %r0, 0
+
+#CHECK: lang %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe4]
+#CHECK: lang %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xe4]
+#CHECK: lang %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe4]
+#CHECK: lang %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xe4]
+#CHECK: lang %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe4]
+#CHECK: lang %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe4]
+#CHECK: lang %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe4]
+#CHECK: lang %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xe4]
+#CHECK: lang %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xe4]
+#CHECK: lang %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe4]
+#CHECK: lang %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe4]
+
+ lang %r0, %r0, -524288
+ lang %r0, %r0, -1
+ lang %r0, %r0, 0
+ lang %r0, %r0, 1
+ lang %r0, %r0, 524287
+ lang %r0, %r0, 0(%r1)
+ lang %r0, %r0, 0(%r15)
+ lang %r0, %r0, 524287(%r1)
+ lang %r0, %r0, 524287(%r15)
+ lang %r0, %r15, 0
+ lang %r15, %r0, 0
+
+#CHECK: lao %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf6]
+#CHECK: lao %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xf6]
+#CHECK: lao %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf6]
+#CHECK: lao %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xf6]
+#CHECK: lao %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf6]
+#CHECK: lao %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf6]
+#CHECK: lao %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf6]
+#CHECK: lao %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xf6]
+#CHECK: lao %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xf6]
+#CHECK: lao %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf6]
+#CHECK: lao %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf6]
+
+ lao %r0, %r0, -524288
+ lao %r0, %r0, -1
+ lao %r0, %r0, 0
+ lao %r0, %r0, 1
+ lao %r0, %r0, 524287
+ lao %r0, %r0, 0(%r1)
+ lao %r0, %r0, 0(%r15)
+ lao %r0, %r0, 524287(%r1)
+ lao %r0, %r0, 524287(%r15)
+ lao %r0, %r15, 0
+ lao %r15, %r0, 0
+
+#CHECK: laog %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe6]
+#CHECK: laog %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xe6]
+#CHECK: laog %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe6]
+#CHECK: laog %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xe6]
+#CHECK: laog %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe6]
+#CHECK: laog %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe6]
+#CHECK: laog %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe6]
+#CHECK: laog %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xe6]
+#CHECK: laog %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xe6]
+#CHECK: laog %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe6]
+#CHECK: laog %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe6]
+
+ laog %r0, %r0, -524288
+ laog %r0, %r0, -1
+ laog %r0, %r0, 0
+ laog %r0, %r0, 1
+ laog %r0, %r0, 524287
+ laog %r0, %r0, 0(%r1)
+ laog %r0, %r0, 0(%r15)
+ laog %r0, %r0, 524287(%r1)
+ laog %r0, %r0, 524287(%r15)
+ laog %r0, %r15, 0
+ laog %r15, %r0, 0
+
+#CHECK: lax %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf7]
+#CHECK: lax %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xf7]
+#CHECK: lax %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf7]
+#CHECK: lax %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xf7]
+#CHECK: lax %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf7]
+#CHECK: lax %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf7]
+#CHECK: lax %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf7]
+#CHECK: lax %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xf7]
+#CHECK: lax %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xf7]
+#CHECK: lax %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf7]
+#CHECK: lax %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf7]
+
+ lax %r0, %r0, -524288
+ lax %r0, %r0, -1
+ lax %r0, %r0, 0
+ lax %r0, %r0, 1
+ lax %r0, %r0, 524287
+ lax %r0, %r0, 0(%r1)
+ lax %r0, %r0, 0(%r15)
+ lax %r0, %r0, 524287(%r1)
+ lax %r0, %r0, 524287(%r15)
+ lax %r0, %r15, 0
+ lax %r15, %r0, 0
+
+#CHECK: laxg %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe7]
+#CHECK: laxg %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xe7]
+#CHECK: laxg %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe7]
+#CHECK: laxg %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0xe7]
+#CHECK: laxg %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe7]
+#CHECK: laxg %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe7]
+#CHECK: laxg %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe7]
+#CHECK: laxg %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xe7]
+#CHECK: laxg %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xe7]
+#CHECK: laxg %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe7]
+#CHECK: laxg %r15, %r0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe7]
+
+ laxg %r0, %r0, -524288
+ laxg %r0, %r0, -1
+ laxg %r0, %r0, 0
+ laxg %r0, %r0, 1
+ laxg %r0, %r0, 524287
+ laxg %r0, %r0, 0(%r1)
+ laxg %r0, %r0, 0(%r15)
+ laxg %r0, %r0, 524287(%r1)
+ laxg %r0, %r0, 524287(%r15)
+ laxg %r0, %r15, 0
+ laxg %r15, %r0, 0
+
#CHECK: lbh %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc0]
#CHECK: lbh %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc0]
#CHECK: lbh %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc0]