Hi Over at RTEMS, we have had a report that this very old code has quit compiling:
#ifdef __SSE__ #define _CPU_Context_restore_fp(fp_context_pp) \ do { \ __asm__ __volatile__( \ "fldcw %0" \ ::"m"((*(fp_context_pp))->fpucw) \ :"fpcr" \ ); \ __builtin_ia32_ldmxcsr(_Thread_Executing->fp_context->mxcsr); \ } while (0) #else The error is "error: unknown register name 'fpcr' in 'asm'" This is when compiling for two i386 variants: CPU_CFLAGS = -mtune=pentium4 -march=pentium4 -msse3 CPU_CFLAGS = -mtune=pentium -march=pentium -msse2 Is there a change we should be aware of in the inline assembly macros? Or is it possible that __SSE__ and fpcr are not tied together like they were until recently? If needed, I can put together a full test case. I was hoping this one was an obvious explanation before that. Thanks. --joel