1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/Transforms/EarlyCSE
Philip Reames 3be79b1237 [gvn] CSE gc.relocates based on meaning, not spelling (try 2)
This was (partially) reverted in cfe8f8e0 because the conversion from readonly to readnone in Intrinsics.td exposed a couple of problems.  This change has been reworked to not need that change (via some explicit checks in client code).  This is being done to address the original optimization issue and simplify the testing of the readonly changes.  I'm working on that piece under 49607.

Original commit message follows:

The last two operands to a gc.relocate represent indices into the associated gc.statepoint's gc bundle list. (Effectively, gc.relocates are projections from the gc.statepoints multiple return values.)

We can use this to recognize when two gc.relocates are equivalent (and can be CSEd), even when the indices are non-equal. This is particular useful when considering a chain of multiple statepoints as it lets us eliminate all duplicate gc.relocates in a single pass.

Differential Revision: https://reviews.llvm.org/D97974
2021-03-16 10:59:31 -07:00
..
AArch64 [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
AMDGPU [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
PowerPC [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
X86 [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
and_or.ll [EarlyCSE] Use m_LogicalAnd/Or matchers to handle branch conditions 2020-12-28 05:36:26 +09:00
atomics.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
basic.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
commute.ll [EarlyCSE] delete abs/nabs handling 2020-11-10 21:10:58 -05:00
conditional.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
const-speculation.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
debug-info-undef.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
debuginfo-dce.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
edge.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
fence.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
flags.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
floatingpoint.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
gc_relocate.ll [gvn] CSE gc.relocates based on meaning, not spelling (try 2) 2021-03-16 10:59:31 -07:00
getmatchingvalue-crash.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
globalsaa-memoryssa.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
guards.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
instsimplify-dom.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
int_sideeffect.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
invariant-loads.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
invariant.start.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
masked-intrinsics-unequal-masks.ll [EarlyCSE] Handle masked loads and stores 2020-09-21 18:47:10 -05:00
masked-intrinsics.ll [EarlyCSE] Handle masked loads and stores 2020-09-21 18:47:10 -05:00
memoryssa.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
noalias-scope-decl.ll [noalias.decl] Look through llvm.experimental.noalias.scope.decl 2021-01-19 20:09:42 +01:00
phi.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
pr33406.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
readnone-mayunwind.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
reuse-preserved-memoryssa.ll [EarlyCSE] Explicitly require AAResultsWrapperPass. 2020-09-09 09:14:50 +01:00
writeonly.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00