Turn on load-store-opt by default, and update LIT tests.
Details
Diff Detail
Event Timeline
LGTM
test/CodeGen/AMDGPU/fmin3.ll | ||
---|---|---|
15–17 | Why did this test change as it doesn't use local memory? |
test/CodeGen/AMDGPU/fmin3.ll | ||
---|---|---|
15–17 | 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 | 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 |
Why did this test change as it doesn't use local memory?