22 lines
457 B
C
22 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;
|
|
}
|