The fix to PR33552 unfortunately breaks the Linux kernel build.
Reduced testcase attached, but hey, I'll put it inline as well:
int f(int n)
{
int x;
asm("" : "=&c"(n), "=r"(x) : "1"(n), "0"(n));
return n;
}
And the error is:
usercopy.i:5: error: 'asm' operand has impossible constraints
--
Summary: Breakage caused by the fix to PR33552
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: segher at kernel dot crashing dot org
GCC target triplet: i386-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33600