llvm-project/llvm/test/Transforms/LoopUnroll
Sam Parker 7cd826a321 [LoopUnroll][DebugInfo] Don't add metadata to unrolled remainder loop
Debug information can be, and was, corrupted when the runtime
remainder loop was fully unrolled. This is because a !null node can
be created instead of a unique one describing the loop. In this case,
the original node gets incorrectly updated with the NewLoopID
metadata.

In the case when the remainder loop is going to be quickly fully
unrolled, there isn't the need to add loop metadata for it anyway.

Differential Revision: https://reviews.llvm.org/D37338

llvm-svn: 312471
2017-09-04 08:12:16 +00:00
..
AArch64 [AArch64][Falkor] Try to avoid exhausting HW prefetcher resources when unrolling. 2017-06-28 18:53:09 +00:00
AMDGPU AMDGPU: Mark all unspecified CC functions in tests as amdgpu_kernel 2017-03-21 21:39:51 +00:00
ARM [ARM] Improve loop unrolling for Cortex-M 2017-08-16 07:42:44 +00:00
PowerPC
X86 Changed basic cost of store operation on X86 2017-08-20 12:34:29 +00:00
2004-05-13-DontUnrollTooMuch.ll
2005-03-06-BadLoopInfoUpdate.ll
2006-08-24-MultiBlockLoop.ll
2007-04-16-PhiUpdate.ll
2007-05-05-UnrollMiscomp.ll
2007-05-09-UnknownTripCount.ll
2007-11-05-Crash.ll
2011-08-08-PhiUpdate.ll
2011-08-09-IVSimplify.ll
2011-08-09-PhiUpdate.ll
2011-10-01-NoopTrunc.ll
2012-04-09-unroll-indirectbr.ll
basic.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
convergent.ll
ephemeral.ll
epilog_const_phi.ll Add test missed in r296770. 2017-03-04 05:20:02 +00:00
full-unroll-bad-cost.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-crashers.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics-2.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics-cmp.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics-dce.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics-geps.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics-phi-prop.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
full-unroll-heuristics.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
full-unroll-keep-first-exit.ll [PM] Simplify the new PM interface to the loop unroller and expose two 2017-01-26 02:13:50 +00:00
high-cost-trip-count-computation.ll
ignore-annotation-intrinsic-cost.ll
loop-remarks-with-hotness.ll
loop-remarks.ll
not-rotated.ll [LoopUnroll] Fix a test. REQUIRE should be REQUIRES. 2017-05-12 15:30:58 +00:00
partial-unroll-const-bounds.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
peel-loop-irreducible.ll [LoopUnroll] Don't peel loops where the latch isn't the exiting block 2017-03-16 21:07:48 +00:00
peel-loop-negative.ll [LoopPeeling] Fix condition for phi-eliminating peeling 2017-04-17 05:38:28 +00:00
peel-loop-not-forced.ll [LoopPeeling] Get rid of Phis that become invariant after N steps 2017-04-17 09:52:02 +00:00
peel-loop-pgo.ll Use profile summary to disable peeling for huge working sets 2017-08-03 23:42:58 +00:00
peel-loop.ll [SimplifyCFG] Defer folding unconditional branches to LateSimplifyCFG if it can destroy canonical loop structure. 2017-07-19 08:53:34 +00:00
peel-loop2.ll [LoopUnroll] Remap references in peeled iteration 2017-03-26 16:46:53 +00:00
pr10813.ll
pr11361.ll
pr14167.ll
pr18861.ll
pr27157.ll
pr28132.ll
pr31718.ll [LoopUnroll] First form LCSSA, then loop-simplify 2017-01-23 23:45:42 +00:00
pr33437.ll [LoopUnroll] Make the test for PR33437 actually useful. 2017-08-29 17:24:09 +00:00
rebuild_lcssa.ll
revisit.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-li.ll [LoopUnroll] Properly update loopinfo for runtime unrolling by 2 2017-01-26 01:04:11 +00:00
runtime-loop-multiexit-dom-verify.ll [RuntimeUnrolling] Update DomTree correctly when exit blocks have successors 2017-07-13 13:21:23 +00:00
runtime-loop-multiple-exits.ll [LoopUnrollRuntime] Avoid multi-exit nested loop with epilog generation 2017-07-11 17:16:33 +00:00
runtime-loop.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-loop1.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-loop2.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-loop3.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-loop4.ll
runtime-loop5.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
runtime-unroll-remainder.ll [LoopUnroll][DebugInfo] Don't add metadata to unrolled remainder loop 2017-09-04 08:12:16 +00:00
scevunroll.ll
shifted-tripcount.ll
tripcount-overflow.ll
unloop.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
unroll-cleanup.ll
unroll-cleanuppad.ll
unroll-count.ll
unroll-heuristics-pgo.ll The patch turns on epilogue unroll for loops with constant recurency start. 2017-03-02 17:38:46 +00:00
unroll-loop-invalidation.ll [PM] Relax the spelling of a pass name slightly in this test. 2017-08-08 02:27:49 +00:00
unroll-maxcount.ll [LoopUnroll] Fix bug in computeUnrollCount causing it to not honor MaxCount 2017-06-28 17:01:15 +00:00
unroll-opt-attribute.ll
unroll-pragmas-disabled.ll
unroll-pragmas.ll The patch turns on epilogue unroll for loops with constant recurency start. 2017-03-02 17:38:46 +00:00
update-loop-info-in-subloops.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00