https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63966
Bug ID: 63966 Summary: [5 regression] inconsistent operand constraints compiling build libcpp Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org CC: ubizjak at gmail dot com Host: i386-apple-darwin14.0.0 Target: i386-apple-darwin14.0.0 Build: i386-apple-darwin14.0.0 Bootstrapping Darwin/i386 (non-default 32-bit configuration) with gcc 4.9.1 FAILs compiling the stage1 build libcpp: g++ -m32 -I/vol/gcc/src/hg/trunk/local/libcpp -I. -I/vol/gcc/src/hg/trunk/local/libcpp/../include -I/vol/gcc/src/hg/trunk/local/libcpp/include -g -O2 -W -Wall -Wno-narrowing -Wwrite-strings -Wmissing-format-attribute -pedantic -Wno-long-long -fno-exceptions -fno-rtti -I/vol/gcc/src/hg/trunk/local/libcpp -I. -I/vol/gcc/src/hg/trunk/local/libcpp/../include -I/vol/gcc/src/hg/trunk/local/libcpp/include -c -o lex.o -MT lex.o -MMD -MP -MF .deps/lex.Tpo /vol/gcc/src/hg/trunk/local/libcpp/lex.c In file included from /vol/gcc/src/hg/trunk/local/libcpp/lex.c:474:0: /vol/gcc/src/hg/trunk/local/libcpp/../gcc/config/i386/cpuid.h: In function 'void _cpp_init_lexer()': /vol/gcc/src/hg/trunk/local/libcpp/../gcc/config/i386/cpuid.h:209:46: error: inconsistent operand constraints in an 'asm' __cpuid (__ext, __eax, __ebx, __ecx, __edx); ^ /vol/gcc/src/hg/trunk/local/libcpp/../gcc/config/i386/cpuid.h:232:52: error: inconsistent operand constraints in an 'asm' __cpuid (__level, *__eax, *__ebx, *__ecx, *__edx); ^ make: *** [lex.o] Error 1 This was caused by the following patch: 2014-10-17 Uros Bizjak <ubiz...@gmail.com> * config/i386/cpuid.h (__cpuid): Remove definitions that handle %ebx register in a special way. (__cpuid_count): Ditto. * config/i386/driver-i386.h: Protect with "#if defined(__GNUC__) && (__GNUC__ >= 5 || !defined(__PIC__))". (host_detect_local_cpu): Mention that GCC with non-fixed %ebx is required to compile the function. Darwin/x86_64 isn't affected. Rainer