[mips] Implement .ent, .end, .frame, .mask and .fmask assembler directives
[oota-llvm.git] / test / MC / SystemZ / insn-good-z196.s
index fa4471e598d14c444f8ec63f27097d7bf18f3a4f..db5ecdd238ca3b4723a4e974b633fdab7b7f427d 100644 (file)
        ahik    %r15, %r0, 0
        ahik    %r7, %r8, -16
 
+#CHECK: aih    %r0, -2147483648        # encoding: [0xcc,0x08,0x80,0x00,0x00,0x00]
+#CHECK: aih    %r0, -1                 # encoding: [0xcc,0x08,0xff,0xff,0xff,0xff]
+#CHECK: aih    %r0, 0                  # encoding: [0xcc,0x08,0x00,0x00,0x00,0x00]
+#CHECK: aih    %r0, 1                  # encoding: [0xcc,0x08,0x00,0x00,0x00,0x01]
+#CHECK: aih    %r0, 2147483647         # encoding: [0xcc,0x08,0x7f,0xff,0xff,0xff]
+#CHECK: aih    %r15, 0                 # encoding: [0xcc,0xf8,0x00,0x00,0x00,0x00]
+
+       aih     %r0, -1 << 31
+       aih     %r0, -1
+       aih     %r0, 0
+       aih     %r0, 1
+       aih     %r0, (1 << 31) - 1
+       aih     %r15, 0
+
 #CHECK: alghsik        %r0, %r0, -32768        # encoding: [0xec,0x00,0x80,0x00,0x00,0xdb]
 #CHECK: alghsik        %r0, %r0, -1            # encoding: [0xec,0x00,0xff,0xff,0x00,0xdb]
 #CHECK: alghsik        %r0, %r0, 0             # encoding: [0xec,0x00,0x00,0x00,0x00,0xdb]
        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]
+#CHECK: chf    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xcd]
+#CHECK: chf    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xcd]
+#CHECK: chf    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xcd]
+#CHECK: chf    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xcd]
+#CHECK: chf    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xcd]
+#CHECK: chf    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xcd]
+#CHECK: chf    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xcd]
+
+       chf     %r0, -524288
+       chf     %r0, -1
+       chf     %r0, 0
+       chf     %r0, 1
+       chf     %r0, 524287
+       chf     %r0, 0(%r1)
+       chf     %r0, 0(%r15)
+       chf     %r0, 524287(%r1,%r15)
+       chf     %r0, 524287(%r15,%r1)
+       chf     %r15, 0
+
+#CHECK: cih    %r0, -2147483648        # encoding: [0xcc,0x0d,0x80,0x00,0x00,0x00]
+#CHECK: cih    %r0, -1                 # encoding: [0xcc,0x0d,0xff,0xff,0xff,0xff]
+#CHECK: cih    %r0, 0                  # encoding: [0xcc,0x0d,0x00,0x00,0x00,0x00]
+#CHECK: cih    %r0, 1                  # encoding: [0xcc,0x0d,0x00,0x00,0x00,0x01]
+#CHECK: cih    %r0, 2147483647         # encoding: [0xcc,0x0d,0x7f,0xff,0xff,0xff]
+#CHECK: cih    %r15, 0                 # encoding: [0xcc,0xfd,0x00,0x00,0x00,0x00]
+
+       cih     %r0, -1 << 31
+       cih     %r0, -1
+       cih     %r0, 0
+       cih     %r0, 1
+       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]
+#CHECK: clhf   %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xcf]
+#CHECK: clhf   %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xcf]
+#CHECK: clhf   %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xcf]
+#CHECK: clhf   %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xcf]
+#CHECK: clhf   %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xcf]
+#CHECK: clhf   %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xcf]
+#CHECK: clhf   %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xcf]
+
+       clhf    %r0, -524288
+       clhf    %r0, -1
+       clhf    %r0, 0
+       clhf    %r0, 1
+       clhf    %r0, 524287
+       clhf    %r0, 0(%r1)
+       clhf    %r0, 0(%r15)
+       clhf    %r0, 524287(%r1,%r15)
+       clhf    %r0, 524287(%r15,%r1)
+       clhf    %r15, 0
+
+#CHECK: clih   %r0, 0                  # encoding: [0xcc,0x0f,0x00,0x00,0x00,0x00]
+#CHECK: clih   %r0, 1                  # encoding: [0xcc,0x0f,0x00,0x00,0x00,0x01]
+#CHECK: clih   %r0, 4294967295         # encoding: [0xcc,0x0f,0xff,0xff,0xff,0xff]
+#CHECK: clih   %r15, 0                 # encoding: [0xcc,0xff,0x00,0x00,0x00,0x00]
+
+       clih    %r0, 0
+       clih    %r0, 1
+       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]
        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]
        lbh     %r0, 524287(%r15,%r1)
        lbh     %r15, 0
 
