[SystemZ] Add zero-extending high-word loads (LLCH and LLHH)
[oota-llvm.git] / test / MC / SystemZ / insn-good-z196.s
index fa4471e598d14c444f8ec63f27097d7bf18f3a4f..ca8832930e12de77deb671d6e230aef5efee65cf 100644 (file)
        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]