Turn on load-store-opt by default, and update LIT tests.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
LGTM
test/CodeGen/AMDGPU/fmin3.ll | ||
---|---|---|
15–17 ↗ | (On Diff #58654) | Why did this test change as it doesn't use local memory? |
test/CodeGen/AMDGPU/fmin3.ll | ||
---|---|---|
15–17 ↗ | (On Diff #58654) | if (getOptLevel() > CodeGenOpt::None && ST.loadStoreOptEnabled()) { // Don't do this with no optimizations since it throws away debug info by // merging nonadjacent loads. // This should be run after scheduling, but before register allocation. It // also need extra copies to the address operand to be eliminated. insertPass(&MachineSchedulerID, &SILoadStoreOptimizerID); insertPass(&MachineSchedulerID, &RegisterCoalescerID); } I think the RegisterCoalescer Pass makes a difference. An ideal approach is to add the coalescer pass only when load-store-opt actually happens, but I think it is no harm here to have this additional coalescer pass. |
test/CodeGen/AMDGPU/fmin3.ll | ||
---|---|---|
15–17 ↗ | (On Diff #58654) | Oh, OK. That extra run is a workaround anyway. We should fix the pass to not depend on the scheduler and run in SSA form |