#define x86_test_and_clear_bit_percpu(bit, var)                                \
 ({                                                                     \
        bool old__;                                                     \
-       asm volatile("btr %2,"__percpu_arg(1)"\n\tsetc %0"              \
-                    : "=qm" (old__), "+m" (var)                        \
+       asm volatile("btr %2,"__percpu_arg(1)"\n\t"                     \
+                    CC_SET(c)                                          \
+                    : CC_OUT(c) (old__), "+m" (var)                    \
                     : "dIr" (bit));                                    \
        old__;                                                          \
 })
        bool oldbit;
 
        asm volatile("bt "__percpu_arg(2)",%1\n\t"
-                       "setc %0"
-                       : "=qm" (oldbit)
+                       CC_SET(c)
+                       : CC_OUT(c) (oldbit)
                        : "m" (*(unsigned long *)addr), "Ir" (nr));
 
        return oldbit;