[all-commits] [llvm/llvm-project] 3f540c: [Attributor] Give up early on AANoReturn::initialize
Johannes Doerfert via All-commits
all-commits at lists.llvm.org
Tue Oct 6 17:31:53 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 3f540c05dfe90f5c0378614e3a4ada06b967227e
https://github.com/llvm/llvm-project/commit/3f540c05dfe90f5c0378614e3a4ada06b967227e
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2020-10-06 (Tue, 06 Oct 2020)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Transforms/Attributor/ArgumentPromotion/X86/thiscall.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/byval.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/live_called_from_dead.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/live_called_from_dead_2.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/musttail.ll
M llvm/test/Transforms/Attributor/IPConstantProp/PR16052.ll
M llvm/test/Transforms/Attributor/IPConstantProp/multiple_callbacks.ll
M llvm/test/Transforms/Attributor/IPConstantProp/musttail-call.ll
M llvm/test/Transforms/Attributor/IPConstantProp/naked-return.ll
M llvm/test/Transforms/Attributor/alwaysinline.ll
M llvm/test/Transforms/Attributor/internalize.ll
M llvm/test/Transforms/Attributor/misc.ll
M llvm/test/Transforms/Attributor/noalias.ll
M llvm/test/Transforms/Attributor/nocapture-2.ll
M llvm/test/Transforms/Attributor/read_write_returned_arguments_scc.ll
M llvm/test/Transforms/Attributor/readattrs.ll
M llvm/test/Transforms/Attributor/returned.ll
Log Message:
-----------
[Attributor] Give up early on AANoReturn::initialize
If the function is not assumed `noreturn` we should not wait for an
update to mark the call site as "may-return".
This has two kinds of consequences:
- We have less iterations in many tests.
- We have less deductions based on "known information" (since we ask
earlier, point 1, and therefore assumed information is not "known"
yet).
The latter is an artifact that we might want to tackle properly at some
point but which is not easily fixable right now.
Commit: c4cfe7a43512c8fadb2aa207f6d914858e2cc50e
https://github.com/llvm/llvm-project/commit/c4cfe7a43512c8fadb2aa207f6d914858e2cc50e
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2020-10-06 (Tue, 06 Oct 2020)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Transforms/Attributor/ArgumentPromotion/aggregate-promote.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/invalidation.ll
M llvm/test/Transforms/Attributor/readattrs.ll
Log Message:
-----------
[Attributor] Ignore read accesses to constant memory
The old function attribute deduction pass ignores reads of constant
memory and we need to copy this behavior to replace the pass completely.
First step are constant globals. TBAA can also describe constant
accesses and there are other possibilities. We might want to consider
asking the alias analyses that are available but for now this is simpler
and cheaper.
Commit: 7993d61177c8c6e9aa238e57a684c6cd3db3b571
https://github.com/llvm/llvm-project/commit/7993d61177c8c6e9aa238e57a684c6cd3db3b571
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2020-10-06 (Tue, 06 Oct 2020)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Transforms/Attributor/ArgumentPromotion/aggregate-promote.ll
M llvm/test/Transforms/Attributor/align.ll
Log Message:
-----------
[Attributor] Use smarter way to determine alignment of GEPs
Use same logic existing in other places to deal with base case GEPs.
Add the original Attributor talk example.
Compare: https://github.com/llvm/llvm-project/compare/e3b0414b0ea3...7993d61177c8
More information about the All-commits
mailing list