Revision tags: 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 |
|
#
3e0d37fd |
| 02-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Simplify argument setup for ExecuteAndWait
Only need to append the input file for each iteration.
|
#
592536a9 |
| 17-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Reorganize some function locations
Move things that are naturally methods of ReducerWorkItem to be methods of ReducerWorkItem in the same source file.
|
#
c39735c9 |
| 19-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Use WithColor in another error message
|
#
23cc36e4 |
| 16-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Use consistent ReductionFunc types
Some of these were relying on ReducerWorkItem's operator Module&.
|
#
c841086c |
| 14-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Add missing consts
|
#
1ad45278 |
| 11-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
Revert "llvm-reduce: Try to kill parallel workitems once we have a result."
This reverts commit 4f575620d51032cf98424c9defafe4dfc8d66f45.
I realized the test wasn't very good and when fixed, shows
Revert "llvm-reduce: Try to kill parallel workitems once we have a result."
This reverts commit 4f575620d51032cf98424c9defafe4dfc8d66f45.
I realized the test wasn't very good and when fixed, shows the reduction doesn't work correctly. Revert the change and keep the fixed version of the test.
show more ...
|
#
4f575620 |
| 29-Nov-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Try to kill parallel workitems once we have a result.
The current reduction logic tries to reproduce what a serial reduction would produce, and just takes the first one that is still in
llvm-reduce: Try to kill parallel workitems once we have a result.
The current reduction logic tries to reproduce what a serial reduction would produce, and just takes the first one that is still interesting. We still have to wait for all others to complete though, which at that point is just a waste.
This helps speed things up with long running reducers, which I frequently have. e.g. for the added sleep test on my system, it took about 8 seconds before this change and about 4 after.
https://reviews.llvm.org/D138953
show more ...
|
#
9c8b89f5 |
| 09-Dec-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Refine missing argument behavior
We required the test and input arguments for --print-delta-passes which is unhelpful. Also, start printing the help output if no arguments were supplied
llvm-reduce: Refine missing argument behavior
We required the test and input arguments for --print-delta-passes which is unhelpful. Also, start printing the help output if no arguments were supplied.
It looks like there's more sophisticated ways to accomplish this with the opt library, but it was less work to manually emit these errors.
show more ...
|
#
89ada6c5 |
| 02-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Avoid push_back for constant array
|
#
40903bad |
| 01-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Fix missing newline after error message
Fixes missing test coverage for the failed to execute case. However, this test fails to verify the newline is printed. I can't figure out how to
llvm-reduce: Fix missing newline after error message
Fixes missing test coverage for the failed to execute case. However, this test fails to verify the newline is printed. I can't figure out how to get FileCheck to match the trailing newline.
show more ...
|
#
b4482f7c |
| 03-Dec-2022 |
Kazu Hirata <kazu@google.com> |
[tools] Use std::nullopt instead of None (NFC)
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of m
[tools] Use std::nullopt instead of None (NFC)
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional.
This is part of an effort to migrate from llvm::Optional to std::optional:
https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
show more ...
|
#
e748db0f |
| 01-Dec-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
Support: Convert Program APIs to std::optional
|
#
d939eeb9 |
| 29-Nov-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Add some missing consts
|
Revision tags: llvmorg-15.0.6 |
|
#
625f08da |
| 18-Nov-2022 |
Abhina Sreeskantharajan <Abhina.Sreeskantharajan@ibm.com> |
[SystemZ][z/OS] Set text flag correctly for llvm-reduce tool
This patch sets the text flag correctly for llvm-reduce files
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D1383
[SystemZ][z/OS] Set text flag correctly for llvm-reduce tool
This patch sets the text flag correctly for llvm-reduce files
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D138304
show more ...
|
Revision tags: llvmorg-15.0.5, llvmorg-15.0.4 |
|
#
412c4a8b |
| 29-Oct-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Write bitcode temporary files for bitcode inputs
Most tools accept .ll or .bc inputs interchangably, but some don't. Default to writing temporary files that match the input. This will a
llvm-reduce: Write bitcode temporary files for bitcode inputs
Most tools accept .ll or .bc inputs interchangably, but some don't. Default to writing temporary files that match the input. This will also aid reducing deserialization bugs.
show more ...
|
#
3c436ab0 |
| 26-Oct-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Support emitting bitcode for final result
Previously, this unconditionally emitted text IR. I ran into a bug that manifested in broken disassembly, so the desired output was the bitcode
llvm-reduce: Support emitting bitcode for final result
Previously, this unconditionally emitted text IR. I ran into a bug that manifested in broken disassembly, so the desired output was the bitcode format. If the input format was binary bitcode, the requested output file ends in .bc, or an explicit -output-bitcode option was used, emit bitcode.
show more ...
|
Revision tags: llvmorg-15.0.3 |
|
#
29cf7dff |
| 17-Oct-2022 |
Arthur Eubanks <aeubanks@google.com> |
Revert "llvm-reduce: Color output of child processes"
This reverts commit 86e9181ded7c5b6aa67a3a84089fce850c84f27a.
Seems to be causing bot failures: https://lab.llvm.org/buildbot#builders/5/builds
Revert "llvm-reduce: Color output of child processes"
This reverts commit 86e9181ded7c5b6aa67a3a84089fce850c84f27a.
Seems to be causing bot failures: https://lab.llvm.org/buildbot#builders/5/builds/28313
Plus as noted on D135632 it seems to interact badly with parallel reduction.
show more ...
|
#
86e9181d |
| 11-Oct-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Color output of child processes
When reducing llvm-reduce with llvm-reduce, it can be confusing to figure out what lines are printed by the child or parent. Not sure this is the most re
llvm-reduce: Color output of child processes
When reducing llvm-reduce with llvm-reduce, it can be confusing to figure out what lines are printed by the child or parent. Not sure this is the most reliable way to set and restore this.
show more ...
|
Revision tags: working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3 |
|
#
309d4538 |
| 15-Aug-2022 |
Arthur Eubanks <aeubanks@google.com> |
[llvm-reduce] Move most debugging output behind --verbose
This should cut down on the visual noise when reducing. Still keep output when we run a pass or when we successfully reduce.
Notably, this
[llvm-reduce] Move most debugging output behind --verbose
This should cut down on the visual noise when reducing. Still keep output when we run a pass or when we successfully reduce.
Notably, this also suppresses redirecting the test output to stdout/stderr.
Reviewed By: regehr
Differential Revision: https://reviews.llvm.org/D131922
show more ...
|
Revision tags: llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
#
c4960f63 |
| 30-Jun-2022 |
Matthew Voss <matthew.voss@sony.com> |
[llvm-reduce] Change initialization order to fix bots. NFC
Fixes this error: /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/ llvm-project/llvm/tools/llvm-reduce/TestRunne
[llvm-reduce] Change initialization order to fix bots. NFC
Fixes this error: /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/ llvm-project/llvm/tools/llvm-reduce/TestRunner.cpp:20:7: error: field 'TM' will be initialized after field 'ToolName' [-Werror,-Wreorder-ctor] TM(std::move(TM)), ToolName(ToolName) { ^~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~ Program(std::move(Program)) TM(std::move(TM)) 1 error generated.
https://lab.llvm.org/buildbot/\#/builders/77/builds/19154
show more ...
|
#
6b3956e1 |
| 30-Jun-2022 |
Matthew Voss <matthew.voss@sony.com> |
[llvm-reduce] Add support for LTO bitcode files
Adds support for reading and writing LTO bitcode files.
- Emit a summary if the original bitcode file had a summary - Use split LTO units if the
[llvm-reduce] Add support for LTO bitcode files
Adds support for reading and writing LTO bitcode files.
- Emit a summary if the original bitcode file had a summary - Use split LTO units if the original bitcode file used them.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D127168
show more ...
|
Revision tags: llvmorg-14.0.6, llvmorg-14.0.5 |
|
#
42c7f494 |
| 03-Jun-2022 |
Clemens Wasser <clemens.wasser@gmail.com> |
[tools] Forward declare classes & remove includes
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D120208
|
Revision tags: llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2 |
|
#
7c2db666 |
| 19-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Support multiple MachineFunctions
The current testcase I'm trying to reduce only reproduces with IPRA enabled and requires handling multiple functions.
The only real difference vs. the
llvm-reduce: Support multiple MachineFunctions
The current testcase I'm trying to reduce only reproduces with IPRA enabled and requires handling multiple functions.
The only real difference vs. the IR is the extra indirect to look for the underlying MachineFunction, so treat the ReduceWorkItem as the module instead of the function.
The ugliest piece of this is really the ugliness of MachineModuleInfo. It not only tracks actual module state, but has a number of transient fields used for isel and/or the asm printer. These shouldn't do any harm for the use here, though they should be separated out.
show more ...
|
Revision tags: llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, 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 |
|
#
fd41738e |
| 02-Nov-2021 |
Markus Lavin <markus.lavin@ericsson.com> |
Recommit "[llvm-reduce] Add MIR support"
(Second try. Need to link against CodeGen and MC libs.)
The llvm-reduce tool has been extended to operate on MIR (import, clone and export). Current limitat
Recommit "[llvm-reduce] Add MIR support"
(Second try. Need to link against CodeGen and MC libs.)
The llvm-reduce tool has been extended to operate on MIR (import, clone and export). Current limitation is that only a single machine function is supported. A single reducer pass that operates on machine instructions (while on SSA-form) has been added. Additional MIR specific reducer passes can be added later as needed.
Differential Revision: https://reviews.llvm.org/D110527
show more ...
|
#
aee7f338 |
| 02-Nov-2021 |
Markus Lavin <markus.lavin@ericsson.com> |
Revert "[llvm-reduce] Add MIR support"
This reverts commit bc2773cb1bdfacfda773eb492e7b0cc65a78cda6.
Broke the clang-ppc64le-linux-multistage build. Reverting while I investigate.
|