Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | [X86] Enable fp128 as a legal type with SSE1 rather than with MMX. | Craig Topper | 2019-09-02 | 1 | -4/+28 |
| | | | | | | | | | | | | | | | | FP128 values are passed in xmm registers so should be asssociated with an SSE feature rather than MMX which uses a different set of registers. llc enables sse1 and sse2 by default with x86_64. But does not enable mmx. Clang enables all 3 features by default. I've tried to add command lines to test with -sse where possible, but any test that returns a value in an xmm register fails with a fatal error with -sse since we have no defined ABI for that scenario. llvm-svn: 370682 | ||||
* | [X86] Check for 64-bit mode in X86Subtarget::hasCmpxchg16b() | Craig Topper | 2019-03-13 | 1 | -0/+27 |
The feature flag alone can't be trusted since it can be passed via -mattr. Need to ensure 64-bit mode as well. We had a 64 bit mode check on the instruction to make the assembler work correctly. But we weren't guarding any of our lowering code or the hooks for the AtomicExpandPass. I've added 32-bit command lines to atomic128.ll with and without cx16. The tests there would all previously fail if -mattr=cx16 was passed to them. I had to move one test case for f128 to a new file as it seems to have a different 32-bit mode or possibly sse issue. Differential Revision: https://reviews.llvm.org/D59308 llvm-svn: 356078 |