If storing multiple FP constants, some subset of the stores
would be replaced with integers due to visit order, so
MergeConsecutiveStores would only partially merge these.
Alternatively, it possibly would be better to do this after LegalTypes
Paths
| Differential D12698
DAGCombiner: Replace store of FP constant after attemping store merges ClosedPublic Authored by arsenm on Sep 8 2015, 9:35 AM.
Details
Summary If storing multiple FP constants, some subset of the stores Alternatively, it possibly would be better to do this after LegalTypes
Diff Detail Event TimelineComment Actions This appears to solve PR24654: Can you split this patch into an NFC refactoring to add replaceStoreOfFPConstant() and then submit the logic changes as a separate patch? That would make it easier to read. The AMDGPU FIXME test addition could be a separate commit too. Comment Actions
Matt - please can you add the x86/ppc test cases that are mentioned in PR24654? Comment Actions LGTM - just a small comment on the test case settings.
This revision is now accepted and ready to land.Sep 21 2015, 7:21 AM
Revision Contents
Diff 35208 lib/CodeGen/SelectionDAG/DAGCombiner.cpp
test/CodeGen/AMDGPU/merge-stores.ll
test/CodeGen/PowerPC/vector-merge-store-fp-constants.ll
test/CodeGen/X86/vector-merge-store-fp-constants.ll
|
We shouldn't need -mattr=altivec or darwin here; that was excess in the bug report.
Also, for this test and the next one: if you specify the triple, does it change anything to also specify the arch?