summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/Attributor/ArgumentPromotion
Commit message (Collapse)AuthorAgeFilesLines
* [Attributor][FIX] Carefully change invokes to calls (after manifest)Johannes Doerfert2020-01-084-13/+1
| | | | | | Before we manually inserted unreachable early but that could lead to broken PHI nodes. Now we use the existing late modification functionality.
* [Attributor][FIX] Allow dead users of rewritten functionJohannes Doerfert2020-01-031-0/+55
| | | | | | | If we replace a function with a new one because we rewrite the signature, dead users may still refer to the old version. With this patch we reuse the code that deals with dead functions, which the old versions are, to avoid problems.
* [Attributor] Function signature rewrite infrastructureJohannes Doerfert2019-12-315-20/+19
| | | | | | | | | | | | | | | As part of the Attributor manifest we want to change the signature of functions. This patch introduces a fairly generic interface to do so. As a first, very simple, use case, we remove unused arguments. A second use case, pointer privatization, will be committed with this patch as well. A lot of the code and ideas are taken from argument promotion and we run all argument promotion tests through this framework as well. Reviewed By: uenoku Differential Revision: https://reviews.llvm.org/D68765
* [Attributor] Propagate known align from arguments to call sites argumentsJohannes Doerfert2019-12-312-2/+2
| | | | | | | Since the information is known we can simply use it at the call site. This is especially useful for callbacks but also helps regular calls. The test changes are mechanical.
* [Attributor] Annotate the memory behavior of call site argumentsJohannes Doerfert2019-12-3120-31/+31
| | | | | | | | | Especially for callbacks, annotating the call site arguments is important. Doing so exposed a too strong dependence of AAMemoryBehavior on AANoCapture since we handle the case of potentially captured pointers explicitly. The changes to the tests are all mechanical.
* [Attributor] Use `changeUseAfterManifest` in AAValueSimplify manifestHideto Ueno2019-12-304-5/+5
| | | | | | | | | | | | | | Summary: This patch makes `AAValueSimplify` use `changeUsesAfterManifest` in `manifest`. This will invoke simple folding after the manifest. Reviewers: jdoerfert, sstefan1 Reviewed By: jdoerfert Subscribers: hiraditya, arphaman, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D71972
* [Attributor][Tests] Copy & use the ArgumentPromotion testsJohannes Doerfert2019-12-1433-0/+3744
OpenPOWER on IntegriCloud