llvm-project/llvm/tools
Djordje Todorovic 73777b4c35 [Debugify] Optimize debugify original mode
Before we start addressing the issue with having
a lot of false positives when using debugify in
the original mode, we have made a few patches that
should speed up the execution of the testing
utility Passes.

For example, when testing a large project
(let's say LLVM project itself), we can face
a lot of potential DI issues. Usually, we use
-verify-each-debuginfo-preserve (that is very
similar to -debugify-each) -- it collects
DI metadata before each Pass, and after the Pass
it checks if the Pass preserved the DI metadata.
However, we can speed up this process, since we
don't need to collect DI metadata before each
Pass -- we could use the DI metadata that are
collected after the previous Pass from
the pipeline as an input for the next Pass.

This patch speeds up the utility for ~2x.

Differential Revision: https://reviews.llvm.org/D115622
2022-03-22 12:14:00 +01:00
..
bugpoint Use a sorted array instead of a map to store AttrBuilder string attributes 2022-01-10 14:49:53 +01:00
bugpoint-passes Add missed rename of getFnAttributes() -> getFnAttrs() 2021-08-13 11:29:20 -07:00
dsymutil [dsymutil] Store possible Swift reflection sections in an array 2022-03-17 20:37:39 +01:00
gold [BitcodeWriter] Fix cases of some functions 2022-01-31 16:46:11 -08:00
llc Cleanup codegen includes 2022-03-16 08:43:00 +01:00
lli Revert "[NFC] Remove LinkAll*.h" 2021-11-02 09:08:09 -07:00
llvm-ar [llvm-ar] Prevent automatic conversion from thin to full archive 2022-02-03 11:45:21 +00:00
llvm-as [BitcodeWriter] Fix cases of some functions 2022-01-31 16:46:11 -08:00
llvm-as-fuzzer [Support] Change fatal_error_handler_t to take a const char* instead of std::string 2021-10-05 10:55:40 +01:00
llvm-bcanalyzer [BitcodeAnalyzer] allow a motivated user to dump BLOCKINFO 2021-10-10 10:15:14 +05:30
llvm-c-test Cleanup header dependencies in LLVMCore 2022-02-02 06:54:20 +01:00
llvm-cat
llvm-cfi-verify Cleanup include: DebugInfo/Symbolize 2022-02-24 13:25:11 +01:00
llvm-config Revert "Rename llvm::array_lengthof into llvm::size to match std::size from C++17" 2022-01-26 16:55:53 +01:00
llvm-cov [llvm-cov] New parameters to set coverage coverage_watermark 2022-03-04 22:21:40 -08:00
llvm-cvtres [tools] Delete redundant 'static' from namespace scope 'static const'. NFC 2021-10-18 22:38:42 -07:00
llvm-cxxdump Fix shlib builds for all lib/Target/*/TargetInfo libs 2021-10-08 15:21:13 -07:00
llvm-cxxfilt [llvm-cxxfilt] Use nonMicrosoftDemangle for demangling NFC 2021-10-16 13:32:17 +02:00
llvm-cxxmap [llvm][tools] Hide more unrelated tool options 2021-07-20 13:27:33 +02:00
llvm-debuginfod-find [Debuginfod] [Symbolizer] Break debuginfod out of libLLVM. 2022-02-08 19:14:18 +00:00
llvm-diff [llvm] Cleanup header dependencies in ADT and Support 2022-01-21 13:54:49 +01:00
llvm-dis Cleanup LLVMBitcode headers 2022-02-07 21:19:22 +01:00
llvm-dis-fuzzer [Bitcode] Add missing includes in llvm-dis-fuzzer 2022-02-08 09:49:38 +01:00
llvm-dlang-demangle-fuzzer [Tools] Add a fuzzing tool to help fuzzing D demangler 2021-11-09 12:45:25 -08:00
llvm-dwarfdump [llvm-dwarfdump] Avoid possible div-by-zero in debug output 2022-03-09 18:03:26 +04:00
llvm-dwp [NFC][MC] remove unused argument `MCRegisterInfo` in `MCCodeEmitter` 2022-02-16 13:10:09 +08:00
llvm-exegesis [NFC][MC] remove unused argument `MCRegisterInfo` in `MCCodeEmitter` 2022-02-16 13:10:09 +08:00
llvm-extract Cleanup header dependencies in LLVMCore 2022-02-02 06:54:20 +01:00
llvm-go [AIX][llvm-go] AIX linker does not recognize `-rpath` 2021-11-15 13:13:08 -05:00
llvm-gsymutil [dwarf][NFC] Move expandBundle() to MachO.h 2021-12-15 19:08:56 -08:00
llvm-ifs Cleanup includes: DebugInfo & CodeGen 2022-03-12 17:26:40 +01:00
llvm-isel-fuzzer Move TargetRegistry.(h|cpp) from Support to MC 2021-10-08 14:51:48 -07:00
llvm-itanium-demangle-fuzzer
llvm-jitlink [llvm-jitlink] Fix a bug in llvm-jitlink's Slab allocator. 2022-02-13 19:28:38 -08:00
llvm-jitlistener
llvm-libtool-darwin [llvm-libtools-darwin] Don't use global LLVMContext 2022-03-21 13:33:47 -07:00
llvm-link [llvm][tools] Hide more unrelated LLVM tool options 2021-07-21 09:14:04 +02:00
llvm-lipo [llvm-lipo] Don't use a global LLVMContext 2022-03-21 10:43:22 -07:00
llvm-lto [BitcodeWriter] Fix cases of some functions 2022-01-31 16:46:11 -08:00
llvm-lto2 Reland - [CodeView] Emit S_OBJNAME record 2021-12-21 19:02:14 -05:00
llvm-mc [NFC][MC] remove unused argument `MCRegisterInfo` in `MCCodeEmitter` 2022-02-16 13:10:09 +08:00
llvm-mc-assemble-fuzzer [NFC][MC] remove unused argument `MCRegisterInfo` in `MCCodeEmitter` 2022-02-16 13:10:09 +08:00
llvm-mc-disassemble-fuzzer
llvm-mca [MCA] Moved six instruction flags from InstrDesc to InstructionBase. 2022-03-13 21:21:05 -07:00
llvm-microsoft-demangle-fuzzer
llvm-ml [NFC][MC] remove unused argument `MCRegisterInfo` in `MCCodeEmitter` 2022-02-16 13:10:09 +08:00
llvm-modextract Cleanup includes: DebugInfo & CodeGen 2022-03-12 17:26:40 +01:00
llvm-mt [llvm-mt] Add support /notify_update 2022-03-11 03:46:46 +00:00
llvm-nm [NFC][llvm-nm] create a new helper function exportSymbolNamesFromFiles for --export-symbols 2022-03-09 16:28:55 -05:00
llvm-objcopy [objcopy][NFC] Move NameOrPattern::create() into CommonConfig.h 2022-03-09 13:03:28 +03:00
llvm-objdump Cleanup include: DebugInfo/Symbolize 2022-02-24 13:25:11 +01:00
llvm-opt-fuzzer [NewPM] Use the default AA pipeline by default 2021-11-04 15:10:34 -07:00
llvm-opt-report Cleanup LLVMRemarks includes 2022-01-31 11:16:28 +01:00
llvm-pdbutil [llmv-pdbutil] Replace ExitOnError with explicit error handling. 2022-03-21 05:07:10 +00:00
llvm-profdata Revert "[memprof] Store callsite metadata with memprof records." 2022-03-21 15:59:13 -07:00
llvm-profgen Cleanup includes: Transforms/IPO 2022-03-22 10:06:28 +01:00
llvm-rc [llvm-rc]: Find <target>-clang over just clang 2022-02-09 09:04:53 +01:00
llvm-readobj [WebAssembly] Second phase of implemented extended const proposal 2022-03-14 08:55:47 -07:00
llvm-reduce Cleanup includes: TransformsUtils 2022-03-01 21:00:07 +01:00
llvm-remark-size-diff Add JSON output option to llvm-remark-size-diff 2022-03-07 16:53:27 -08:00
llvm-rtdyld [RuntimeDyld] Fix building on OpenBSD 2022-02-17 12:17:11 -05:00
llvm-rust-demangle-fuzzer
llvm-shlib [cmake][NFC] Configuration for libLLVM.so symbol versioning 2022-02-01 23:05:03 -08:00
llvm-sim
llvm-size [llvm-size] Switch command line parsing from llvm::cl to OptTable 2021-07-09 10:26:53 -07:00
llvm-special-case-list-fuzzer
llvm-split [llvm] Cleanup header dependencies in ADT and Support 2022-01-21 13:54:49 +01:00
llvm-stress [llvm-stress] Remove global LLVMContext 2022-03-21 13:55:08 -07:00
llvm-strings [llvm-strings] Remove use of hard coded executable name 2022-01-05 14:41:49 +00:00
llvm-symbolizer [Debuginfod] Add BUILD_ID syntax to llvm-symbolizer. 2022-02-25 00:39:13 +00:00
llvm-tapi-diff Cleanup LLVMObject headers 2022-02-10 21:13:44 +01:00
llvm-tli-checker [TLI checker] Update for post-commit review comments 2021-12-01 12:33:54 -08:00
llvm-undname [lldb] change name demangling to be consistent between windows and linx 2021-10-19 12:04:37 +02:00
llvm-xray Cleanup include: DebugInfo/Symbolize 2022-02-24 13:25:11 +01:00
llvm-yaml-numeric-parser-fuzzer
llvm-yaml-parser-fuzzer
lto [llvm] Use `GNUInstallDirs` to support custom installation dirs 2022-01-08 00:47:31 +00:00
msbuild
obj2yaml [WebAssembly] Rename member in WasmYAML.h to avoid compiler warning 2022-03-14 09:09:43 -07:00
opt [Debugify] Optimize debugify original mode 2022-03-22 12:14:00 +01:00
opt-viewer [llvm] Use `GNUInstallDirs` to support custom installation dirs 2022-01-08 00:47:31 +00:00
remarks-shlib [llvm] Use `GNUInstallDirs` to support custom installation dirs 2022-01-08 00:47:31 +00:00
sancov [sancov] Add SPARC support for getPreviousInstructionPc 2022-02-27 19:10:51 +00:00
sanstats Cleanup include: DebugInfo/Symbolize 2022-02-24 13:25:11 +01:00
split-file [split-file] Respect input file's line endings 2022-01-21 18:45:03 -06:00
verify-uselistorder [UseListOrder] Fix use list order for function operands 2021-09-07 20:59:12 +02:00
vfabi-demangle-fuzzer [NFC] Inclusive language: Remove instances of master in URLs 2021-11-05 08:48:41 -05:00
xcode-toolchain
yaml2obj Have yaml2obj describe all options in --help 2021-11-24 07:44:52 -08:00
CMakeLists.txt Update LLVM CMakeFiles to include BOLT 2022-01-11 21:19:12 -08:00