|
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 |
|
| #
f106525d |
| 26-Jul-2022 |
Fangrui Song <[email protected]> |
[MachineFunctionPass] Support -print-changed and -print-changed=quiet
-print-changed for new pass manager is handy beside -print-after-all. Port it to MachineFunctionPass.
Note: lib/Passes/Standard
[MachineFunctionPass] Support -print-changed and -print-changed=quiet
-print-changed for new pass manager is handy beside -print-after-all. Port it to MachineFunctionPass.
Note: lib/Passes/StandardInstrumentations.cpp implements a number of misc features. If we want to use them for codegen, we may need to lift some functionality to LLVMIR.
Reviewed By: aeubanks, jamieschmeiser
Differential Revision: https://reviews.llvm.org/D130434
show more ...
|
| #
89357f0c |
| 24-Jul-2022 |
Fangrui Song <[email protected]> |
[Passes] Simplify ChangePrinter names. NFC
|
|
Revision tags: llvmorg-14.0.6 |
|
| #
8c6305b8 |
| 16-Jun-2022 |
Arthur Eubanks <[email protected]> |
[NewPM] Print function/SCC size with -debug-pass-manager
This is helpful for debugging issues with very large functions or SCC. Also helpful when function names are very large and it's hard to tell
[NewPM] Print function/SCC size with -debug-pass-manager
This is helpful for debugging issues with very large functions or SCC. Also helpful when function names are very large and it's hard to tell the number of nodes in an SCC.
Reviewed By: hans
Differential Revision: https://reviews.llvm.org/D128003
show more ...
|
| #
ede60037 |
| 29-Jun-2022 |
Nicolai Hähnle <[email protected]> |
ManagedStatic: remove many straightforward uses in llvm
(Reapply after revert in e9ce1a588030d8d4004f5d7e443afe46245e9a92 due to Fuchsia test failures. Removed changes in lib/ExecutionEngine/ other
ManagedStatic: remove many straightforward uses in llvm
(Reapply after revert in e9ce1a588030d8d4004f5d7e443afe46245e9a92 due to Fuchsia test failures. Removed changes in lib/ExecutionEngine/ other than error categories, to be checked in more detail and reapplied separately.)
Bulk remove many of the more trivial uses of ManagedStatic in the llvm directory, either by defining a new getter function or, in many cases, moving the static variable directly into the only function that uses it.
Differential Revision: https://reviews.llvm.org/D129120
show more ...
|
| #
e9ce1a58 |
| 10-Jul-2022 |
Nicolai Hähnle <[email protected]> |
Revert "ManagedStatic: remove many straightforward uses in llvm"
This reverts commit e6f1f062457c928c18a88c612f39d9e168f65a85.
Reverting due to a failure on the fuchsia-x86_64-linux buildbot.
|
| #
e6f1f062 |
| 29-Jun-2022 |
Nicolai Hähnle <[email protected]> |
ManagedStatic: remove many straightforward uses in llvm
Bulk remove many of the more trivial uses of ManagedStatic in the llvm directory, either by defining a new getter function or, in many cases,
ManagedStatic: remove many straightforward uses in llvm
Bulk remove many of the more trivial uses of ManagedStatic in the llvm directory, either by defining a new getter function or, in many cases, moving the static variable directly into the only function that uses it.
Differential Revision: https://reviews.llvm.org/D129120
show more ...
|
| #
8de6d4b7 |
| 28-Jun-2022 |
Nicolai Hähnle <[email protected]> |
StandardInstrumentation: print verifier output to errs
Enabling the verifiers is not very helpful if their output is suppressed beyond the fatal error.
Differential Revision: https://reviews.llvm.o
StandardInstrumentation: print verifier output to errs
Enabling the verifiers is not very helpful if their output is suppressed beyond the fatal error.
Differential Revision: https://reviews.llvm.org/D128743
show more ...
|
|
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, 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 |
|
| #
24239e24 |
| 07-Oct-2021 |
Jamie Schmeiser <[email protected]> |
Add new hidden option -print-on-crash that prints out IR that caused opt pipeline to crash
A new hidden option -print-on-crash that prints the IR as it was upon entering the last pass when there is
Add new hidden option -print-on-crash that prints out IR that caused opt pipeline to crash
A new hidden option -print-on-crash that prints the IR as it was upon entering the last pass when there is a crash.
The IR is saved in its print form before each pass is started and a signal handler is registered. If the compilation crashes, the signal handler will print the saved IR to dbgs(). This option can be modified using -print-module-scope to get the IR for the complete module. Note that this option only works with the new pass manager.
Reviewed By: yrouban
Differential Revision: https://reviews.llvm.org/D86657
show more ...
|
| #
443b6ec1 |
| 13-Apr-2022 |
Evgeny Mandrikov <[email protected]> |
[NFC] Fix build failure with GCC 11 in C++20 mode
This was already fixed in https://github.com/llvm/llvm-project/commit/2ccf0b76bcaf0895e04f14e3ff53c59dd96f9f0f but then regressed in https://github.
[NFC] Fix build failure with GCC 11 in C++20 mode
This was already fixed in https://github.com/llvm/llvm-project/commit/2ccf0b76bcaf0895e04f14e3ff53c59dd96f9f0f but then regressed in https://github.com/llvm/llvm-project/commit/79a1f3e7c6d338b953b4dfe8cd7cb13ba60fe4e7
Reviewed By: aeubanks
Differential Revision: https://reviews.llvm.org/D123589
show more ...
|
| #
79a1f3e7 |
| 08-Mar-2022 |
Arthur Eubanks <[email protected]> |
[NFC] Cleanup StandardInstrumentations
|
| #
a5bbc6ef |
| 23-Feb-2022 |
Bill Wendling <[email protected]> |
[NFC] Remove unnecessary "#include"s from header files
|
| #
3a3cb929 |
| 07-Feb-2022 |
Kazu Hirata <[email protected]> |
[llvm] Use = default (NFC)
|
| #
2ccf0b76 |
| 06-Jan-2022 |
Evgeny Mandrikov <[email protected]> |
Fix build failure with GCC 11 in C++20 mode
See https://wg21.link/cwg2237
Reviewed By: shafik, dexonsmith
Differential Revision: https://reviews.llvm.org/D115355
|
| #
864ca424 |
| 16-Dec-2021 |
Jamie Schmeiser <[email protected]> |
Revert "A new hidden option exec-on-ir-change=exe that calls exe each time IR changes"
This reverts commit dff0e8b4ff13af311512c369d059f1e095e83a60.
Failing build: https://lab.llvm.org/buildbot/#/
Revert "A new hidden option exec-on-ir-change=exe that calls exe each time IR changes"
This reverts commit dff0e8b4ff13af311512c369d059f1e095e83a60.
Failing build: https://lab.llvm.org/buildbot/#/builders/42/builds/2800
show more ...
|
| #
dff0e8b4 |
| 16-Dec-2021 |
Jamie Schmeiser <[email protected]> |
A new hidden option exec-on-ir-change=exe that calls exe each time IR changes
Summary: A new option exec-on-ir-changed is defined that allows one to specify an exe that is called after each pass in
A new hidden option exec-on-ir-change=exe that calls exe each time IR changes
Summary: A new option exec-on-ir-changed is defined that allows one to specify an exe that is called after each pass in the opt pipeline that changes the IR. The exec-on-ir-change=exe option saves the IR in a temporary file and calls exe with the name of the file and the name of the pass that just changed it after each pass alters the IR. exe is also called with the initial IR. This can be used, for example, to determine which pass corrupts the IR by having exe as a script that calls llc and runs a test to see after which pass the results change. The print-changed filtering options are respected. Note that this is only supported with the new pass manager.
Author: Jamie Schmeiser <[email protected]> Reviewed By: aeubanks (Arthur Eubanks) Differential Revision: https://reviews.llvm.org/D110776
show more ...
|
| #
c4ce4265 |
| 08-Dec-2021 |
Arthur Eubanks <[email protected]> |
Revert "A new hidden option test-changed=exe that calls exe after each time IR changes"
This reverts commit f9235e45fd1f5ca21f95105427184a6afd0f9d95.
Causes breakages on Windows: http://45.33.8.238
Revert "A new hidden option test-changed=exe that calls exe after each time IR changes"
This reverts commit f9235e45fd1f5ca21f95105427184a6afd0f9d95.
Causes breakages on Windows: http://45.33.8.238/win/50453/step_11.txt.
show more ...
|
| #
f9235e45 |
| 08-Dec-2021 |
Jamie Schmeiser <[email protected]> |
A new hidden option test-changed=exe that calls exe after each time IR changes
Summary: A new option test-changed is defined that allows one to specify an exe that is called after each pass in the o
A new hidden option test-changed=exe that calls exe after each time IR changes
Summary: A new option test-changed is defined that allows one to specify an exe that is called after each pass in the opt pipeline that changes the IR. The test-changed=exe option saves the IR in a temporary file and calls exe with the name of the file and the name of the pass that just changed it after each pass alters the IR. exe is also called with the initial IR. This can be used, for example, to determine which pass corrupts the IR by having exe as a script that calls llc and runs a test to see after which pass the results change. The print-changed filtering options are respected.
Author: Jamie Schmeiser <[email protected]> Reviewed By: aeubanks (Arthur Eubanks) Differential Revision: https://reviews.llvm.org/D110776
show more ...
|
| #
84687405 |
| 08-Dec-2021 |
Jamie Schmeiser <[email protected]> |
Remove Colours array in -print-changed=dot-cfg
Summary: The Colours array is apparently the source of TSAN errors. It is unnecessary and was there to ease readability of the code. Remove it to clean
Remove Colours array in -print-changed=dot-cfg
Summary: The Colours array is apparently the source of TSAN errors. It is unnecessary and was there to ease readability of the code. Remove it to clean up the TSAN errors.
Author: Jamie Schmeiser <[email protected]> Reviewed By: aeubanks (Arthur Eubanks) Differential Revision: https://reviews.llvm.org/D115175
show more ...
|
| #
f240e528 |
| 29-Nov-2021 |
Kazu Hirata <[email protected]> |
[llvm] Use range-based for loops (NFC)
|
| #
8720149d |
| 04-Nov-2021 |
Jamie Schmeiser <[email protected]> |
Remove unused function from print-changed=dot-cfg code
Summary: Remove unused function from print-changed=dot-cfg code to silence a gcc compiler warning.
Author: Jamie Schmeiser <[email protected]
Remove unused function from print-changed=dot-cfg code
Summary: Remove unused function from print-changed=dot-cfg code to silence a gcc compiler warning.
Author: Jamie Schmeiser <[email protected]> Reviewed By: uabelho(Mikael Holmen) Differential Revision: https://reviews.llvm.org/D113188
show more ...
|
| #
5718b9f1 |
| 02-Nov-2021 |
Christopher Tetreault <[email protected]> |
[NFC] Reformat VerifyPreservedCFG for non-CPP-aware syntax highlighters
* Move `);` outside the #ENDIF. Syntax highlighters that highlight missed closing parens, but are not aware of the C Preproc
[NFC] Reformat VerifyPreservedCFG for non-CPP-aware syntax highlighters
* Move `);` outside the #ENDIF. Syntax highlighters that highlight missed closing parens, but are not aware of the C Preprocessor saw the original code as having missed parens.
show more ...
|
| #
816761f0 |
| 02-Nov-2021 |
Jamie Schmeiser <[email protected]> |
Add new choices dot-cfg and dot-cfg-quiet to print-changed.
Summary: Add new options -print-changed=[dot-cfg | dot-cfg-quiet] which create a website of DOT files showing colourized changes as the IR
Add new choices dot-cfg and dot-cfg-quiet to print-changed.
Summary: Add new options -print-changed=[dot-cfg | dot-cfg-quiet] which create a website of DOT files showing colourized changes as the IR is changed by passes in the new pass manager pipeline.
A new change reporter is introduced that creates a website of changes made by passes in the opt pipeline that change the IR. The hidden option -dot-cfg-dir=<dir> specifies a directory (defaulting to "./") into which the website will be created.
A file passes.html is created that contains a list of all the passes that act on the IR. Those that do not change the IR are listed as omitted because of no change, ignored or filtered out (using -filter-print-func and -filter-passes) or not listed in quiet mode. Those that do change the IR are listed as a link to a DOT file which contains a CFG depiction of the IR (ala -dot-cfg) except that the instructions, basic blocks and links that are only in the IR before the pass (ie, removed) and those that are only in the IR after the pass (ie, added) are shown in red and green, respectively, while the aspects of the CFG that do not change are shown in black. Additional hidden options -dot-cfg-before-color=<dot named color>, -dot-cfg-after-color=<dot named color> and -dot-cfg-common-color=<dot named color> are defined that allow the customization of the colors used in colorizing the CFG. -change-printer-dot-path=<path to dot exe> is also added.
Author: Jamie Schmeiser <[email protected]> Reviewed By: aeubanks (Arthur Eubanks) Differential Revision: https://reviews.llvm.org/D87202
show more ...
|
| #
3af474c0 |
| 19-Oct-2021 |
Jamie Schmeiser <[email protected]> |
Changes to print-changed classes in preparation for DotCfg change printer
Summary: Break out non-functional changes to the print-changed classes that are needed for reuse with the DotCfg change prin
Changes to print-changed classes in preparation for DotCfg change printer
Summary: Break out non-functional changes to the print-changed classes that are needed for reuse with the DotCfg change printer in https://reviews.llvm.org/D87202.
Various changes to the change printers to facilitate reuse with the upcoming DotCfg change printer. This includes changing several of the classes and their support classes to being templates. Also, some template parameter names were simplified to avoid confusion with planned identifiers in the DotCfg change printer to come. A virtual function in the class for comparing functions was changed to a lambda. The virtual function same was replaced with calls to operator==. The only intentional functional change was to add the exe name as the first parameter to llvm::sys::ExecuteAndWait
Author: Jamie Schmeiser <[email protected]> Reviewed By: aeubanks (Arthur Eubanks) Differential Revision: https://reviews.llvm.org/D110737
show more ...
|
| #
a4095df4 |
| 06-Oct-2021 |
Arthur Eubanks <[email protected]> |
Don't print uselistorder in --print-changed
Using uselistorders is fairly niche, it shouldn't be on by default and mostly just clutters the output.
Reviewed By: jamieschmeiser
Differential Revisio
Don't print uselistorder in --print-changed
Using uselistorders is fairly niche, it shouldn't be on by default and mostly just clutters the output.
Reviewed By: jamieschmeiser
Differential Revision: https://reviews.llvm.org/D111282
show more ...
|
| #
bd5befb5 |
| 07-Oct-2021 |
Jamie Schmeiser <[email protected]> |
Revert "Reland A new option -print-on-crash that prints the IR as it was upon entering the last pass when there is a crash."
This reverts commit 13d1592716a65444314f501109ec9ca344ef1f87.
|