qemu-e2k/tests/tcg/s390x/ipm.c

23 lines
457 B
C

#include <stdint.h>
#include <unistd.h>
int main(void)
{
uint32_t op1 = 0x55555555;
uint32_t op2 = 0x44444444;
uint64_t cc = 0xffffffffffffffffull;
asm volatile(
" clc 0(4,%[op1]),0(%[op2])\n"
" ipm %[cc]\n"
: [cc] "+r" (cc)
: [op1] "r" (&op1),
[op2] "r" (&op2)
: "cc");
if (cc != 0xffffffff20ffffffull) {
write(1, "bad cc\n", 7);
return 1;
}
return 0;
}