llvm-project/llvm/test/Transforms/Attributor
Johannes Doerfert 89c2e733e8 [Attributor] Pointer privatization attribute (argument promotion)
A pointer is privatizeable if it can be replaced by a new, private one.
Privatizing pointer reduces the use count, interaction between unrelated
code parts. This is a first step towards replacing argument promotion.
While we can already handle recursion (unlike argument promotion!) we
are restricted to stack allocations for now because we do not analyze
the uses in the callee.

Reviewed By: uenoku

Differential Revision: https://reviews.llvm.org/D68852
2020-01-29 21:31:04 -06:00
..
ArgumentPromotion [Attributor] Pointer privatization attribute (argument promotion) 2020-01-29 21:31:04 -06:00
IPConstantProp [Attributor] Pointer privatization attribute (argument promotion) 2020-01-29 21:31:04 -06:00
align.ll [Attributor] Modularize AANoAliasCallSiteArgument to simplify extensions 2020-01-28 23:39:29 -06:00
callbacks.ll [Attributor] Pointer privatization attribute (argument promotion) 2020-01-29 21:31:04 -06:00
dereferenceable-1.ll [Attributor][FIX] Treat invalidated attributes as changed 2020-01-28 23:40:41 -06:00
dereferenceable-2.ll
heap_to_stack.ll [Attributor] H2S fix. 2019-12-17 20:41:09 +01:00
internal-noalias.ll [Attributor] Pointer privatization attribute (argument promotion) 2020-01-29 21:31:04 -06:00
liveness.ll [Attributor][FIX] Carefully change invokes to calls (after manifest) 2020-01-08 19:32: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
misc.ll [Attributor] Modularize AANoAliasCallSiteArgument to simplify extensions 2020-01-28 23:39:29 -06:00
new_attributes.ll
noalias.ll [Attributor] Modularize AANoAliasCallSiteArgument to simplify extensions 2020-01-28 23:39:29 -06:00
nocapture-1.ll [Attributor][FIX] Handle non-pointers when following uses 2020-01-23 18:42:45 -06:00
nocapture-2.ll [Attributor] Avoid REQUIRED dependences in favor of OPTIONAL ones 2020-01-23 18:42:46 -06:00
nofree.ll
nonnull.ll [Attributor] Modularize AANoAliasCallSiteArgument to simplify extensions 2020-01-28 23:39:29 -06:00
norecurse.ll
noreturn.ll
noreturn_async.ll [Attributor][FIX] Carefully change invokes to calls (after manifest) 2020-01-08 19:32:38 -06:00
noreturn_sync.ll
nosync.ll [Attributor][FIX] Do not derive nonnull and dereferenceable w/o access 2020-01-03 10:43:40 -06:00
nounwind.ll
range.ll [Attributor][FIX] Treat invalidated attributes as changed 2020-01-28 23:40:41 -06:00
read_write_returned_arguments_scc.ll
readattrs.ll [Attributor][FIX] Handle non-pointers when following uses 2020-01-23 18:42:45 -06:00
returned.ll
undefined_behavior.ll [Attributor][FIX] Avoid dangling value pointers during code modification 2020-01-08 19:32:37 -06:00
value-simplify.ll [Attributor] Mark a non-defined `null` pointer as `noalias` 2020-01-28 23:09:37 -06:00
willreturn.ll