#include #include 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; }