http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55712
--- Comment #9 from uros at gcc dot gnu.org 2013-01-06 08:45:48 UTC --- Author: uros Date: Sun Jan 6 08:45:43 2013 New Revision: 194937 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194937 Log: Backport from mainline 2013-01-03 Uros Bizjak <ubiz...@gmail.com> PR target/55712 * config/i386/i386-c.c (ix86_target_macros_internal): Depending on selected code model, define __code_mode_small__, __code_model_medium__, __code_model_large__, __code_model_32__ or __code_model_kernel__. * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix xchg temporary register with %k. Declare temporary register as early clobbered. [__x86_64__]: For medium and large code models, preserve %rbx register. Modified: branches/gcc-4_7-branch/gcc/ChangeLog branches/gcc-4_7-branch/gcc/config/i386/cpuid.h branches/gcc-4_7-branch/gcc/config/i386/i386-c.c