[cfe-dev] should -mno-sse -mno-mmx -msse -mmmx work?

Andrew Fish afish at apple.com
Fri Jul 1 12:59:51 PDT 2011

We are using clang for EFI firmware and in general it is a lot like a kernel and we turn off floating point. So the default build flags for our project set -mno-sse -mno-mmx. I'm trying to compile a standard C library that has a few functions with double in it, so I tried to reenable the floating point on the command line for just that package. I thought if you had -mno* and -m the last one wins?  It does not seem to work?

~/work/Compiler>cat float.c
ErrorInBackEnd ()
  return 1.0;
~/work/Compiler>clang -mno-sse -mno-mmx -msse -mmmx float.c
fatal error: error in backend: SSE2 register return with SSE2 disabled

Is this a bug? Or functioning as intended

Andrew Fish

More information about the cfe-dev mailing list