llvm-project/llvm/test/Transforms/Attributor/ArgumentPromotion
Johannes Doerfert 5ef18e2421 [Attributor] Use AAValueSimplify to simplify returned values
We should use AAValueSimplify for all value simplification, however
there was some leftover logic that predates AAValueSimplify in
AAReturnedValues. This remove the AAReturnedValues part and provides a
replacement by making AAValueSimplifyReturned strong enough to handle
all previously covered cases. Further, this improve
AAValueSimplifyCallSiteReturned to handle returned arguments.

AAReturnedValues is now much easier and the collected returned
values/instructions are now from the associated function only, making it
much more sane. We also do not have the brittle logic anymore that looks
for unresolved calls. Instead, we use AAValueSimplify to handle
recursion.

Useful code has been split into helper functions, e.g., an Attributor
interface to get a simplified value.

Differential Revision: https://reviews.llvm.org/D103860
2021-07-10 15:52:36 -05:00
..
X86 [IR] Memory intrinsics are not unconditionally `nosync` 2021-05-21 03:40:59 +02:00
2008-02-01-ReturnAttrs.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
2008-07-02-array-indexing.ll [Attributor] Be more careful to not disturb the CG outside the SCC 2021-05-23 23:00:39 -05:00
2008-09-07-CGUpdate.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
2008-09-08-CGUpdateSelfEdge.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
aggregate-promote.ll [Attributor] Derive `willreturn` based on `mustprogress` 2021-03-11 23:31:44 -06:00
alignment.ll [Attributor][FIX] Traverse uses even if a value is assumed constant 2021-07-10 15:47:20 -05:00
array.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
attrs.ll [Attributor][FIX] Traverse uses even if a value is assumed constant 2021-07-10 15:47:20 -05:00
basictest.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
byval-2.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
byval.ll [Attributor] Derive `willreturn` based on `mustprogress` 2021-03-11 23:31:44 -06:00
chained.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
control-flow.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
control-flow2.ll [Attributor][FIX] Traverse uses even if a value is assumed constant 2021-07-10 15:47:20 -05:00
crash.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
dbg.ll [Attributor] Set floating point loads and stores as nofree in AANoFreeFloating 2021-06-09 16:16:37 -04:00
fp80.ll [Attributor][FIX] Traverse uses even if a value is assumed constant 2021-07-10 15:47:20 -05:00
inalloca.ll [Attributor] Use AAValueSimplify to simplify returned values 2021-07-10 15:52:36 -05:00
invalidation.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
live_called_from_dead.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
live_called_from_dead_2.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
musttail.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
naked_functions.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
nonzero-address-spaces.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
pr27568.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
pr32917.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00
pr33641_remove_arg_dbgvalue.ll [Attributor] Derive `willreturn` based on `mustprogress` 2021-03-11 23:31:44 -06:00
profile.ll [Attributor] Use AAValueSimplify to simplify returned values 2021-07-10 15:52:36 -05:00
reserve-tbaa.ll [Attributor][FIX] Traverse uses even if a value is assumed constant 2021-07-10 15:47:20 -05:00
sret.ll [Attributor] Use AAValueSimplify to simplify returned values 2021-07-10 15:52:36 -05:00
tail.ll [Attributor] Set floating point loads and stores as nofree in AANoFreeFloating 2021-06-09 16:16:37 -04:00
variadic.ll [Attributor][NFC] Update tests after D94741 2021-03-11 23:31:39 -06:00