This is similar to what D52528 did for loads. It should match what generic type legalization does in 64-bit mode where it uses a v2i64 cast and an i64 store.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
test/CodeGen/X86/2012-01-18-vbitcast.ll | ||
---|---|---|
10 ↗ | (On Diff #169312) | Something odd happened here. Suspect something to do with how bitcasts from 2 x float to 2 x i32 are legalized. v2f32 is widened but v2i32 is promoted. Generic legalization probably went through the stack Can probably fix with a custom legalization of this bitcast. |
test/CodeGen/X86/fold-load-vec.ll | ||
17 ↗ | (On Diff #169312) | Need to investigate |
Comment Actions
Try to keep combineStore from using i64 when the original type was fp. Prevents a regression in fold-load-vec.ll
test/CodeGen/X86/2012-01-18-vbitcast.ll | ||
---|---|---|
10 ↗ | (On Diff #169312) | Are you looking at this regression or should we just add it to bugzilla for now? |
Comment Actions
I fixed the bitcast legalization to avoid the stack in r344425. That improved that test and fixed the regression here.