Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5 |
|
#
8128d4b1 |
| 22-Apr-2024 |
Stephen Tozer <stephen.tozer@sony.com> |
[RemoveDIs] Preserve debug info format in llvm-reduce (#89220)
As the goal of LLVM reduce is to simplify the input file, it should not
modify the debug info format - doing so by default would make
[RemoveDIs] Preserve debug info format in llvm-reduce (#89220)
As the goal of LLVM reduce is to simplify the input file, it should not
modify the debug info format - doing so by default would make it
impossible to reduce an error that only occurs in the old format, for
example (as briefly discussed at
https://github.com/llvm/llvm-project/pull/86275). This patch uses the
new "preserve debug info format" flag in llvm-reduce to prevent the
input from being subtly transformed by llvm-reduce itself; this has no
effect on any tools used for the interestingness check (i.e. if `opt` is
invoked, it will still convert the reduced input to the new format by
default), but simply ensures that the reduced file is strictly reduced
rather than modified.
show more ...
|
Revision tags: 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 |
|
#
92eaf036 |
| 08-Feb-2024 |
Jeremy Morse <jeremy.morse@sony.com> |
[NFC][RemoveDIs] Remove conditional compilation for RemoveDIs (#81149)
A colleague observes that switching the default value of
LLVM_EXPERIMENTAL_DEBUGINFO_ITERATORS to "On" hasn't flipped the valu
[NFC][RemoveDIs] Remove conditional compilation for RemoveDIs (#81149)
A colleague observes that switching the default value of
LLVM_EXPERIMENTAL_DEBUGINFO_ITERATORS to "On" hasn't flipped the value
in their CMakeCache.txt. This probably means that everyone with an
existing build tree is going to not have support built in, meaning
everyone in LLVM would need to clean+rebuild their worktree when we flip
the switch on... which doesn't sound good.
So instead, just delete the flag and everything it does, making everyone
build and run ~400 lit tests in RemoveDIs mode. None of the buildbots
have had trouble with this, so it Should Be Fine (TM).
(Sending for review as this is changing various comments, and touches
several different areas -- I don't want to get too punchy).
show more ...
|
Revision tags: llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init |
|
#
40bdfd39 |
| 23-Jan-2024 |
Jeremy Morse <jeremy.morse@sony.com> |
[llvm-reduce][DebugInfo] Support reducing non-instruction debug-info (#78995)
LLVM will shortly be able to represent variable locations without
encoding information into intrinsics -- they'll be st
[llvm-reduce][DebugInfo] Support reducing non-instruction debug-info (#78995)
LLVM will shortly be able to represent variable locations without
encoding information into intrinsics -- they'll be stored as DPValue
objects instead. We'll still need to be able to llvm-reduce these
variable location assignments just like we can with intrinsics today,
thus, here's an llvm-reduce pass that enumerates and reduces the DPValue
objects.
The test for this is paradoxically written with dbg.value intrinsics:
this is because we're changing all the core parts of LLVM to support
this first, with the textual IR format coming last. Until that arrives,
testing the llvm-reduce'ing of DPValues needs the added test using
intrinsics. We should be able to drop the variable assignment using
%alsoloaded using this method. As with the other llvm-reduce tests, I've
got one set of check lines for making the reduction happen as desired,
and the other set to check the final output.
show more ...
|
#
586ecdf2 |
| 12-Dec-2023 |
Kazu Hirata <kazu@google.com> |
[llvm] Use StringRef::{starts,ends}_with (NFC) (#74956)
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::
[llvm] Use StringRef::{starts,ends}_with (NFC) (#74956)
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.
I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.
show more ...
|
#
92c2529c |
| 04-Dec-2023 |
Kazu Hirata <kazu@google.com> |
[llvm] Stop including vector (NFC)
Identified with clangd.
|
Revision tags: 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 |
|
#
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.
|
#
333ffafb |
| 14-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Trim includes and avoid using namespace in a header
|
#
c841086c |
| 14-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Add missing consts
|
Revision tags: llvmorg-15.0.7 |
|
#
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 ...
|
#
0008afc6 |
| 03-Jan-2023 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Remove leftover comment
|
#
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 ...
|
#
95abdeba |
| 20-Dec-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Disable crash reports, symbolization and core dumps
These are going to waste a lot of time and produce clutter when we're bulk introducing crashes. Add a flag to disable this behavior i
llvm-reduce: Disable crash reports, symbolization and core dumps
These are going to waste a lot of time and produce clutter when we're bulk introducing crashes. Add a flag to disable this behavior in case this matters to a reproducer.
show more ...
|
#
d939eeb9 |
| 29-Nov-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Add some missing consts
|
Revision tags: llvmorg-15.0.6, 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 ...
|
#
4e21bc0c |
| 29-Oct-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Drop guessing output format based on file extension
|
#
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 ...
|
#
f041204e |
| 24-Oct-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Stop checking workitem is interesting before each pass
Each delta pass run should have guaranteed the output is still interesting, so it should be pointless to recheck this each iterati
llvm-reduce: Stop checking workitem is interesting before each pass
Each delta pass run should have guaranteed the output is still interesting, so it should be pointless to recheck this each iteration. I have many issues that take multiple minutes to reproduce, so this ends up being a huge waste of time.
Also, remove broken line counting. This never worked, since getLines was failing to open the temporary file which was just deleted.
show more ...
|
Revision tags: llvmorg-15.0.3 |
|
#
2592ccde |
| 18-Oct-2022 |
Arthur Eubanks <aeubanks@google.com> |
[llvm-reduce] Unify pass logging
We randomly use outs() or errs(), which makes test logs confusing. We also randomly add/don't add a line afterward.
Reviewed By: arsenm
Differential Revision: http
[llvm-reduce] Unify pass logging
We randomly use outs() or errs(), which makes test logs confusing. We also randomly add/don't add a line afterward.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D136130
show more ...
|
Revision tags: working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3 |
|
#
853b57fe |
| 15-Aug-2022 |
Arthur Eubanks <aeubanks@google.com> |
[NFC][llvm-reduce] Use new pass manager for printing ThinLTO bitcode
|
Revision tags: llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
#
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 |
|
#
87710235 |
| 21-Jun-2022 |
John Regehr <regehr@cs.utah.edu> |
in the absense of the -max-pass-iterations command line options, make llvm-reduce run its full pass sequence up to 5 times, instead of just once
Differential Revision: https://reviews.llvm.org/D1282
in the absense of the -max-pass-iterations command line options, make llvm-reduce run its full pass sequence up to 5 times, instead of just once
Differential Revision: https://reviews.llvm.org/D128284
show more ...
|
Revision tags: llvmorg-14.0.5 |
|
#
d0d1c416 |
| 05-Jun-2022 |
Fangrui Song <i@maskray.me> |
Remove unneeded cl::ZeroOrMore for cl::list options
|
#
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 ...
|