llvm-project/llvm/test/Transforms/Attributor
omarahmed1111 b285b333dc [Attributor] Detect possibly unbounded cycles in functions
This patch add mayContainUnboundedCycle helper function which checks whether a function has any cycle which we don't know if it is bounded or not.
Loops with maximum trip count are considered bounded, any other cycle not.
It also contains some fixed tests and some added tests contain bounded and
unbounded loops and non-loop cycles.

Reviewed By: jdoerfert, uenoku, baziotis

Differential Revision: https://reviews.llvm.org/D74691
2020-03-13 11:17:33 -05:00
..
ArgumentPromotion [Attributor] Generalize `getAssumedConstantInt` interface 2020-02-19 22:33:51 -06:00
IPConstantProp [Attributor] Deduction based on path exploration 2020-03-09 14:29:26 +09:00
reduced [Attributor][FIX] Ensure abstract attributes are existing before manifest 2020-02-14 21:44:46 -06:00
align.ll [Attributor][FIX] Avoid setting wrong load/store alignments 2020-02-19 23:46:07 -06:00
alwaysinline.ll [Attributor] IPO across definition boundary of a function marked alwaysinline 2020-03-13 01:06:12 -05:00
callbacks.ll [Attributor] Allow multiple uses of a casted function pointer 2020-02-19 20:43:38 -06:00
dereferenceable-1.ll [Attributor] Deduction based on path exploration 2020-03-09 14:29:26 +09:00
dereferenceable-2.ll [Attributor] Use fine-grained liveness in all helpers 2020-02-12 17:36:38 -06:00
heap_to_stack.ll [MustExecute] Add backward exploration for must-be-executed-context 2020-02-20 14:49:30 +09:00
internal-noalias.ll [Attributor] Use fine-grained liveness in all helpers 2020-02-12 17:36:38 -06:00
liveness.ll Revert "[Attributor] Enable test with update check lines" 2020-03-13 00:59:47 -05:00
liveness_chains.ll [Attributor] Use fine-grained liveness in all helpers 2020-02-12 17:36:38 -06:00
lvi-after-jumpthreading.ll [Attributor] AAValueConstantRange: Value range analysis using constant range 2020-01-15 16:34:23 +09:00
lvi-for-ashr.ll [Attributor] AAValueConstantRange: Value range analysis using constant range 2020-01-15 16:34:23 +09:00
memory_locations.ll [Attributor][NFC] Add more memory_location tests 2020-02-19 23:46:08 -06:00
misc.ll [MustExecute] Add backward exploration for must-be-executed-context 2020-02-20 14:49:30 +09:00
new_attributes.ll
noalias.ll [Attributor] Improve noalias preservation using reachability 2020-03-13 21:09:08 +05:30
nocapture-1.ll [Attributor] Use fine-grained liveness in all helpers 2020-02-12 17:36:38 -06:00
nocapture-2.ll [Attributor] Avoid REQUIRED dependences in favor of OPTIONAL ones 2020-01-23 18:42:46 -06:00
nofree.ll [Attributor][NFC] Prepare some tests to be used with update test script 2020-02-20 02:44:05 -06:00
nonnull.ll [Attributor] Improve noalias preservation using reachability 2020-03-13 21:09:08 +05:30
norecurse.ll [Attributor] Add an Attributor CGSCC pass and run it 2020-02-08 21:27:34 -06:00
noreturn.ll [Attributor] Use fine-grained liveness in all helpers 2020-02-12 17:36:38 -06:00
noreturn_async.ll [Attributor] Collect memory accesses with their respective kind and location 2020-02-15 02:12:04 -06:00
noreturn_sync.ll [Attributor] Collect memory accesses with their respective kind and location 2020-02-15 02:12:04 -06:00
nosync.ll [Attributor] Derive memory location attributes (argmemonly, ...) 2020-02-14 19:05:51 -06:00
nounwind.ll
range.ll [Attributor] Add initial AAIsDead for arguments 2020-02-19 21:39:45 -06:00
read_write_returned_arguments_scc.ll [Attributor] Detect possibly unbounded cycles in functions 2020-03-13 11:17:33 -05:00
readattrs.ll [Attributor][FIX] Handle non-pointers when following uses 2020-01-23 18:42:45 -06:00
returned.ll [Attributor] Use existing `returned` information better 2020-02-19 23:46:07 -06:00
undefined_behavior.ll [Attributor] Fold terminators before changing instructions to unreachable 2020-03-07 12:38:44 +02:00
value-simplify.ll [Attributor] Generalize `getAssumedConstantInt` interface 2020-02-19 22:33:51 -06:00
willreturn.ll [Attributor] Detect possibly unbounded cycles in functions 2020-03-13 11:17:33 -05:00