+#CHECK: ldxbra %f0, 0, %f0, 0          # encoding: [0xb3,0x45,0x00,0x00]
+#CHECK: ldxbra %f0, 0, %f0, 15         # encoding: [0xb3,0x45,0x0f,0x00]
+#CHECK: ldxbra %f0, 0, %f13, 0         # encoding: [0xb3,0x45,0x00,0x0d]
+#CHECK: ldxbra %f0, 15, %f0, 0         # encoding: [0xb3,0x45,0xf0,0x00]
+#CHECK: ldxbra %f4, 5, %f8, 9          # encoding: [0xb3,0x45,0x59,0x48]
+#CHECK: ldxbra %f13, 0, %f0, 0         # encoding: [0xb3,0x45,0x00,0xd0]
+
+       ldxbra  %f0, 0, %f0, 0
+       ldxbra  %f0, 0, %f0, 15
+       ldxbra  %f0, 0, %f13, 0
+       ldxbra  %f0, 15, %f0, 0
+       ldxbra  %f4, 5, %f8, 9
+       ldxbra  %f13, 0, %f0, 0
+
+#CHECK: ledbra %f0, 0, %f0, 0          # encoding: [0xb3,0x44,0x00,0x00]
+#CHECK: ledbra %f0, 0, %f0, 15         # encoding: [0xb3,0x44,0x0f,0x00]
+#CHECK: ledbra %f0, 0, %f15, 0         # encoding: [0xb3,0x44,0x00,0x0f]
+#CHECK: ledbra %f0, 15, %f0, 0         # encoding: [0xb3,0x44,0xf0,0x00]
+#CHECK: ledbra %f4, 5, %f6, 7          # encoding: [0xb3,0x44,0x57,0x46]
+#CHECK: ledbra %f15, 0, %f0, 0         # encoding: [0xb3,0x44,0x00,0xf0]
+
+       ledbra  %f0, 0, %f0, 0
+       ledbra  %f0, 0, %f0, 15
+       ledbra  %f0, 0, %f15, 0
+       ledbra  %f0, 15, %f0, 0
+       ledbra  %f4, 5, %f6, 7
+       ledbra  %f15, 0, %f0, 0
+
+#CHECK: lexbra %f0, 0, %f0, 0          # encoding: [0xb3,0x46,0x00,0x00]
+#CHECK: lexbra %f0, 0, %f0, 15         # encoding: [0xb3,0x46,0x0f,0x00]
+#CHECK: lexbra %f0, 0, %f13, 0         # encoding: [0xb3,0x46,0x00,0x0d]
+#CHECK: lexbra %f0, 15, %f0, 0         # encoding: [0xb3,0x46,0xf0,0x00]
+#CHECK: lexbra %f4, 5, %f8, 9          # encoding: [0xb3,0x46,0x59,0x48]
+#CHECK: lexbra %f13, 0, %f0, 0         # encoding: [0xb3,0x46,0x00,0xd0]
+
+       lexbra  %f0, 0, %f0, 0
+       lexbra  %f0, 0, %f0, 15
+       lexbra  %f0, 0, %f13, 0
+       lexbra  %f0, 15, %f0, 0
+       lexbra  %f4, 5, %f8, 9
+       lexbra  %f13, 0, %f0, 0
+
 #CHECK: lfh    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xca]
 #CHECK: lfh    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xca]
 #CHECK: lfh    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xca]
        lhh     %r0, 524287(%r15,%r1)
        lhh     %r15, 0
 
