[PATCH] D37365: [x86] Enable f128 as a legal type in 64-bit mode if SSE is enabled rather than if MMX is enabled.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 5 17:02:02 PDT 2017


craig.topper added a comment.

-mno-sse and -mmmx are driver options a user can specify on the clang command line. They aren't a platform requirement.

Did you look at the assembly output for the test case i gave with and without "-mno-sse -mmmx"? I'm pretty sure even with my change or your change we still miscompile the code when SSE and MMX are disabled. As you can see here https://godbolt.org/g/ELe3CW   with them enabled we think __addtf3 returns in xmm0, but if we disable mmx and sse we expect the return in rax/rdx. __addtf3 is a library function that we didn't compile. Does it return both ways or is the rax/rdx version a miscompile? I believe gcc just throws an error for this case.


https://reviews.llvm.org/D37365





More information about the llvm-commits mailing list