qemu/tests/tcg/s390x/pack.c
<<
>>
Prefs
   1#include <unistd.h>
   2
   3int main(void)
   4{
   5    char data[] = {0xaa, 0xaa, 0xf1, 0xf2, 0xf3, 0xc4, 0xaa, 0xaa};
   6    char exp[] = {0xaa, 0xaa, 0x00, 0x01, 0x23, 0x4c, 0xaa, 0xaa};
   7    int i;
   8
   9    asm volatile(
  10        "    pack 2(4,%[data]),2(4,%[data])\n"
  11        :
  12        : [data] "a" (&data[0])
  13        : "memory");
  14    for (i = 0; i < 8; i++) {
  15        if (data[i] != exp[i]) {
  16            write(1, "bad data\n", 9);
  17            return 1;
  18        }
  19    }
  20    return 0;
  21}
  22