+#CHECK: llch   %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc2]
+#CHECK: llch   %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc2]
+#CHECK: llch   %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc2]
+#CHECK: llch   %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc2]
+#CHECK: llch   %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc2]
+#CHECK: llch   %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc2]
+#CHECK: llch   %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc2]
+#CHECK: llch   %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc2]
+#CHECK: llch   %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc2]
+#CHECK: llch   %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc2]
+
+       llch    %r0, -524288
+       llch    %r0, -1
+       llch    %r0, 0
+       llch    %r0, 1
+       llch    %r0, 524287
+       llch    %r0, 0(%r1)
+       llch    %r0, 0(%r15)
+       llch    %r0, 524287(%r1,%r15)
+       llch    %r0, 524287(%r15,%r1)
+       llch    %r15, 0
+
+#CHECK: llhh   %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc6]
+#CHECK: llhh   %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc6]
+#CHECK: llhh   %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc6]
+#CHECK: llhh   %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc6]
+#CHECK: llhh   %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc6]
+#CHECK: llhh   %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc6]
+#CHECK: llhh   %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc6]
+#CHECK: llhh   %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc6]
+#CHECK: llhh   %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc6]
+#CHECK: llhh   %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc6]
+
+       llhh    %r0, -524288
+       llhh    %r0, -1
+       llhh    %r0, 0
+       llhh    %r0, 1
+       llhh    %r0, 524287
+       llhh    %r0, 0(%r1)
+       llhh    %r0, 0(%r15)
+       llhh    %r0, 524287(%r1,%r15)
+       llhh    %r0, 524287(%r15,%r1)
+       llhh    %r15, 0
+
 #CHECK: loc    %r0, 0, 0               # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf2]
 #CHECK: loc    %r0, 0, 15              # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf2]
 #CHECK: loc    %r0, -524288, 0         # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf2]
        srlk    %r0,%r0,524287(%r1)
        srlk    %r0,%r0,524287(%r15)
 
+#CHECK: stch   %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc3]
+#CHECK: stch   %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc3]
+#CHECK: stch   %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc3]
+#CHECK: stch   %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc3]
+#CHECK: stch   %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc3]
+#CHECK: stch   %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc3]
+#CHECK: stch   %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc3]
+#CHECK: stch   %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc3]
+#CHECK: stch   %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc3]
+#CHECK: stch   %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc3]
+
+       stch    %r0, -524288
+       stch    %r0, -1
+       stch    %r0, 0
+       stch    %r0, 1
+       stch    %r0, 524287
+       stch    %r0, 0(%r1)
+       stch    %r0, 0(%r15)
+       stch    %r0, 524287(%r1,%r15)
+       stch    %r0, 524287(%r15,%r1)
+       stch    %r15, 0
+
+#CHECK: sthh   %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc7]
+#CHECK: sthh   %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc7]
+#CHECK: sthh   %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc7]
+#CHECK: sthh   %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc7]
+#CHECK: sthh   %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc7]
+#CHECK: sthh   %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc7]
+#CHECK: sthh   %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc7]
+#CHECK: sthh   %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc7]
+#CHECK: sthh   %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc7]
+#CHECK: sthh   %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc7]
+
+       sthh    %r0, -524288
+       sthh    %r0, -1
+       sthh    %r0, 0
+       sthh    %r0, 1
+       sthh    %r0, 524287
+       sthh    %r0, 0(%r1)
+       sthh    %r0, 0(%r15)
+       sthh    %r0, 524287(%r1,%r15)
+       sthh    %r0, 524287(%r15,%r1)
+       sthh    %r15, 0
+
 #CHECK: stfh   %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcb]
 #CHECK: stfh   %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcb]
 #CHECK: stfh   %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcb]