|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6 |
|
| #
2962f9df |
| 21-Jun-2022 |
John Regehr <[email protected]> |
stop llvm-reduce from introducing undefs
Differential Revision: https://reviews.llvm.org/D128317
|
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2 |
|
| #
a5bbc6ef |
| 23-Feb-2022 |
Bill Wendling <[email protected]> |
[NFC] Remove unnecessary "#include"s from header files
|
|
Revision tags: llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
6f288bd7 |
| 12-Nov-2021 |
Arthur Eubanks <[email protected]> |
[llvm-reduce] Count chunks by running a preliminary reduction
Having a separate counting method runs the risk of a mismatch between the actual reduction method and the counting method.
Instead, cre
[llvm-reduce] Count chunks by running a preliminary reduction
Having a separate counting method runs the risk of a mismatch between the actual reduction method and the counting method.
Instead, create an Oracle that always returns true for shouldKeep(), run the reduction, and count how many times shouldKeep() was called. The module should not be modified if shouldKeep() always returns true.
Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D113537
show more ...
|
| #
77bc3ba3 |
| 05-Oct-2021 |
Arthur Eubanks <[email protected]> |
[NFC][llvm-reduce] Cleanup types
Use Module& wherever possible. Since every reduction immediately turns Chunks into an Oracle, directly pass Oracle instead.
Reviewed By: hans
Differential Revision
[NFC][llvm-reduce] Cleanup types
Use Module& wherever possible. Since every reduction immediately turns Chunks into an Oracle, directly pass Oracle instead.
Reviewed By: hans
Differential Revision: https://reviews.llvm.org/D111122
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1 |
|
| #
19ab1817 |
| 02-Jan-2021 |
Roman Lebedev <[email protected]> |
[llvm-reduce] Fix removal of unused llvm intrinsics declarations
ee6e25e4391a6d3ac0a3c89615474e512f44cda6 changed the delta pass to skip intrinsics, which means we may end up being left with declara
[llvm-reduce] Fix removal of unused llvm intrinsics declarations
ee6e25e4391a6d3ac0a3c89615474e512f44cda6 changed the delta pass to skip intrinsics, which means we may end up being left with declarations of intrinsics, that aren't otherwise referenced in the module. This is obviously unwanted, do drop them.
show more ...
|
|
Revision tags: llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6 |
|
| #
ee6e25e4 |
| 01-Oct-2020 |
Matt Arsenault <[email protected]> |
llvm-reduce: Don't replace intrinsic calls with undef
These don't really have function bodies to try to eliminate. This also has a good chance of just producing invalid IR since intrinsics can have
llvm-reduce: Don't replace intrinsic calls with undef
These don't really have function bodies to try to eliminate. This also has a good chance of just producing invalid IR since intrinsics can have special operand constraints (e.g. metadata arguments aren't valid for an arbitrary call). This was wasting quite a bit of time producing and failing on invalid IR when replacing dbg.values with undefs.
show more ...
|
|
Revision tags: llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2 |
|
| #
d4c3f202 |
| 08-Aug-2020 |
Roman Lebedev <[email protected]> |
[Reduce] Rewrite function body delta pass again
It is not enough to replace all uses of users of the function with undef, the users, we only drop instruction users, so they may stick around.
Let's
[Reduce] Rewrite function body delta pass again
It is not enough to replace all uses of users of the function with undef, the users, we only drop instruction users, so they may stick around.
Let's try different approach - first drop bodies for all the functions we will drop, which should take care of blockaddress issue the previous rewrite was dealing with; then, after dropping *all* such bodies, replace remaining uses with undef (thus all the uses are either outside of functions, or are in kept functions) and then finally drop functions.
This seems to work, and passes the *existing* test coverage, but it is possible that a new issue will be discovered later :)
A new (previously crashing) test added.
show more ...
|
|
Revision tags: llvmorg-11.0.0-rc1 |
|
| #
1bac5101 |
| 27-Jul-2020 |
Roman Lebedev <[email protected]> |
[Reduce] Function reduction: replace all users of function with undef
There may be other users of a function other than CallInsts, but what's more important, we can't actually replace function point
[Reduce] Function reduction: replace all users of function with undef
There may be other users of a function other than CallInsts, but what's more important, we can't actually replace function pointer with undef, because for constants, that would not preserve the type and RAUW would assert.
In particular, that affects blockaddress, however it proves to be prohibitively complex to come up with a good test involving blockaddress: we'd need to both ensure that the function body survives until this pass, and is not interesting in this pass.
show more ...
|
|
Revision tags: llvmorg-12-init |
|
| #
a39c7ab9 |
| 08-Jul-2020 |
Roman Lebedev <[email protected]> |
[NFCI][llvm-reduce] Cleanup Delta passes to use Oracle abstraction
Summary: I think, this results in much more understandable/readable flow. At least the original logic was perhaps the most hard thi
[NFCI][llvm-reduce] Cleanup Delta passes to use Oracle abstraction
Summary: I think, this results in much more understandable/readable flow. At least the original logic was perhaps the most hard thing for me to grasp when taking an initial look on the delta passes.
Reviewers: nickdesaulniers, dblaikie, diegotf, george.burgess.iv
Reviewed By: nickdesaulniers
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D83287
show more ...
|
|
Revision tags: llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2 |
|
| #
457db403 |
| 24-Jun-2020 |
Simon Pilgrim <[email protected]> |
Cloning.h - reduce AliasAnalysis.h include to forward declarations. NFC.
Fix implicit include dependencies in source files.
|
|
Revision tags: llvmorg-10.0.1-rc1, llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4, llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1, llvmorg-11-init, llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1 |
|
| #
c4da7eec |
| 18-Sep-2019 |
David Blaikie <[email protected]> |
llvm-reduce: Fix inconsistencies between int/unsigned usage (standardize on int)
llvm-svn: 372270
|
|
Revision tags: llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5 |
|
| #
6d5f0029 |
| 11-Sep-2019 |
Reid Kleckner <[email protected]> |
[llvm-reduce] Fix a bug, improve error handling when running test
llvm::sys::ExecuteAndWait can report errors, so let's make use of that.
Second, while iterating uses of functions to remove, a call
[llvm-reduce] Fix a bug, improve error handling when running test
llvm::sys::ExecuteAndWait can report errors, so let's make use of that.
Second, while iterating uses of functions to remove, a call can appear multiple times. Use a SetVector so we don't attempt to erase such a call twice.
llvm-svn: 371653
show more ...
|
| #
aac114ca |
| 10-Sep-2019 |
David Blaikie <[email protected]> |
llvm-reduce: Remove some unused headers/more narrowly include them
llvm-svn: 371564
|
| #
345fbfd7 |
| 10-Sep-2019 |
David Blaikie <[email protected]> |
llvm-remove: Remove "using namespace" in header.
llvm-svn: 371563
|
|
Revision tags: llvmorg-9.0.0-rc4, llvmorg-9.0.0-rc3 |
|
| #
c2689253 |
| 15-Aug-2019 |
Diego Trevino Ferrer <[email protected]> |
[Bugpoint redesign] Output option can now print to STDOUT
Summary: This also changes all the outs() statements to errs() so the output and progress streams don't get mixed.
This has been added beca
[Bugpoint redesign] Output option can now print to STDOUT
Summary: This also changes all the outs() statements to errs() so the output and progress streams don't get mixed.
This has been added because D64176 had flaky tests, which I believe were because the reduced file was being catted into `FileCheck`, instead of being pass from STDOUT directly.
Reviewers: chandlerc, dblaikie, xbolva00
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66314
llvm-svn: 369060
show more ...
|
| #
3755579f |
| 14-Aug-2019 |
Diego Trevino Ferrer <[email protected]> |
[Bugpoint redesign] Modified Functions pass to consider declarations
Summary: This modification was put in place so the `ReduceMetadata` pass doesn't have to consider debug functions
Reviewers: dbl
[Bugpoint redesign] Modified Functions pass to consider declarations
Summary: This modification was put in place so the `ReduceMetadata` pass doesn't have to consider debug functions
Reviewers: dblaikie
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66257
llvm-svn: 368934
show more ...
|
| #
bda73ae0 |
| 13-Aug-2019 |
Simon Pilgrim <[email protected]> |
Fix -Wdocumentation warning (@returns used in void function). NFCI.
llvm-svn: 368693
|
|
Revision tags: llvmorg-9.0.0-rc2 |
|
| #
ddc64eb9 |
| 08-Aug-2019 |
Diego Trevino Ferrer <[email protected]> |
Added Delta IR Reduction Tool
Summary: Tool parses input IR file, and runs the delta debugging algorithm to reduce the functions inside the input file.
Reviewers: alexshap, chandlerc
Subscribers:
Added Delta IR Reduction Tool
Summary: Tool parses input IR file, and runs the delta debugging algorithm to reduce the functions inside the input file.
Reviewers: alexshap, chandlerc
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63672
> llvm-svn: 368071
llvm-svn: 368358
show more ...
|
| #
b80c4c82 |
| 07-Aug-2019 |
Diego Trevino Ferrer <[email protected]> |
Added Delta IR Reduction Tool
Summary: Tool parses input IR file, and runs the delta debugging algorithm to reduce the functions inside the input file.
Reviewers: alexshap, chandlerc
Subscribers:
Added Delta IR Reduction Tool
Summary: Tool parses input IR file, and runs the delta debugging algorithm to reduce the functions inside the input file.
Reviewers: alexshap, chandlerc
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63672
> llvm-svn: 368071
llvm-svn: 368214
show more ...
|