blob: dbe5b71d92dd3aac0f373ee4d25754b107fef919 [file] [log] [blame]
# For z10 only.
# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z10 < %s 2> %t
# RUN: FileCheck < %t %s
# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=arch8 < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: a %r0, -1
#CHECK: error: invalid operand
#CHECK: a %r0, 4096
a %r0, -1
a %r0, 4096
#CHECK: error: invalid operand
#CHECK: ad %f0, -1
#CHECK: error: invalid operand
#CHECK: ad %f0, 4096
ad %f0, -1
ad %f0, 4096
#CHECK: error: invalid operand
#CHECK: adb %f0, -1
#CHECK: error: invalid operand
#CHECK: adb %f0, 4096
adb %f0, -1
adb %f0, 4096
#CHECK: error: instruction requires: fp-extension
#CHECK: adtra %f0, %f0, %f0, 0
adtra %f0, %f0, %f0, 0
#CHECK: error: invalid operand
#CHECK: ae %f0, -1
#CHECK: error: invalid operand
#CHECK: ae %f0, 4096
ae %f0, -1
ae %f0, 4096
#CHECK: error: invalid operand
#CHECK: aeb %f0, -1
#CHECK: error: invalid operand
#CHECK: aeb %f0, 4096
aeb %f0, -1
aeb %f0, 4096
#CHECK: error: invalid operand
#CHECK: afi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: afi %r0, (1 << 31)
afi %r0, (-1 << 31) - 1
afi %r0, (1 << 31)
#CHECK: error: invalid operand
#CHECK: ag %r0, -524289
#CHECK: error: invalid operand
#CHECK: ag %r0, 524288
ag %r0, -524289
ag %r0, 524288
#CHECK: error: invalid operand
#CHECK: agf %r0, -524289
#CHECK: error: invalid operand
#CHECK: agf %r0, 524288
agf %r0, -524289
agf %r0, 524288
#CHECK: error: invalid operand
#CHECK: agfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: agfi %r0, (1 << 31)
agfi %r0, (-1 << 31) - 1
agfi %r0, (1 << 31)
#CHECK: error: invalid operand
#CHECK: aghi %r0, -32769
#CHECK: error: invalid operand
#CHECK: aghi %r0, 32768
#CHECK: error: invalid operand
#CHECK: aghi %r0, foo
aghi %r0, -32769
aghi %r0, 32768
aghi %r0, foo
#CHECK: error: instruction requires: distinct-ops
#CHECK: aghik %r1, %r2, 3
aghik %r1, %r2, 3
#CHECK: error: instruction requires: distinct-ops
#CHECK: agrk %r2,%r3,%r4
agrk %r2,%r3,%r4
#CHECK: error: invalid operand
#CHECK: agsi -524289, 0
#CHECK: error: invalid operand
#CHECK: agsi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: agsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: agsi 0, -129
#CHECK: error: invalid operand
#CHECK: agsi 0, 128
agsi -524289, 0
agsi 524288, 0
agsi 0(%r1,%r2), 0
agsi 0, -129
agsi 0, 128
#CHECK: error: invalid operand
#CHECK: ah %r0, -1
#CHECK: error: invalid operand
#CHECK: ah %r0, 4096
ah %r0, -1
ah %r0, 4096
#CHECK: error: instruction requires: high-word
#CHECK: ahhhr %r0, %r0, %r0
ahhhr %r0, %r0, %r0
#CHECK: error: instruction requires: high-word
#CHECK: ahhlr %r0, %r0, %r0
ahhlr %r0, %r0, %r0
#CHECK: error: invalid operand
#CHECK: ahi %r0, -32769
#CHECK: error: invalid operand
#CHECK: ahi %r0, 32768
#CHECK: error: invalid operand
#CHECK: ahi %r0, foo
ahi %r0, -32769
ahi %r0, 32768
ahi %r0, foo
#CHECK: error: instruction requires: distinct-ops
#CHECK: ahik %r1, %r2, 3
ahik %r1, %r2, 3
#CHECK: error: invalid operand
#CHECK: ahy %r0, -524289
#CHECK: error: invalid operand
#CHECK: ahy %r0, 524288
ahy %r0, -524289
ahy %r0, 524288
#CHECK: error: instruction requires: high-word
#CHECK: aih %r0, 0
aih %r0, 0
#CHECK: error: invalid operand
#CHECK: al %r0, -1
#CHECK: error: invalid operand
#CHECK: al %r0, 4096
al %r0, -1
al %r0, 4096
#CHECK: error: invalid operand
#CHECK: alc %r0, -524289
#CHECK: error: invalid operand
#CHECK: alc %r0, 524288
alc %r0, -524289
alc %r0, 524288
#CHECK: error: invalid operand
#CHECK: alcg %r0, -524289
#CHECK: error: invalid operand
#CHECK: alcg %r0, 524288
alcg %r0, -524289
alcg %r0, 524288
#CHECK: error: invalid operand
#CHECK: alfi %r0, -1
#CHECK: error: invalid operand
#CHECK: alfi %r0, (1 << 32)
alfi %r0, -1
alfi %r0, (1 << 32)
#CHECK: error: invalid operand
#CHECK: alg %r0, -524289
#CHECK: error: invalid operand
#CHECK: alg %r0, 524288
alg %r0, -524289
alg %r0, 524288
#CHECK: error: invalid operand
#CHECK: algf %r0, -524289
#CHECK: error: invalid operand
#CHECK: algf %r0, 524288
algf %r0, -524289
algf %r0, 524288
#CHECK: error: invalid operand
#CHECK: algfi %r0, -1
#CHECK: error: invalid operand
#CHECK: algfi %r0, (1 << 32)
algfi %r0, -1
algfi %r0, (1 << 32)
#CHECK: error: instruction requires: distinct-ops
#CHECK: alghsik %r1, %r2, 3
alghsik %r1, %r2, 3
#CHECK: error: instruction requires: distinct-ops
#CHECK: algrk %r2,%r3,%r4
algrk %r2,%r3,%r4
#CHECK: error: instruction requires: high-word
#CHECK: alhhhr %r0, %r0, %r0
alhhhr %r0, %r0, %r0
#CHECK: error: instruction requires: high-word
#CHECK: alhhlr %r0, %r0, %r0
alhhlr %r0, %r0, %r0
#CHECK: error: instruction requires: distinct-ops
#CHECK: alhsik %r1, %r2, 3
alhsik %r1, %r2, 3
#CHECK: error: instruction requires: distinct-ops
#CHECK: alrk %r2,%r3,%r4
alrk %r2,%r3,%r4
#CHECK: error: invalid operand
#CHECK: algsi -524289, 0
#CHECK: error: invalid operand
#CHECK: algsi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: algsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: algsi 0, -129
#CHECK: error: invalid operand
#CHECK: algsi 0, 128
algsi -524289, 0
algsi 524288, 0
algsi 0(%r1,%r2), 0
algsi 0, -129
algsi 0, 128
#CHECK: error: invalid operand
#CHECK: alsi -524289, 0
#CHECK: error: invalid operand
#CHECK: alsi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: alsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: alsi 0, -129
#CHECK: error: invalid operand
#CHECK: alsi 0, 128
alsi -524289, 0
alsi 524288, 0
alsi 0(%r1,%r2), 0
alsi 0, -129
alsi 0, 128
#CHECK: error: instruction requires: high-word
#CHECK: alsih %r0, 0
alsih %r0, 0
#CHECK: error: instruction requires: high-word
#CHECK: alsihn %r0, 0
alsihn %r0, 0
#CHECK: error: invalid operand
#CHECK: aly %r0, -524289
#CHECK: error: invalid operand
#CHECK: aly %r0, 524288
aly %r0, -524289
aly %r0, 524288
#CHECK: error: missing length in address
#CHECK: ap 0, 0(1)
#CHECK: error: missing length in address
#CHECK: ap 0(1), 0
#CHECK: error: missing length in address
#CHECK: ap 0(%r1), 0(1,%r1)
#CHECK: error: missing length in address
#CHECK: ap 0(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(0,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(1,%r1), 0(0,%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(17,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(1,%r1), 0(17,%r1)
#CHECK: error: invalid operand
#CHECK: ap -1(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: ap 4096(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(1,%r1), -1(1,%r1)
#CHECK: error: invalid operand
#CHECK: ap 0(1,%r1), 4096(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: ap 0(%r1,%r2), 0(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: ap 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: ap 0(-), 0(1)
ap 0, 0(1)
ap 0(1), 0
ap 0(%r1), 0(1,%r1)
ap 0(1,%r1), 0(%r1)
ap 0(0,%r1), 0(1,%r1)
ap 0(1,%r1), 0(0,%r1)
ap 0(17,%r1), 0(1,%r1)
ap 0(1,%r1), 0(17,%r1)
ap -1(1,%r1), 0(1,%r1)
ap 4096(1,%r1), 0(1,%r1)
ap 0(1,%r1), -1(1,%r1)
ap 0(1,%r1), 4096(1,%r1)
ap 0(%r1,%r2), 0(1,%r1)
ap 0(1,%r2), 0(%r1,%r2)
ap 0(-), 0(1)
#CHECK: error: instruction requires: distinct-ops
#CHECK: ark %r2,%r3,%r4
ark %r2,%r3,%r4
#CHECK: error: invalid operand
#CHECK: asi -524289, 0
#CHECK: error: invalid operand
#CHECK: asi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: asi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: asi 0, -129
#CHECK: error: invalid operand
#CHECK: asi 0, 128
asi -524289, 0
asi 524288, 0
asi 0(%r1,%r2), 0
asi 0, -129
asi 0, 128
#CHECK: error: invalid operand
#CHECK: au %f0, -1
#CHECK: error: invalid operand
#CHECK: au %f0, 4096
au %f0, -1
au %f0, 4096
#CHECK: error: invalid operand
#CHECK: aw %f0, -1
#CHECK: error: invalid operand
#CHECK: aw %f0, 4096
aw %f0, -1
aw %f0, 4096
#CHECK: error: invalid register pair
#CHECK: axbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: axbr %f2, %f0
axbr %f0, %f2
axbr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: axr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: axr %f2, %f0
axr %f0, %f2
axr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: axtr %f0, %f0, %f2
#CHECK: error: invalid register pair
#CHECK: axtr %f0, %f2, %f0
#CHECK: error: invalid register pair
#CHECK: axtr %f2, %f0, %f0
axtr %f0, %f0, %f2
axtr %f0, %f2, %f0
axtr %f2, %f0, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: axtra %f0, %f0, %f0, 0
axtra %f0, %f0, %f0, 0
#CHECK: error: invalid operand
#CHECK: ay %r0, -524289
#CHECK: error: invalid operand
#CHECK: ay %r0, 524288
ay %r0, -524289
ay %r0, 524288
#CHECK: error: invalid operand
#CHECK: bal %r0, -1
#CHECK: error: invalid operand
#CHECK: bal %r0, 4096
bal %r0, -1
bal %r0, 4096
#CHECK: error: invalid operand
#CHECK: bas %r0, -1
#CHECK: error: invalid operand
#CHECK: bas %r0, 4096
bas %r0, -1
bas %r0, 4096
#CHECK: error: invalid operand
#CHECK: bc -1, 0(%r1)
#CHECK: error: invalid operand
#CHECK: bc 16, 0(%r1)
#CHECK: error: invalid operand
#CHECK: bc 0, -1
#CHECK: error: invalid operand
#CHECK: bc 0, 4096
bc -1, 0(%r1)
bc 16, 0(%r1)
bc 0, -1
bc 0, 4096
#CHECK: error: invalid operand
#CHECK: bcr -1, %r1
#CHECK: error: invalid operand
#CHECK: bcr 16, %r1
bcr -1, %r1
bcr 16, %r1
#CHECK: error: invalid operand
#CHECK: bct %r0, -1
#CHECK: error: invalid operand
#CHECK: bct %r0, 4096
bct %r0, -1
bct %r0, 4096
#CHECK: error: invalid operand
#CHECK: bctg %r0, -524289
#CHECK: error: invalid operand
#CHECK: bctg %r0, 524288
bctg %r0, -524289
bctg %r0, 524288
#CHECK: error: offset out of range
#CHECK: bras %r0, -0x100002
#CHECK: error: offset out of range
#CHECK: bras %r0, -1
#CHECK: error: offset out of range
#CHECK: bras %r0, 1
#CHECK: error: offset out of range
#CHECK: bras %r0, 0x10000
#CHECK: error: offset out of range
#CHECK: jas %r0, -0x100002
#CHECK: error: offset out of range
#CHECK: jas %r0, -1
#CHECK: error: offset out of range
#CHECK: jas %r0, 1
#CHECK: error: offset out of range
#CHECK: jas %r0, 0x10000
bras %r0, -0x100002
bras %r0, -1
bras %r0, 1
bras %r0, 0x10000
jas %r0, -0x100002
jas %r0, -1
jas %r0, 1
jas %r0, 0x10000
#CHECK: error: offset out of range
#CHECK: brasl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: brasl %r0, -1
#CHECK: error: offset out of range
#CHECK: brasl %r0, 1
#CHECK: error: offset out of range
#CHECK: brasl %r0, 0x100000000
#CHECK: error: offset out of range
#CHECK: jasl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: jasl %r0, -1
#CHECK: error: offset out of range
#CHECK: jasl %r0, 1
#CHECK: error: offset out of range
#CHECK: jasl %r0, 0x100000000
brasl %r0, -0x1000000002
brasl %r0, -1
brasl %r0, 1
brasl %r0, 0x100000000
jasl %r0, -0x1000000002
jasl %r0, -1
jasl %r0, 1
jasl %r0, 0x100000000
#CHECK: error: offset out of range
#CHECK: brc 0, -0x100002
#CHECK: error: offset out of range
#CHECK: brc 0, -1
#CHECK: error: offset out of range
#CHECK: brc 0, 1
#CHECK: error: offset out of range
#CHECK: brc 0, 0x10000
#CHECK: error: offset out of range
#CHECK: jnop -0x100002
#CHECK: error: offset out of range
#CHECK: jnop -1
#CHECK: error: offset out of range
#CHECK: jnop 1
#CHECK: error: offset out of range
#CHECK: jnop 0x10000
brc 0, -0x100002
brc 0, -1
brc 0, 1
brc 0, 0x10000
jnop -0x100002
jnop -1
jnop 1
jnop 0x10000
#CHECK: error: invalid instruction
#CHECK: jlu label
#CHECK: error: invalid instruction
#CHECK: jlne label
#CHECK: error: invalid instruction
#CHECK: jlnh label
#CHECK: error: invalid instruction
#CHECK: jll label
#CHECK: error: invalid instruction
#CHECK: jlnl label
#CHECK: error: invalid instruction
#CHECK: jlhe label
#CHECK: error: invalid instruction
#CHECK: jlnhe label
#CHECK: error: invalid instruction
#CHECK: jlle label
#CHECK: error: invalid instruction
#CHECK: jlnle label
#CHECK: error: invalid instruction
#CHECK: jlz label
#CHECK: error: invalid instruction
#CHECK: jlnz label
#CHECK: error: invalid instruction
#CHECK: jlp label
#CHECK: error: invalid instruction
#CHECK: jlnp label
#CHECK: error: invalid instruction
#CHECK: jlm label
#CHECK: error: invalid instruction
#CHECK: jlnm label
#CHECK: error: invalid instruction
#CHECK: jllh label
#CHECK: error: invalid instruction
#CHECK: jllnlh label
#CHECK: error: invalid instruction
#CHECK: jlo label
#CHECK: error: invalid instruction
#CHECK: jlno label
jlu label
jlne label
jlnh label
jll label
jlnl label
jlhe label
jlnhe label
jlle label
jlnle label
jlz label
jlnz label
jlp label
jlnp label
jlm label
jlnm label
jllh label
jllnlh label
jlo label
jlno label
#CHECK: error: invalid operand
#CHECK: brc foo, bar
#CHECK: error: invalid operand
#CHECK: brc -1, bar
#CHECK: error: invalid operand
#CHECK: brc 16, bar
brc foo, bar
brc -1, bar
brc 16, bar
#CHECK: error: offset out of range
#CHECK: brcl 0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: brcl 0, -1
#CHECK: error: offset out of range
#CHECK: brcl 0, 1
#CHECK: error: offset out of range
#CHECK: brcl 0, 0x100000000
#CHECK: error: offset out of range
#CHECK: jgnop -0x1000000002
#CHECK: error: offset out of range
#CHECK: jgnop -1
#CHECK: error: offset out of range
#CHECK: jgnop 1
#CHECK: error: offset out of range
#CHECK: jgnop 0x100000000
brcl 0, -0x1000000002
brcl 0, -1
brcl 0, 1
brcl 0, 0x100000000
jgnop -0x1000000002
jgnop -1
jgnop 1
jgnop 0x100000000
#CHECK: error: invalid instruction
#CHECK: jlnop label
jlnop label
#CHECK: error: invalid operand
#CHECK: brcl foo, bar
#CHECK: error: invalid operand
#CHECK: brcl -1, bar
#CHECK: error: invalid operand
#CHECK: brcl 16, bar
brcl foo, bar
brcl -1, bar
brcl 16, bar
#CHECK: error: offset out of range
#CHECK: brct %r0, -0x100002
#CHECK: error: offset out of range
#CHECK: brct %r0, -1
#CHECK: error: offset out of range
#CHECK: brct %r0, 1
#CHECK: error: offset out of range
#CHECK: brct %r0, 0x10000
brct %r0, -0x100002
brct %r0, -1
brct %r0, 1
brct %r0, 0x10000
#CHECK: error: offset out of range
#CHECK: brctg %r0, -0x100002
#CHECK: error: offset out of range
#CHECK: brctg %r0, -1
#CHECK: error: offset out of range
#CHECK: brctg %r0, 1
#CHECK: error: offset out of range
#CHECK: brctg %r0, 0x10000
brctg %r0, -0x100002
brctg %r0, -1
brctg %r0, 1
brctg %r0, 0x10000
#CHECK: error: instruction requires: high-word
#CHECK: brcth %r0, 0
brcth %r0, 0
#CHECK: error: offset out of range
#CHECK: brxh %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: brxh %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: brxh %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: brxh %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: jxh %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: jxh %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: jxh %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: jxh %r0, %r2, 0x10000
brxh %r0, %r2, -0x100002
brxh %r0, %r2, -1
brxh %r0, %r2, 1
brxh %r0, %r2, 0x10000
jxh %r0, %r2, -0x100002
jxh %r0, %r2, -1
jxh %r0, %r2, 1
jxh %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: brxhg %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: brxhg %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: brxhg %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: brxhg %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: jxhg %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: jxhg %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: jxhg %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: jxhg %r0, %r2, 0x10000
brxhg %r0, %r2, -0x100002
brxhg %r0, %r2, -1
brxhg %r0, %r2, 1
brxhg %r0, %r2, 0x10000
jxhg %r0, %r2, -0x100002
jxhg %r0, %r2, -1
jxhg %r0, %r2, 1
jxhg %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: brxle %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: brxle %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: brxle %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: brxle %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: jxle %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: jxle %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: jxle %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: jxle %r0, %r2, 0x10000
brxle %r0, %r2, -0x100002
brxle %r0, %r2, -1
brxle %r0, %r2, 1
brxle %r0, %r2, 0x10000
jxle %r0, %r2, -0x100002
jxle %r0, %r2, -1
jxle %r0, %r2, 1
jxle %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: brxlg %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: brxlg %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: brxlg %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: brxlg %r0, %r2, 0x10000
#CHECK: error: offset out of range
#CHECK: jxleg %r0, %r2, -0x100002
#CHECK: error: offset out of range
#CHECK: jxleg %r0, %r2, -1
#CHECK: error: offset out of range
#CHECK: jxleg %r0, %r2, 1
#CHECK: error: offset out of range
#CHECK: jxleg %r0, %r2, 0x10000
brxlg %r0, %r2, -0x100002
brxlg %r0, %r2, -1
brxlg %r0, %r2, 1
brxlg %r0, %r2, 0x10000
jxleg %r0, %r2, -0x100002
jxleg %r0, %r2, -1
jxleg %r0, %r2, 1
jxleg %r0, %r2, 0x10000
#CHECK: error: invalid operand
#CHECK: bxh %r0, %r0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: bxh %r0, %r0, 0(%r1,%r2)
bxh %r0, %r0, 4096
bxh %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: bxhg %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: bxhg %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: bxhg %r0, %r0, 0(%r1,%r2)
bxhg %r0, %r0, -524289
bxhg %r0, %r0, 524288
bxhg %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: bxle %r0, %r0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: bxle %r0, %r0, 0(%r1,%r2)
bxle %r0, %r0, 4096
bxle %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: bxleg %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: bxleg %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: bxleg %r0, %r0, 0(%r1,%r2)
bxleg %r0, %r0, -524289
bxleg %r0, %r0, 524288
bxleg %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: c %r0, -1
#CHECK: error: invalid operand
#CHECK: c %r0, 4096
c %r0, -1
c %r0, 4096
#CHECK: error: invalid operand
#CHECK: cd %f0, -1
#CHECK: error: invalid operand
#CHECK: cd %f0, 4096
cd %f0, -1
cd %f0, 4096
#CHECK: error: invalid operand
#CHECK: cdb %f0, -1
#CHECK: error: invalid operand
#CHECK: cdb %f0, 4096
cdb %f0, -1
cdb %f0, 4096
#CHECK: error: instruction requires: fp-extension
#CHECK: cdfbra %f0, 0, %r0, 0
cdfbra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdftr %f0, 0, %r0, 0
cdftr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdgbra %f0, 0, %r0, 0
cdgbra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdgtra %f0, 0, %r0, 0
cdgtra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdlfbr %f0, 0, %r0, 0
cdlfbr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdlftr %f0, 0, %r0, 0
cdlftr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdlgbr %f0, 0, %r0, 0
cdlgbr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cdlgtr %f0, 0, %r0, 0
cdlgtr %f0, 0, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cds %r1, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cds %r0, %r1, 0
#CHECK: error: invalid operand
#CHECK: cds %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: cds %r0, %r0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: cds %r0, %r0, 0(%r1,%r2)
cds %r1, %r0, 0
cds %r0, %r1, 0
cds %r0, %r0, -1
cds %r0, %r0, 4096
cds %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid register pair
#CHECK: cdsg %r1, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cdsg %r0, %r1, 0
#CHECK: error: invalid operand
#CHECK: cdsg %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: cdsg %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: cdsg %r0, %r0, 0(%r1,%r2)
cdsg %r1, %r0, 0
cdsg %r0, %r1, 0
cdsg %r0, %r0, -524289
cdsg %r0, %r0, 524288
cdsg %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid register pair
#CHECK: cdsy %r1, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cdsy %r0, %r1, 0
#CHECK: error: invalid operand
#CHECK: cdsy %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: cdsy %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: cdsy %r0, %r0, 0(%r1,%r2)
cdsy %r1, %r0, 0
cdsy %r0, %r1, 0
cdsy %r0, %r0, -524289
cdsy %r0, %r0, 524288
cdsy %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: ce %f0, -1
#CHECK: error: invalid operand
#CHECK: ce %f0, 4096
ce %f0, -1
ce %f0, 4096
#CHECK: error: invalid operand
#CHECK: ceb %f0, -1
#CHECK: error: invalid operand
#CHECK: ceb %f0, 4096
ceb %f0, -1
ceb %f0, 4096
#CHECK: error: instruction requires: fp-extension
#CHECK: cefbra %f0, 0, %r0, 0
cefbra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cegbra %f0, 0, %r0, 0
cegbra %f0, 0, %r0, 0
#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 register pair
#CHECK: cextr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: cextr %f2, %f0
cextr %f0, %f2
cextr %f2, %f0
#CHECK: error: invalid operand
#CHECK: cfc -1
#CHECK: error: invalid operand
#CHECK: cfc 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: cfc 0(%r1,%r2)
cfc -1
cfc 4096
cfc 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: cfdbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfdbr %r0, 16, %f0
cfdbr %r0, -1, %f0
cfdbr %r0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: cfdbra %r0, 0, %f0, 0
cfdbra %r0, 0, %f0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cfdtr %r0, 0, %f0, 0
cfdtr %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cfebr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfebr %r0, 16, %f0
cfebr %r0, -1, %f0
cfebr %r0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: cfebra %r0, 0, %f0, 0
cfebra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: cfi %r0, (1 << 31)
cfi %r0, (-1 << 31) - 1
cfi %r0, (1 << 31)
#CHECK: error: invalid operand
#CHECK: cfxbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfxbr %r0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: cfxbr %r0, 0, %f2
cfxbr %r0, -1, %f0
cfxbr %r0, 16, %f0
cfxbr %r0, 0, %f2
#CHECK: error: instruction requires: fp-extension
#CHECK: cfxbra %r0, 0, %f0, 0
cfxbra %r0, 0, %f0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cfxtr %r0, 0, %f0, 0
cfxtr %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cfxr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfxr %r0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: cfxr %r0, 0, %f2
cfxr %r0, -1, %f0
cfxr %r0, 16, %f0
cfxr %r0, 0, %f2
#CHECK: error: invalid operand
#CHECK: cg %r0, -524289
#CHECK: error: invalid operand
#CHECK: cg %r0, 524288
cg %r0, -524289
cg %r0, 524288
#CHECK: error: invalid operand
#CHECK: cgdbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgdbr %r0, 16, %f0
cgdbr %r0, -1, %f0
cgdbr %r0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: cgdbra %r0, 0, %f0, 0
cgdbra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cgdtr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgdtr %r0, 16, %f0
cgdtr %r0, -1, %f0
cgdtr %r0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: cgdtra %r0, 0, %f0, 0
cgdtra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cgebr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgebr %r0, 16, %f0
cgebr %r0, -1, %f0
cgebr %r0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: cgebra %r0, 0, %f0, 0
cgebra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cgf %r0, -524289
#CHECK: error: invalid operand
#CHECK: cgf %r0, 524288
cgf %r0, -524289
cgf %r0, 524288
#CHECK: error: invalid operand
#CHECK: cgfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: cgfi %r0, (1 << 31)
cgfi %r0, (-1 << 31) - 1
cgfi %r0, (1 << 31)
#CHECK: error: offset out of range
#CHECK: cgfrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: cgfrl %r0, -1
#CHECK: error: offset out of range
#CHECK: cgfrl %r0, 1
#CHECK: error: offset out of range
#CHECK: cgfrl %r0, 0x100000000
cgfrl %r0, -0x1000000002
cgfrl %r0, -1
cgfrl %r0, 1
cgfrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: cgh %r0, -524289
#CHECK: error: invalid operand
#CHECK: cgh %r0, 524288
cgh %r0, -524289
cgh %r0, 524288
#CHECK: error: invalid operand
#CHECK: cghi %r0, -32769
#CHECK: error: invalid operand
#CHECK: cghi %r0, 32768
#CHECK: error: invalid operand
#CHECK: cghi %r0, foo
cghi %r0, -32769
cghi %r0, 32768
cghi %r0, foo
#CHECK: error: offset out of range
#CHECK: cghrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: cghrl %r0, -1
#CHECK: error: offset out of range
#CHECK: cghrl %r0, 1
#CHECK: error: offset out of range
#CHECK: cghrl %r0, 0x100000000
cghrl %r0, -0x1000000002
cghrl %r0, -1
cghrl %r0, 1
cghrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: cghsi -1, 0
#CHECK: error: invalid operand
#CHECK: cghsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: cghsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: cghsi 0, -32769
#CHECK: error: invalid operand
#CHECK: cghsi 0, 32768
cghsi -1, 0
cghsi 4096, 0
cghsi 0(%r1,%r2), 0
cghsi 0, -32769
cghsi 0, 32768
#CHECK: error: invalid operand
#CHECK: cgij %r0, -129, 0, 0
#CHECK: error: invalid operand
#CHECK: cgij %r0, 128, 0, 0
cgij %r0, -129, 0, 0
cgij %r0, 128, 0, 0
#CHECK: error: offset out of range
#CHECK: cgij %r0, 0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: cgij %r0, 0, 0, -1
#CHECK: error: offset out of range
#CHECK: cgij %r0, 0, 0, 1
#CHECK: error: offset out of range
#CHECK: cgij %r0, 0, 0, 0x10000
cgij %r0, 0, 0, -0x100002
cgij %r0, 0, 0, -1
cgij %r0, 0, 0, 1
cgij %r0, 0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: cgijno %r0, 0, 0, 0
#CHECK: error: invalid instruction
#CHECK: cgijo %r0, 0, 0, 0
cgijno %r0, 0, 0, 0
cgijo %r0, 0, 0, 0
#CHECK: error: invalid operand
#CHECK: cgit %r0, -32769
#CHECK: error: invalid operand
#CHECK: cgit %r0, 32768
#CHECK: error: invalid instruction
#CHECK: cgitno %r0, 0
#CHECK: error: invalid instruction
#CHECK: cgito %r0, 0
cgit %r0, -32769
cgit %r0, 32768
cgitno %r0, 0
cgito %r0, 0
#CHECK: error: offset out of range
#CHECK: cgrj %r0, %r0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: cgrj %r0, %r0, 0, -1
#CHECK: error: offset out of range
#CHECK: cgrj %r0, %r0, 0, 1
#CHECK: error: offset out of range
#CHECK: cgrj %r0, %r0, 0, 0x10000
cgrj %r0, %r0, 0, -0x100002
cgrj %r0, %r0, 0, -1
cgrj %r0, %r0, 0, 1
cgrj %r0, %r0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: cgrjno %r0, %r0, 0, 0
#CHECK: error: invalid instruction
#CHECK: cgrjo %r0, %r0, 0, 0
cgrjno %r0, %r0, 0, 0
cgrjo %r0, %r0, 0, 0
#CHECK: error: offset out of range
#CHECK: cgrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: cgrl %r0, -1
#CHECK: error: offset out of range
#CHECK: cgrl %r0, 1
#CHECK: error: offset out of range
#CHECK: cgrl %r0, 0x100000000
cgrl %r0, -0x1000000002
cgrl %r0, -1
cgrl %r0, 1
cgrl %r0, 0x100000000
#CHECK: error: invalid instruction
#CHECK: cgrtno %r0, %r0
#CHECK: error: invalid instruction
#CHECK: cgrto %r0, %r0
cgrtno %r0, %r0
cgrto %r0, %r0
#CHECK: error: invalid operand
#CHECK: cgxbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgxbr %r0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: cgxbr %r0, 0, %f2
cgxbr %r0, -1, %f0
cgxbr %r0, 16, %f0
cgxbr %r0, 0, %f2
#CHECK: error: instruction requires: fp-extension
#CHECK: cgxbra %r0, 0, %f0, 0
cgxbra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cgxtr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgxtr %r0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: cgxtr %r0, 0, %f2
cgxtr %r0, -1, %f0
cgxtr %r0, 16, %f0
cgxtr %r0, 0, %f2
#CHECK: error: instruction requires: fp-extension
#CHECK: cgxtra %r0, 0, %f0, 0
cgxtra %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: cgxr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgxr %r0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: cgxr %r0, 0, %f2
cgxr %r0, -1, %f0
cgxr %r0, 16, %f0
cgxr %r0, 0, %f2
#CHECK: error: invalid operand
#CHECK: ch %r0, -1
#CHECK: error: invalid operand
#CHECK: ch %r0, 4096
ch %r0, -1
ch %r0, 4096
#CHECK: error: instruction requires: high-word
#CHECK: chf %r0, 0
chf %r0, 0
#CHECK: error: instruction requires: high-word
#CHECK: chhr %r0, %r0
chhr %r0, %r0
#CHECK: error: invalid operand
#CHECK: chhsi -1, 0
#CHECK: error: invalid operand
#CHECK: chhsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: chhsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: chhsi 0, -32769
#CHECK: error: invalid operand
#CHECK: chhsi 0, 32768
chhsi -1, 0
chhsi 4096, 0
chhsi 0(%r1,%r2), 0
chhsi 0, -32769
chhsi 0, 32768
#CHECK: error: invalid operand
#CHECK: chi %r0, -32769
#CHECK: error: invalid operand
#CHECK: chi %r0, 32768
#CHECK: error: invalid operand
#CHECK: chi %r0, foo
chi %r0, -32769
chi %r0, 32768
chi %r0, foo
#CHECK: error: instruction requires: high-word
#CHECK: chlr %r0, %r0
chlr %r0, %r0
#CHECK: error: offset out of range
#CHECK: chrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: chrl %r0, -1
#CHECK: error: offset out of range
#CHECK: chrl %r0, 1
#CHECK: error: offset out of range
#CHECK: chrl %r0, 0x100000000
chrl %r0, -0x1000000002
chrl %r0, -1
chrl %r0, 1
chrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: chsi -1, 0
#CHECK: error: invalid operand
#CHECK: chsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: chsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: chsi 0, -32769
#CHECK: error: invalid operand
#CHECK: chsi 0, 32768
chsi -1, 0
chsi 4096, 0
chsi 0(%r1,%r2), 0
chsi 0, -32769
chsi 0, 32768
#CHECK: error: invalid operand
#CHECK: chy %r0, -524289
#CHECK: error: invalid operand
#CHECK: chy %r0, 524288
chy %r0, -524289
chy %r0, 524288
#CHECK: error: instruction requires: high-word
#CHECK: cih %r0, 0
cih %r0, 0
#CHECK: error: invalid operand
#CHECK: cij %r0, -129, 0, 0
#CHECK: error: invalid operand
#CHECK: cij %r0, 128, 0, 0
cij %r0, -129, 0, 0
cij %r0, 128, 0, 0
#CHECK: error: offset out of range
#CHECK: cij %r0, 0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: cij %r0, 0, 0, -1
#CHECK: error: offset out of range
#CHECK: cij %r0, 0, 0, 1
#CHECK: error: offset out of range
#CHECK: cij %r0, 0, 0, 0x10000
cij %r0, 0, 0, -0x100002
cij %r0, 0, 0, -1
cij %r0, 0, 0, 1
cij %r0, 0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: cijno %r0, 0, 0, 0
#CHECK: error: invalid instruction
#CHECK: cijo %r0, 0, 0, 0
cijno %r0, 0, 0, 0
cijo %r0, 0, 0, 0
#CHECK: error: invalid operand
#CHECK: cit %r0, -32769
#CHECK: error: invalid operand
#CHECK: cit %r0, 32768
#CHECK: error: invalid instruction
#CHECK: citno %r0, 0
#CHECK: error: invalid instruction
#CHECK: cito %r0, 0
cit %r0, -32769
cit %r0, 32768
citno %r0, 0
cito %r0, 0
#CHECK: error: invalid register pair
#CHECK: cksm %r0, %r1
cksm %r0, %r1
#CHECK: error: invalid operand
#CHECK: cl %r0, -1
#CHECK: error: invalid operand
#CHECK: cl %r0, 4096
cl %r0, -1
cl %r0, 4096
#CHECK: error: missing length in address
#CHECK: clc 0, 0
#CHECK: error: missing length in address
#CHECK: clc 0(%r1), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: clc 0(1,%r1), 0(2,%r1)
#CHECK: error: invalid operand
#CHECK: clc 0(0,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: clc 0(257,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: clc -1(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: clc 4096(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: clc 0(1,%r1), -1(%r1)
#CHECK: error: invalid operand
#CHECK: clc 0(1,%r1), 4096(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: clc 0(%r1,%r2), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: clc 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: clc 0(-), 0
clc 0, 0
clc 0(%r1), 0(%r1)
clc 0(1,%r1), 0(2,%r1)
clc 0(0,%r1), 0(%r1)
clc 0(257,%r1), 0(%r1)
clc -1(1,%r1), 0(%r1)
clc 4096(1,%r1), 0(%r1)
clc 0(1,%r1), -1(%r1)
clc 0(1,%r1), 4096(%r1)
clc 0(%r1,%r2), 0(%r1)
clc 0(1,%r2), 0(%r1,%r2)
clc 0(-), 0
#CHECK: error: invalid register pair
#CHECK: clcl %r1, %r0
#CHECK: error: invalid register pair
#CHECK: clcl %r0, %r1
clcl %r1, %r0
clcl %r0, %r1
#CHECK: error: invalid register pair
#CHECK: clcle %r1, %r0
#CHECK: error: invalid register pair
#CHECK: clcle %r0, %r1
#CHECK: error: invalid operand
#CHECK: clcle %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: clcle %r0, %r0, 4096
clcle %r1, %r0, 0
clcle %r0, %r1, 0
clcle %r0, %r0, -1
clcle %r0, %r0, 4096
#CHECK: error: invalid register pair
#CHECK: clclu %r1, %r0
#CHECK: error: invalid register pair
#CHECK: clclu %r0, %r1
#CHECK: error: invalid operand
#CHECK: clclu %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: clclu %r0, %r0, 524288
clclu %r1, %r0, 0
clclu %r0, %r1, 0
clclu %r0, %r0, -524289
clclu %r0, %r0, 524288
#CHECK: error: instruction requires: fp-extension
#CHECK: clfdbr %r0, 0, %f0, 0
clfdbr %r0, 0, %f0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: clfdtr %r0, 0, %f0, 0
clfdtr %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
#CHECK: clfhsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: clfhsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: clfhsi 0, -1
#CHECK: error: invalid operand
#CHECK: clfhsi 0, 65536
clfhsi -1, 0
clfhsi 4096, 0
clfhsi 0(%r1,%r2), 0
clfhsi 0, -1
clfhsi 0, 65536
#CHECK: error: invalid operand
#CHECK: clfi %r0, -1
#CHECK: error: invalid operand
#CHECK: clfi %r0, (1 << 32)
clfi %r0, -1
clfi %r0, (1 << 32)
#CHECK: error: invalid operand
#CHECK: clfit %r0, -1
#CHECK: error: invalid operand
#CHECK: clfit %r0, 65536
#CHECK: error: invalid instruction
#CHECK: clfitno %r0, 0
#CHECK: error: invalid instruction
#CHECK: clfito %r0, 0
clfit %r0, -1
clfit %r0, 65536
clfitno %r0, 0
clfito %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: clfxbr %r0, 0, %f0, 0
clfxbr %r0, 0, %f0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: clfxtr %r0, 0, %f0, 0
clfxtr %r0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: clg %r0, -524289
#CHECK: error: invalid operand
#CHECK: clg %r0, 524288
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: clgdtr %r0, 0, %f0, 0
clgdtr %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
#CHECK: clgf %r0, 524288
clgf %r0, -524289
clgf %r0, 524288
#CHECK: error: invalid operand
#CHECK: clgfi %r0, -1
#CHECK: error: invalid operand
#CHECK: clgfi %r0, (1 << 32)
clgfi %r0, -1
clgfi %r0, (1 << 32)
#CHECK: error: offset out of range
#CHECK: clgfrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: clgfrl %r0, -1
#CHECK: error: offset out of range
#CHECK: clgfrl %r0, 1
#CHECK: error: offset out of range
#CHECK: clgfrl %r0, 0x100000000
clgfrl %r0, -0x1000000002
clgfrl %r0, -1
clgfrl %r0, 1
clgfrl %r0, 0x100000000
#CHECK: error: offset out of range
#CHECK: clghrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: clghrl %r0, -1
#CHECK: error: offset out of range
#CHECK: clghrl %r0, 1
#CHECK: error: offset out of range
#CHECK: clghrl %r0, 0x100000000
clghrl %r0, -0x1000000002
clghrl %r0, -1
clghrl %r0, 1
clghrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: clghsi -1, 0
#CHECK: error: invalid operand
#CHECK: clghsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: clghsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: clghsi 0, -1
#CHECK: error: invalid operand
#CHECK: clghsi 0, 65536
clghsi -1, 0
clghsi 4096, 0
clghsi 0(%r1,%r2), 0
clghsi 0, -1
clghsi 0, 65536
#CHECK: error: invalid operand
#CHECK: clgij %r0, -1, 0, 0
#CHECK: error: invalid operand
#CHECK: clgij %r0, 256, 0, 0
clgij %r0, -1, 0, 0
clgij %r0, 256, 0, 0
#CHECK: error: offset out of range
#CHECK: clgij %r0, 0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: clgij %r0, 0, 0, -1
#CHECK: error: offset out of range
#CHECK: clgij %r0, 0, 0, 1
#CHECK: error: offset out of range
#CHECK: clgij %r0, 0, 0, 0x10000
clgij %r0, 0, 0, -0x100002
clgij %r0, 0, 0, -1
clgij %r0, 0, 0, 1
clgij %r0, 0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: clgijno %r0, 0, 0, 0
#CHECK: error: invalid instruction
#CHECK: clgijo %r0, 0, 0, 0
clgijno %r0, 0, 0, 0
clgijo %r0, 0, 0, 0
#CHECK: error: invalid operand
#CHECK: clgit %r0, -1
#CHECK: error: invalid operand
#CHECK: clgit %r0, 65536
#CHECK: error: invalid instruction
#CHECK: clgitno %r0, 0
#CHECK: error: invalid instruction
#CHECK: clgito %r0, 0
clgit %r0, -1
clgit %r0, 65536
clgitno %r0, 0
clgito %r0, 0
#CHECK: error: offset out of range
#CHECK: clgrj %r0, %r0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: clgrj %r0, %r0, 0, -1
#CHECK: error: offset out of range
#CHECK: clgrj %r0, %r0, 0, 1
#CHECK: error: offset out of range
#CHECK: clgrj %r0, %r0, 0, 0x10000
clgrj %r0, %r0, 0, -0x100002
clgrj %r0, %r0, 0, -1
clgrj %r0, %r0, 0, 1
clgrj %r0, %r0, 0, 0x10000
#CHECK: error: offset out of range
#CHECK: clgrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: clgrl %r0, -1
#CHECK: error: offset out of range
#CHECK: clgrl %r0, 1
#CHECK: error: offset out of range
#CHECK: clgrl %r0, 0x100000000
clgrl %r0, -0x1000000002
clgrl %r0, -1
clgrl %r0, 1
clgrl %r0, 0x100000000
#CHECK: error: invalid instruction
#CHECK: clgrtno %r0, %r0
#CHECK: error: invalid instruction
#CHECK: clgrto %r0, %r0
clgrtno %r0, %r0
clgrto %r0, %r0
#CHECK: error: instruction requires: fp-extension
#CHECK: clgxbr %r0, 0, %f0, 0
clgxbr %r0, 0, %f0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: clgxtr %r0, 0, %f0, 0
clgxtr %r0, 0, %f0, 0
#CHECK: error: instruction requires: high-word
#CHECK: clhf %r0, 0
clhf %r0, 0
#CHECK: error: instruction requires: high-word
#CHECK: clhhr %r0, %r0
clhhr %r0, %r0
#CHECK: error: invalid operand
#CHECK: clhhsi -1, 0
#CHECK: error: invalid operand
#CHECK: clhhsi 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: clhhsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: clhhsi 0, -1
#CHECK: error: invalid operand
#CHECK: clhhsi 0, 65536
clhhsi -1, 0
clhhsi 4096, 0
clhhsi 0(%r1,%r2), 0
clhhsi 0, -1
clhhsi 0, 65536
#CHECK: error: instruction requires: high-word
#CHECK: clhlr %r0, %r0
clhlr %r0, %r0
#CHECK: error: offset out of range
#CHECK: clhrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: clhrl %r0, -1
#CHECK: error: offset out of range
#CHECK: clhrl %r0, 1
#CHECK: error: offset out of range
#CHECK: clhrl %r0, 0x100000000
clhrl %r0, -0x1000000002
clhrl %r0, -1
clhrl %r0, 1
clhrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: cli -1, 0
#CHECK: error: invalid operand
#CHECK: cli 4096, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: cli 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: cli 0, -1
#CHECK: error: invalid operand
#CHECK: cli 0, 256
cli -1, 0
cli 4096, 0
cli 0(%r1,%r2), 0
cli 0, -1
cli 0, 256
#CHECK: error: instruction requires: high-word
#CHECK: clih %r0, 0
clih %r0, 0
#CHECK: error: invalid operand
#CHECK: clij %r0, -1, 0, 0
#CHECK: error: invalid operand
#CHECK: clij %r0, 256, 0, 0
clij %r0, -1, 0, 0
clij %r0, 256, 0, 0
#CHECK: error: offset out of range
#CHECK: clij %r0, 0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: clij %r0, 0, 0, -1
#CHECK: error: offset out of range
#CHECK: clij %r0, 0, 0, 1
#CHECK: error: offset out of range
#CHECK: clij %r0, 0, 0, 0x10000
clij %r0, 0, 0, -0x100002
clij %r0, 0, 0, -1
clij %r0, 0, 0, 1
clij %r0, 0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: clijno %r0, 0, 0, 0
#CHECK: error: invalid instruction
#CHECK: clijo %r0, 0, 0, 0
clijno %r0, 0, 0, 0
clijo %r0, 0, 0, 0
#CHECK: error: invalid operand
#CHECK: cliy -524289, 0
#CHECK: error: invalid operand
#CHECK: cliy 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: cliy 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: cliy 0, -1
#CHECK: error: invalid operand
#CHECK: cliy 0, 256
cliy -524289, 0
cliy 524288, 0
cliy 0(%r1,%r2), 0
cliy 0, -1
cliy 0, 256
#CHECK: error: invalid operand
#CHECK: clm %r0, 0, -1
#CHECK: error: invalid operand
#CHECK: clm %r0, 0, 4096
#CHECK: error: invalid operand
#CHECK: clm %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: clm %r0, 16, 0
clm %r0, 0, -1
clm %r0, 0, 4096
clm %r0, -1, 0
clm %r0, 16, 0
#CHECK: error: invalid operand
#CHECK: clmh %r0, 0, -524289
#CHECK: error: invalid operand
#CHECK: clmh %r0, 0, 524288
#CHECK: error: invalid operand
#CHECK: clmh %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: clmh %r0, 16, 0
clmh %r0, 0, -524289
clmh %r0, 0, 524288
clmh %r0, -1, 0
clmh %r0, 16, 0
#CHECK: error: invalid operand
#CHECK: clmy %r0, 0, -524289
#CHECK: error: invalid operand
#CHECK: clmy %r0, 0, 524288
#CHECK: error: invalid operand
#CHECK: clmy %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: clmy %r0, 16, 0
clmy %r0, 0, -524289
clmy %r0, 0, 524288
clmy %r0, -1, 0
clmy %r0, 16, 0
#CHECK: error: offset out of range
#CHECK: clrj %r0, %r0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: clrj %r0, %r0, 0, -1
#CHECK: error: offset out of range
#CHECK: clrj %r0, %r0, 0, 1
#CHECK: error: offset out of range
#CHECK: clrj %r0, %r0, 0, 0x10000
clrj %r0, %r0, 0, -0x100002
clrj %r0, %r0, 0, -1
clrj %r0, %r0, 0, 1
clrj %r0, %r0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: clrjno %r0, %r0, 0, 0
#CHECK: error: invalid instruction
#CHECK: clrjo %r0, %r0, 0, 0
clrjno %r0, %r0, 0, 0
clrjo %r0, %r0, 0, 0
#CHECK: error: offset out of range
#CHECK: clrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: clrl %r0, -1
#CHECK: error: offset out of range
#CHECK: clrl %r0, 1
#CHECK: error: offset out of range
#CHECK: clrl %r0, 0x100000000
clrl %r0, -0x1000000002
clrl %r0, -1
clrl %r0, 1
clrl %r0, 0x100000000
#CHECK: error: invalid instruction
#CHECK: clrtno %r0, %r0
#CHECK: error: invalid instruction
#CHECK: clrto %r0, %r0
clrtno %r0, %r0
clrto %r0, %r0
#CHECK: error: invalid operand
#CHECK: cly %r0, -524289
#CHECK: error: invalid operand
#CHECK: cly %r0, 524288
cly %r0, -524289
cly %r0, 524288
#CHECK: error: invalid register pair
#CHECK: cmpsc %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cmpsc %r0, %r1
cmpsc %r1, %r0
cmpsc %r0, %r1
#CHECK: error: missing length in address
#CHECK: cp 0, 0(1)
#CHECK: error: missing length in address
#CHECK: cp 0(1), 0
#CHECK: error: missing length in address
#CHECK: cp 0(%r1), 0(1,%r1)
#CHECK: error: missing length in address
#CHECK: cp 0(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(0,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(1,%r1), 0(0,%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(17,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(1,%r1), 0(17,%r1)
#CHECK: error: invalid operand
#CHECK: cp -1(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: cp 4096(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(1,%r1), -1(1,%r1)
#CHECK: error: invalid operand
#CHECK: cp 0(1,%r1), 4096(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: cp 0(%r1,%r2), 0(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: cp 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: cp 0(-), 0(1)
cp 0, 0(1)
cp 0(1), 0
cp 0(%r1), 0(1,%r1)
cp 0(1,%r1), 0(%r1)
cp 0(0,%r1), 0(1,%r1)
cp 0(1,%r1), 0(0,%r1)
cp 0(17,%r1), 0(1,%r1)
cp 0(1,%r1), 0(17,%r1)
cp -1(1,%r1), 0(1,%r1)
cp 4096(1,%r1), 0(1,%r1)
cp 0(1,%r1), -1(1,%r1)
cp 0(1,%r1), 4096(1,%r1)
cp 0(%r1,%r2), 0(1,%r1)
cp 0(1,%r2), 0(%r1,%r2)
cp 0(-), 0(1)
#CHECK: error: offset out of range
#CHECK: crj %r0, %r0, 0, -0x100002
#CHECK: error: offset out of range
#CHECK: crj %r0, %r0, 0, -1
#CHECK: error: offset out of range
#CHECK: crj %r0, %r0, 0, 1
#CHECK: error: offset out of range
#CHECK: crj %r0, %r0, 0, 0x10000
crj %r0, %r0, 0, -0x100002
crj %r0, %r0, 0, -1
crj %r0, %r0, 0, 1
crj %r0, %r0, 0, 0x10000
#CHECK: error: invalid instruction
#CHECK: crjno %r0, %r0, 0, 0
#CHECK: error: invalid instruction
#CHECK: crjo %r0, %r0, 0, 0
crjno %r0, %r0, 0, 0
crjo %r0, %r0, 0, 0
#CHECK: error: offset out of range
#CHECK: crl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: crl %r0, -1
#CHECK: error: offset out of range
#CHECK: crl %r0, 1
#CHECK: error: offset out of range
#CHECK: crl %r0, 0x100000000
crl %r0, -0x1000000002
crl %r0, -1
crl %r0, 1
crl %r0, 0x100000000
#CHECK: error: invalid instruction
#CHECK: crtno %r0, %r0
#CHECK: error: invalid instruction
#CHECK: crto %r0, %r0
crtno %r0, %r0
crto %r0, %r0
#CHECK: error: invalid operand
#CHECK: cs %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: cs %r0, %r0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: cs %r0, %r0, 0(%r1,%r2)
cs %r0, %r0, -1
cs %r0, %r0, 4096
cs %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: csdtr %r0, %f0, -1
#CHECK: error: invalid operand
#CHECK: csdtr %r0, %f0, 16
csdtr %r0, %f0, -1
csdtr %r0, %f0, 16
#CHECK: error: invalid operand
#CHECK: csg %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: csg %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: csg %r0, %r0, 0(%r1,%r2)
csg %r0, %r0, -524289
csg %r0, %r0, 524288
csg %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid register pair
#CHECK: csp %r1, %r0
csp %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cspg %r1, %r0
cspg %r1, %r0
#CHECK: error: invalid use of indexed addressing
#CHECK: csst 160(%r1,%r15), 160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: csst -1(%r1), 160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: csst 4096(%r1), 160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: csst 0(%r1), -1(%r15), %r2
#CHECK: error: invalid operand
#CHECK: csst 0(%r1), 4096(%r15), %r2
csst 160(%r1,%r15), 160(%r15), %r2
csst -1(%r1), 160(%r15), %r2
csst 4096(%r1), 160(%r15), %r2
csst 0(%r1), -1(%r15), %r2
csst 0(%r1), 4096(%r15), %r2
#CHECK: error: invalid operand
#CHECK: csxtr %r0, %f0, -1
#CHECK: error: invalid operand
#CHECK: csxtr %r0, %f0, 16
#CHECK: error: invalid register pair
#CHECK: csxtr %r0, %f2, 0
#CHECK: error: invalid register pair
#CHECK: csxtr %r1, %f0, 0
csxtr %r0, %f0, -1
csxtr %r0, %f0, 16
csxtr %r0, %f2, 0
csxtr %r1, %f0, 0
#CHECK: error: invalid operand
#CHECK: csy %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: csy %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: csy %r0, %r0, 0(%r1,%r2)
csy %r0, %r0, -524289
csy %r0, %r0, 524288
csy %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid register pair
#CHECK: cu12 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu12 %r0, %r1
#CHECK: error: invalid operand
#CHECK: cu12 %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cu12 %r2, %r4, 16
cu12 %r1, %r0
cu12 %r0, %r1
cu12 %r2, %r4, -1
cu12 %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cu14 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu14 %r0, %r1
#CHECK: error: invalid operand
#CHECK: cu14 %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cu14 %r2, %r4, 16
cu14 %r1, %r0
cu14 %r0, %r1
cu14 %r2, %r4, -1
cu14 %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cu21 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu21 %r0, %r1
#CHECK: error: invalid operand
#CHECK: cu21 %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cu21 %r2, %r4, 16
cu21 %r1, %r0
cu21 %r0, %r1
cu21 %r2, %r4, -1
cu21 %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cu24 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu24 %r0, %r1
#CHECK: error: invalid operand
#CHECK: cu24 %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cu24 %r2, %r4, 16
cu24 %r1, %r0
cu24 %r0, %r1
cu24 %r2, %r4, -1
cu24 %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cu41 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu41 %r0, %r1
cu41 %r1, %r0
cu41 %r0, %r1
#CHECK: error: invalid register pair
#CHECK: cu42 %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cu42 %r0, %r1
cu42 %r1, %r0
cu42 %r0, %r1
#CHECK: error: invalid register pair
#CHECK: cuse %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cuse %r0, %r1
cuse %r1, %r0
cuse %r0, %r1
#CHECK: error: invalid register pair
#CHECK: cutfu %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cutfu %r0, %r1
#CHECK: error: invalid operand
#CHECK: cutfu %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cutfu %r2, %r4, 16
cutfu %r1, %r0
cutfu %r0, %r1
cutfu %r2, %r4, -1
cutfu %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cuutf %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cuutf %r0, %r1
#CHECK: error: invalid operand
#CHECK: cuutf %r2, %r4, -1
#CHECK: error: invalid operand
#CHECK: cuutf %r2, %r4, 16
cuutf %r1, %r0
cuutf %r0, %r1
cuutf %r2, %r4, -1
cuutf %r2, %r4, 16
#CHECK: error: invalid register pair
#CHECK: cuxtr %r0, %f2
#CHECK: error: invalid register pair
#CHECK: cuxtr %r1, %f0
cuxtr %r0, %f2
cuxtr %r1, %f0
#CHECK: error: invalid operand
#CHECK: cvb %r0, -1
#CHECK: error: invalid operand
#CHECK: cvb %r0, 4096
cvb %r0, -1
cvb %r0, 4096
#CHECK: error: invalid operand
#CHECK: cvbg %r0, -524289
#CHECK: error: invalid operand
#CHECK: cvbg %r0, 524288
cvbg %r0, -524289
cvbg %r0, 524288
#CHECK: error: invalid operand
#CHECK: cvby %r0, -524289
#CHECK: error: invalid operand
#CHECK: cvby %r0, 524288
cvby %r0, -524289
cvby %r0, 524288
#CHECK: error: invalid operand
#CHECK: cvd %r0, -1
#CHECK: error: invalid operand
#CHECK: cvd %r0, 4096
cvd %r0, -1
cvd %r0, 4096
#CHECK: error: invalid operand
#CHECK: cvdg %r0, -524289
#CHECK: error: invalid operand
#CHECK: cvdg %r0, 524288
cvdg %r0, -524289
cvdg %r0, 524288
#CHECK: error: invalid operand
#CHECK: cvdy %r0, -524289
#CHECK: error: invalid operand
#CHECK: cvdy %r0, 524288
cvdy %r0, -524289
cvdy %r0, 524288
#CHECK: error: invalid register pair
#CHECK: cxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: cxbr %f2, %f0
cxbr %f0, %f2
cxbr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: cxfbr %f2, %r0
cxfbr %f2, %r0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxfbra %f0, 0, %r0, 0
cxfbra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxftr %f0, 0, %r0, 0
cxftr %f0, 0, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cxfr %f2, %r0
cxfr %f2, %r0
#CHECK: error: invalid register pair
#CHECK: cxgbr %f2, %r0
cxgbr %f2, %r0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxgbra %f0, 0, %r0, 0
cxgbra %f0, 0, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cxgr %f2, %r0
cxgr %f2, %r0
#CHECK: error: invalid register pair
#CHECK: cxgtr %f2, %r0
cxgtr %f2, %r0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxgtra %f0, 0, %r0, 0
cxgtra %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxlfbr %f0, 0, %r0, 0
cxlfbr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxlftr %f0, 0, %r0, 0
cxlftr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxlgbr %f0, 0, %r0, 0
cxlgbr %f0, 0, %r0, 0
#CHECK: error: instruction requires: fp-extension
#CHECK: cxlgtr %f0, 0, %r0, 0
cxlgtr %f0, 0, %r0, 0
#CHECK: error: invalid register pair
#CHECK: cxr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: cxr %f2, %f0
cxr %f0, %f2
cxr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: cxstr %f0, %r1
#CHECK: error: invalid register pair
#CHECK: cxstr %f2, %r0
cxstr %f0, %r1
cxstr %f2, %r0
#CHECK: error: invalid register pair
#CHECK: cxtr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: cxtr %f2, %f0
cxtr %f0, %f2
cxtr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: cxutr %f0, %r1
#CHECK: error: invalid register pair
#CHECK: cxutr %f2, %r0
cxutr %f0, %r1
cxutr %f2, %r0
#CHECK: error: invalid operand
#CHECK: cy %r0, -524289
#CHECK: error: invalid operand
#CHECK: cy %r0, 524288
cy %r0, -524289
cy %r0, 524288
#CHECK: error: invalid operand
#CHECK: d %r0, -1
#CHECK: error: invalid operand
#CHECK: d %r0, 4096
#CHECK: error: invalid register pair
#CHECK: d %r1, 0
d %r0, -1
d %r0, 4096
d %r1, 0
#CHECK: error: invalid operand
#CHECK: dd %f0, -1
#CHECK: error: invalid operand
#CHECK: dd %f0, 4096
dd %f0, -1
dd %f0, 4096
#CHECK: error: invalid operand
#CHECK: ddb %f0, -1
#CHECK: error: invalid operand
#CHECK: ddb %f0, 4096
ddb %f0, -1
ddb %f0, 4096
#CHECK: error: instruction requires: fp-extension
#CHECK: ddtra %f0, %f0, %f0, 0
ddtra %f0, %f0, %f0, 0
#CHECK: error: invalid operand
#CHECK: de %f0, -1
#CHECK: error: invalid operand
#CHECK: de %f0, 4096
de %f0, -1
de %f0, 4096
#CHECK: error: invalid operand
#CHECK: deb %f0, -1
#CHECK: error: invalid operand
#CHECK: deb %f0, 4096
deb %f0, -1
deb %f0, 4096
#CHECK: error: invalid operand
#CHECK: diag %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: diag %r0, %r0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: diag %r0, %r0, 0(%r1,%r2)
diag %r0, %r0, -1
diag %r0, %r0, 4096
diag %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: didbr %f0, %f0, %f0, -1
#CHECK: error: invalid operand
#CHECK: didbr %f0, %f0, %f0, 16
didbr %f0, %f0, %f0, -1
didbr %f0, %f0, %f0, 16
#CHECK: error: invalid operand
#CHECK: diebr %f0, %f0, %f0, -1
#CHECK: error: invalid operand
#CHECK: diebr %f0, %f0, %f0, 16
diebr %f0, %f0, %f0, -1
diebr %f0, %f0, %f0, 16
#CHECK: error: invalid operand
#CHECK: dl %r0, -524289
#CHECK: error: invalid operand
#CHECK: dl %r0, 524288
#CHECK: error: invalid register pair
#CHECK: dl %r1, 0
dl %r0, -524289
dl %r0, 524288
dl %r1, 0
#CHECK: error: invalid register pair
#CHECK: dr %r1, %r0
dr %r1, %r0
#CHECK: error: invalid operand
#CHECK: dlg %r0, -524289
#CHECK: error: invalid operand
#CHECK: dlg %r0, 524288
#CHECK: error: invalid register pair
#CHECK: dlg %r1, 0
dlg %r0, -524289
dlg %r0, 524288
dlg %r1, 0
#CHECK: error: invalid register pair
#CHECK: dlgr %r1, %r0
dlgr %r1, %r0
#CHECK: error: invalid register pair
#CHECK: dlr %r1, %r0
dlr %r1, %r0
#CHECK: error: missing length in address
#CHECK: dp 0, 0(1)
#CHECK: error: missing length in address
#CHECK: dp 0(1), 0
#CHECK: error: missing length in address
#CHECK: dp 0(%r1), 0(1,%r1)
#CHECK: error: missing length in address
#CHECK: dp 0(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(0,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(1,%r1), 0(0,%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(17,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(1,%r1), 0(17,%r1)
#CHECK: error: invalid operand
#CHECK: dp -1(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: dp 4096(1,%r1), 0(1,%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(1,%r1), -1(1,%r1)
#CHECK: error: invalid operand
#CHECK: dp 0(1,%r1), 4096(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: dp 0(%r1,%r2), 0(1,%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: dp 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: dp 0(-), 0(1)
dp 0, 0(1)
dp 0(1), 0
dp 0(%r1), 0(1,%r1)
dp 0(1,%r1), 0(%r1)
dp 0(0,%r1), 0(1,%r1)
dp 0(1,%r1), 0(0,%r1)
dp 0(17,%r1), 0(1,%r1)
dp 0(1,%r1), 0(17,%r1)
dp -1(1,%r1), 0(1,%r1)
dp 4096(1,%r1), 0(1,%r1)
dp 0(1,%r1), -1(1,%r1)
dp 0(1,%r1), 4096(1,%r1)
dp 0(%r1,%r2), 0(1,%r1)
dp 0(1,%r2), 0(%r1,%r2)
dp 0(-), 0(1)
#CHECK: error: invalid operand
#CHECK: dsg %r0, -524289
#CHECK: error: invalid operand
#CHECK: dsg %r0, 524288
#CHECK: error: invalid register pair
#CHECK: dsg %r1, 0
dsg %r0, -524289
dsg %r0, 524288
dsg %r1, 0
#CHECK: error: invalid operand
#CHECK: dsgf %r0, -524289
#CHECK: error: invalid operand
#CHECK: dsgf %r0, 524288
#CHECK: error: invalid register pair
#CHECK: dsgf %r1, 0
dsgf %r0, -524289
dsgf %r0, 524288
dsgf %r1, 0
#CHECK: error: invalid register pair
#CHECK: dsgfr %r1, %r0
dsgfr %r1, %r0
#CHECK: error: invalid register pair
#CHECK: dsgr %r1, %r0
dsgr %r1, %r0
#CHECK: error: invalid register pair
#CHECK: dxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: dxbr %f2, %f0
dxbr %f0, %f2
dxbr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: dxr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: dxr %f2, %f0
dxr %f0, %f2
dxr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: dxtr %f0, %f0, %f2
#CHECK: error: invalid register pair
#CHECK: dxtr %f0, %f2, %f0
#CHECK: error: invalid register pair
#CHECK: dxtr %f2, %f0, %f0
dxtr %f0, %f0, %f2
dxtr %f0, %f2, %f0
dxtr %f2, %f0, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: dxtra %f0, %f0, %f0, 0
dxtra %f0, %f0, %f0, 0
#CHECK: error: invalid operand
#CHECK: ecag %r0, %r0, -524289
#CHECK: error: invalid operand
#CHECK: ecag %r0, %r0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: ecag %r0, %r0, 0(%r1,%r2)
ecag %r0, %r0, -524289
ecag %r0, %r0, 524288
ecag %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid use of indexed addressing
#CHECK: ectg 160(%r1,%r15),160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: ectg -1(%r1),160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: ectg 4096(%r1),160(%r15), %r2
#CHECK: error: invalid operand
#CHECK: ectg 0(%r1),-1(%r15), %r2
#CHECK: error: invalid operand
#CHECK: ectg 0(%r1),4096(%r15), %r2
ectg 160(%r1,%r15),160(%r15), %r2
ectg -1(%r1),160(%r15), %r2
ectg 4096(%r1),160(%r15), %r2
ectg 0(%r1),-1(%r15), %r2
ectg 0(%r1),4096(%r15), %r2
#CHECK: error: missing length in address
#CHECK: ed 0, 0
#CHECK: error: missing length in address
#CHECK: ed 0(%r1), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: ed 0(1,%r1), 0(2,%r1)
#CHECK: error: invalid operand
#CHECK: ed 0(0,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: ed 0(257,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: ed -1(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: ed 4096(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: ed 0(1,%r1), -1(%r1)
#CHECK: error: invalid operand
#CHECK: ed 0(1,%r1), 4096(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: ed 0(%r1,%r2), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: ed 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: ed 0(-), 0
ed 0, 0
ed 0(%r1), 0(%r1)
ed 0(1,%r1), 0(2,%r1)
ed 0(0,%r1), 0(%r1)
ed 0(257,%r1), 0(%r1)
ed -1(1,%r1), 0(%r1)
ed 4096(1,%r1), 0(%r1)
ed 0(1,%r1), -1(%r1)
ed 0(1,%r1), 4096(%r1)
ed 0(%r1,%r2), 0(%r1)
ed 0(1,%r2), 0(%r1,%r2)
ed 0(-), 0
#CHECK: error: missing length in address
#CHECK: edmk 0, 0
#CHECK: error: missing length in address
#CHECK: edmk 0(%r1), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: edmk 0(1,%r1), 0(2,%r1)
#CHECK: error: invalid operand
#CHECK: edmk 0(0,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: edmk 0(257,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: edmk -1(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: edmk 4096(1,%r1), 0(%r1)
#CHECK: error: invalid operand
#CHECK: edmk 0(1,%r1), -1(%r1)
#CHECK: error: invalid operand
#CHECK: edmk 0(1,%r1), 4096(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: edmk 0(%r1,%r2), 0(%r1)
#CHECK: error: invalid use of indexed addressing
#CHECK: edmk 0(1,%r2), 0(%r1,%r2)
#CHECK: error: unknown token in expression
#CHECK: edmk 0(-), 0
edmk 0, 0
edmk 0(%r1), 0(%r1)
edmk 0(1,%r1), 0(2,%r1)
edmk 0(0,%r1), 0(%r1)
edmk 0(257,%r1), 0(%r1)
edmk -1(1,%r1), 0(%r1)
edmk 4096(1,%r1), 0(%r1)
edmk 0(1,%r1), -1(%r1)
edmk 0(1,%r1), 4096(%r1)
edmk 0(%r1,%r2), 0(%r1)
edmk 0(1,%r2), 0(%r1,%r2)
edmk 0(-), 0
#CHECK: error: invalid register pair
#CHECK: eextr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: eextr %f2, %f0
eextr %f0, %f2
eextr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: esta %r1, %r0
esta %r1, %r0
#CHECK: error: invalid register pair
#CHECK: esxtr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: esxtr %f2, %f0
esxtr %f0, %f2
esxtr %f2, %f0
#CHECK: error: invalid operand
#CHECK: ex %r0, -1
#CHECK: error: invalid operand
#CHECK: ex %r0, 4096
ex %r0, -1
ex %r0, 4096
#CHECK: error: invalid operand
#CHECK: fidbr %f0, -1, %f0
#CHECK: error: invalid operand
#CHECK: fidbr %f0, 16, %f0
fidbr %f0, -1, %f0
fidbr %f0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: fidbra %f0, 0, %f0, 0
fidbra %f0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: fidtr %f0, 0, %f0, -1
#CHECK: error: invalid operand
#CHECK: fidtr %f0, 0, %f0, 16
#CHECK: error: invalid operand
#CHECK: fidtr %f0, -1, %f0, 0
#CHECK: error: invalid operand
#CHECK: fidtr %f0, 16, %f0, 0
fidtr %f0, 0, %f0, -1
fidtr %f0, 0, %f0, 16
fidtr %f0, -1, %f0, 0
fidtr %f0, 16, %f0, 0
#CHECK: error: invalid operand
#CHECK: fiebr %f0, -1, %f0
#CHECK: error: invalid operand
#CHECK: fiebr %f0, 16, %f0
fiebr %f0, -1, %f0
fiebr %f0, 16, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: fiebra %f0, 0, %f0, 0
fiebra %f0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: fixbr %f0, -1, %f0
#CHECK: error: invalid operand
#CHECK: fixbr %f0, 16, %f0
#CHECK: error: invalid register pair
#CHECK: fixbr %f0, 0, %f2
#CHECK: error: invalid register pair
#CHECK: fixbr %f2, 0, %f0
fixbr %f0, -1, %f0
fixbr %f0, 16, %f0
fixbr %f0, 0, %f2
fixbr %f2, 0, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: fixbra %f0, 0, %f0, 0
fixbra %f0, 0, %f0, 0
#CHECK: error: invalid register pair
#CHECK: fixr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: fixr %f2, %f0
fixr %f0, %f2
fixr %f2, %f0
#CHECK: error: invalid operand
#CHECK: fixtr %f0, 0, %f0, -1
#CHECK: error: invalid operand
#CHECK: fixtr %f0, 0, %f0, 16
#CHECK: error: invalid operand
#CHECK: fixtr %f0, -1, %f0, 0
#CHECK: error: invalid operand
#CHECK: fixtr %f0, 16, %f0, 0
#CHECK: error: invalid register pair
#CHECK: fixtr %f0, 0, %f2, 0
#CHECK: error: invalid register pair
#CHECK: fixtr %f2, 0, %f0, 0
fixtr %f0, 0, %f0, -1
fixtr %f0, 0, %f0, 16
fixtr %f0, -1, %f0, 0
fixtr %f0, 16, %f0, 0
fixtr %f0, 0, %f2, 0
fixtr %f2, 0, %f0, 0
#CHECK: error: invalid register pair
#CHECK: flogr %r1, %r0
flogr %r1, %r0
#CHECK: error: invalid operand
#CHECK: ic %r0, -1
#CHECK: error: invalid operand
#CHECK: ic %r0, 4096
ic %r0, -1
ic %r0, 4096
#CHECK: error: invalid operand
#CHECK: icm %r0, 0, -1
#CHECK: error: invalid operand
#CHECK: icm %r0, 0, 4096
#CHECK: error: invalid operand
#CHECK: icm %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: icm %r0, 16, 0
icm %r0, 0, -1
icm %r0, 0, 4096
icm %r0, -1, 0
icm %r0, 16, 0
#CHECK: error: invalid operand
#CHECK: icmh %r0, 0, -524289
#CHECK: error: invalid operand
#CHECK: icmh %r0, 0, 524288
#CHECK: error: invalid operand
#CHECK: icmh %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: icmh %r0, 16, 0
icmh %r0, 0, -524289
icmh %r0, 0, 524288
icmh %r0, -1, 0
icmh %r0, 16, 0
#CHECK: error: invalid operand
#CHECK: icmy %r0, 0, -524289
#CHECK: error: invalid operand
#CHECK: icmy %r0, 0, 524288
#CHECK: error: invalid operand
#CHECK: icmy %r0, -1, 0
#CHECK: error: invalid operand
#CHECK: icmy %r0, 16, 0
icmy %r0, 0, -524289
icmy %r0, 0, 524288
icmy %r0, -1, 0
icmy %r0, 16, 0
#CHECK: error: invalid operand
#CHECK: icy %r0, -524289
#CHECK: error: invalid operand
#CHECK: icy %r0, 524288
icy %r0, -524289
icy %r0, 524288
#CHECK: error: invalid operand
#CHECK: idte %r0, %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: idte %r0, %r0, %r0, 16
idte %r0, %r0, %r0, -1
idte %r0, %r0, %r0, 16
#CHECK: error: invalid register pair
#CHECK: iextr %f0, %f0, %f2
#CHECK: error: invalid register pair
#CHECK: iextr %f0, %f2, %f0
#CHECK: error: invalid register pair
#CHECK: iextr %f2, %f0, %f0
iextr %f0, %f0, %f2
iextr %f0, %f2, %f0
iextr %f2, %f0, %f0
#CHECK: error: invalid operand
#CHECK: iihf %r0, -1
#CHECK: error: invalid operand
#CHECK: iihf %r0, 1 << 32
iihf %r0, -1
iihf %r0, 1 << 32
#CHECK: error: invalid operand
#CHECK: iihh %r0, -1
#CHECK: error: invalid operand
#CHECK: iihh %r0, 0x10000
iihh %r0, -1
iihh %r0, 0x10000
#CHECK: error: invalid operand
#CHECK: iihl %r0, -1
#CHECK: error: invalid operand
#CHECK: iihl %r0, 0x10000
iihl %r0, -1
iihl %r0, 0x10000
#CHECK: error: invalid operand
#CHECK: iilf %r0, -1
#CHECK: error: invalid operand
#CHECK: iilf %r0, 1 << 32
iilf %r0, -1
iilf %r0, 1 << 32
#CHECK: error: invalid operand
#CHECK: iilh %r0, -1
#CHECK: error: invalid operand
#CHECK: iilh %r0, 0x10000
iilh %r0, -1
iilh %r0, 0x10000
#CHECK: error: invalid operand
#CHECK: iill %r0, -1
#CHECK: error: invalid operand
#CHECK: iill %r0, 0x10000
iill %r0, -1
iill %r0, 0x10000
#CHECK: error: invalid operand
#CHECK: ipte %r0, %r0, %r0, -1
#CHECK: error: invalid operand
#CHECK: ipte %r0, %r0, %r0, 16
ipte %r0, %r0, %r0, -1
ipte %r0, %r0, %r0, 16
#CHECK: error: invalid operand
#CHECK: kdb %f0, -1
#CHECK: error: invalid operand
#CHECK: kdb %f0, 4096
kdb %f0, -1
kdb %f0, 4096
#CHECK: error: invalid operand
#CHECK: keb %f0, -1
#CHECK: error: invalid operand
#CHECK: keb %f0, 4096
keb %f0, -1
keb %f0, 4096
#CHECK: error: invalid register pair
#CHECK: kimd %r0, %r1
kimd %r0, %r1
#CHECK: error: invalid register pair
#CHECK: klmd %r0, %r1
klmd %r0, %r1
#CHECK: error: invalid register pair
#CHECK: km %r1, %r2
#CHECK: error: invalid register pair
#CHECK: km %r2, %r1
km %r1, %r2
km %r2, %r1
#CHECK: error: invalid register pair
#CHECK: kmac %r0, %r1
kmac %r0, %r1
#CHECK: error: invalid register pair
#CHECK: kmc %r1, %r2
#CHECK: error: invalid register pair
#CHECK: kmc %r2, %r1
kmc %r1, %r2
kmc %r2, %r1
#CHECK: error: instruction requires: message-security-assist-extension4
#CHECK: kmctr %r2, %r4, %r6
kmctr %r2, %r4, %r6
#CHECK: error: instruction requires: message-security-assist-extension4
#CHECK: kmf %r2, %r4
kmf %r2, %r4
#CHECK: error: instruction requires: message-security-assist-extension4
#CHECK: kmo %r2, %r4
kmo %r2, %r4
#CHECK: error: invalid register pair
#CHECK: kxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: kxbr %f2, %f0
kxbr %f0, %f2
kxbr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: kxtr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: kxtr %f2, %f0
kxtr %f0, %f2
kxtr %f2, %f0
#CHECK: error: invalid operand
#CHECK: l %r0, -1
#CHECK: error: invalid operand
#CHECK: l %r0, 4096
l %r0, -1
l %r0, 4096
#CHECK: error: invalid operand
#CHECK: la %r0, -1
#CHECK: error: invalid operand
#CHECK: la %r0, 4096
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: invalid operand
#CHECK: lae %r0, -1
#CHECK: error: invalid operand
#CHECK: lae %r0, 4096
lae %r0, -1
lae %r0, 4096
#CHECK: error: invalid operand
#CHECK: laey %r0, -524289
#CHECK: error: invalid operand
#CHECK: laey %r0, 524288
laey %r0, -524289
laey %r0, 524288
#CHECK: error: invalid operand
#CHECK: lam %a0, %a0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: lam %a0, %a0, 0(%r1,%r2)
lam %a0, %a0, 4096
lam %a0, %a0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: lamy %a0, %a0, -524289
#CHECK: error: invalid operand
#CHECK: lamy %a0, %a0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: lamy %a0, %a0, 0(%r1,%r2)
lamy %a0, %a0, -524289
lamy %a0, %a0, 524288
lamy %a0, %a0, 0(%r1,%r2)
#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: offset out of range
#CHECK: larl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: larl %r0, -1
#CHECK: error: offset out of range
#CHECK: larl %r0, 1
#CHECK: error: offset out of range
#CHECK: larl %r0, 0x100000000
#CHECK: error: offset out of range
#CHECK: larl %r1, __unnamed_1+3564822854692
larl %r0, -0x1000000002
larl %r0, -1
larl %r0, 1
larl %r0, 0x100000000
larl %r1, __unnamed_1+3564822854692
#CHECK: error: invalid use of indexed addressing
#CHECK: lasp 160(%r1,%r15),160(%r15)
#CHECK: error: invalid operand
#CHECK: lasp -1(%r1),160(%r15)
#CHECK: error: invalid operand
#CHECK: lasp 4096(%r1),160(%r15)
#CHECK: error: invalid operand
#CHECK: lasp 0(%r1),-1(%r15)
#CHECK: error: invalid operand
#CHECK: lasp 0(%r1),4096(%r15)
lasp 160(%r1,%r15),160(%r15)
lasp -1(%r1),160(%r15)
lasp 4096(%r1),160(%r15)
lasp 0(%r1),-1(%r15)
lasp 0(%r1),4096(%r15)
#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: invalid operand
#CHECK: lay %r0, -524289
#CHECK: error: invalid operand
#CHECK: lay %r0, 524288
lay %r0, -524289
lay %r0, 524288
#CHECK: error: invalid operand
#CHECK: lb %r0, -524289
#CHECK: error: invalid operand
#CHECK: lb %r0, 524288
lb %r0, -524289
lb %r0, 524288
#CHECK: error: instruction requires: high-word
#CHECK: lbh %r0, 0
lbh %r0, 0
#CHECK: error: invalid operand
#CHECK: lcctl -1
#CHECK: error: invalid operand
#CHECK: lcctl 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: lcctl 0(%r1,%r2)
lcctl -1
lcctl 4096
lcctl 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: lctl %c0, %c0, -1
#CHECK: error: invalid operand
#CHECK: lctl %c0, %c0, 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: lctl %c0, %c0, 0(%r1,%r2)
lctl %c0, %c0, -1
lctl %c0, %c0, 4096
lctl %c0, %c0, 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: lctlg %c0, %c0, -524289
#CHECK: error: invalid operand
#CHECK: lctlg %c0, %c0, 524288
#CHECK: error: invalid use of indexed addressing
#CHECK: lctlg %c0, %c0, 0(%r1,%r2)
lctlg %c0, %c0, -524289
lctlg %c0, %c0, 524288
lctlg %c0, %c0, 0(%r1,%r2)
#CHECK: error: invalid register pair
#CHECK: lcxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: lcxbr %f2, %f0
lcxbr %f0, %f2
lcxbr %f2, %f0
#CHECK: error: invalid register pair
#CHECK: lcxr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: lcxr %f2, %f0
lcxr %f0, %f2
lcxr %f2, %f0
#CHECK: error: invalid operand
#CHECK: ld %f0, -1
#CHECK: error: invalid operand
#CHECK: ld %f0, 4096
ld %f0, -1
ld %f0, 4096
#CHECK: error: invalid operand
#CHECK: ldeb %f0, -1
#CHECK: error: invalid operand
#CHECK: ldeb %f0, 4096
ldeb %f0, -1
ldeb %f0, 4096
#CHECK: error: invalid operand
#CHECK: ldetr %f0, %f0, -1
#CHECK: error: invalid operand
#CHECK: ldetr %f0, %f0, 16
ldetr %f0, %f0, -1
ldetr %f0, %f0, 16
#CHECK: error: invalid register pair
#CHECK: ldxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: ldxbr %f2, %f0
ldxbr %f0, %f2
ldxbr %f2, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: ldxbra %f0, 0, %f0, 0
ldxbra %f0, 0, %f0, 0
#CHECK: error: invalid register pair
#CHECK: ldxr %f0, %f2
ldxr %f0, %f2
#CHECK: error: invalid operand
#CHECK: ldxtr %f0, 0, %f0, -1
#CHECK: error: invalid operand
#CHECK: ldxtr %f0, 0, %f0, 16
#CHECK: error: invalid operand
#CHECK: ldxtr %f0, -1, %f0, 0
#CHECK: error: invalid operand
#CHECK: ldxtr %f0, 16, %f0, 0
#CHECK: error: invalid register pair
#CHECK: ldxtr %f0, 0, %f2, 0
#CHECK: error: invalid register pair
#CHECK: ldxtr %f2, 0, %f0, 0
ldxtr %f0, 0, %f0, -1
ldxtr %f0, 0, %f0, 16
ldxtr %f0, -1, %f0, 0
ldxtr %f0, 16, %f0, 0
ldxtr %f0, 0, %f2, 0
ldxtr %f2, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: ldy %f0, -524289
#CHECK: error: invalid operand
#CHECK: ldy %f0, 524288
ldy %f0, -524289
ldy %f0, 524288
#CHECK: error: invalid operand
#CHECK: le %f0, -1
#CHECK: error: invalid operand
#CHECK: le %f0, 4096
le %f0, -1
le %f0, 4096
#CHECK: error: instruction requires: fp-extension
#CHECK: ledbra %f0, 0, %f0, 0
ledbra %f0, 0, %f0, 0
#CHECK: error: invalid operand
#CHECK: ledtr %f0, 0, %f0, -1
#CHECK: error: invalid operand
#CHECK: ledtr %f0, 0, %f0, 16
#CHECK: error: invalid operand
#CHECK: ledtr %f0, -1, %f0, 0
#CHECK: error: invalid operand
#CHECK: ledtr %f0, 16, %f0, 0
ledtr %f0, 0, %f0, -1
ledtr %f0, 0, %f0, 16
ledtr %f0, -1, %f0, 0
ledtr %f0, 16, %f0, 0
#CHECK: error: invalid register pair
#CHECK: lexbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: lexbr %f2, %f0
lexbr %f0, %f2
lexbr %f2, %f0
#CHECK: error: instruction requires: fp-extension
#CHECK: lexbra %f0, 0, %f0, 0
lexbra %f0, 0, %f0, 0
#CHECK: error: invalid register pair
#CHECK: lexr %f0, %f2
lexr %f0, %f2
#CHECK: error: invalid operand
#CHECK: ley %f0, -524289
#CHECK: error: invalid operand
#CHECK: ley %f0, 524288
ley %f0, -524289
ley %f0, 524288
#CHECK: error: invalid operand
#CHECK: lfas -1
#CHECK: error: invalid operand
#CHECK: lfas 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: lfas 0(%r1,%r2)
lfas -1
lfas 4096
lfas 0(%r1,%r2)
#CHECK: error: instruction requires: high-word
#CHECK: lfh %r0, 0
lfh %r0, 0
#CHECK: error: invalid operand
#CHECK: lfpc -1
#CHECK: error: invalid operand
#CHECK: lfpc 4096
#CHECK: error: invalid use of indexed addressing
#CHECK: lfpc 0(%r1,%r2)
lfpc -1
lfpc 4096
lfpc 0(%r1,%r2)
#CHECK: error: invalid operand
#CHECK: lg %r0, -524289
#CHECK: error: invalid operand
#CHECK: lg %r0, 524288
lg %r0, -524289
lg %r0, 524288
#CHECK: error: invalid operand
#CHECK: lgb %r0, -524289
#CHECK: error: invalid operand
#CHECK: lgb %r0, 524288
lgb %r0, -524289
lgb %r0, 524288
#CHECK: error: invalid operand
#CHECK: lgf %r0, -524289
#CHECK: error: invalid operand
#CHECK: lgf %r0, 524288
lgf %r0, -524289
lgf %r0, 524288
#CHECK: error: invalid operand
#CHECK: lgfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: lgfi %r0, (1 << 31)
lgfi %r0, (-1 << 31) - 1
lgfi %r0, (1 << 31)
#CHECK: error: offset out of range
#CHECK: lgfrl %r0, -0x1000000002
#CHECK: error: offset out of range
#CHECK: lgfrl %r0, -1
#CHECK: error: offset out of range
#CHECK: lgfrl %r0, 1
#CHECK: error: offset out of range
#CHECK: lgfrl %r0, 0x100000000
lgfrl %r0, -0x1000000002
lgfrl %r0, -1
lgfrl %r0, 1
lgfrl %r0, 0x100000000
#CHECK: error: invalid operand
#CHECK: lgh %r0, -524289