1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Other
Bjorn Pettersson 6cdbedb38b [NewPM] Handle passes with params in -print-before/-print-after
To support options like -print-before=<pass> and -print-after=<pass>
the PassBuilder will register PassInstrumentation callbacks as well
as a mapping between internal pass class names and the pass names
used in those options (and other cmd line interfaces). But for
some reason all the passes that takes options where missing in those
maps, so for example "-print-after=loop-vectorize" didn't work.

This patch will add the missing entries by also taking care of
function and loop passes with params when setting up the class to
pass name maps.

One might notice that even with this patch it might be tricky to
know what pass name to use in options such as -print-after. This
because there only is a single mapping from class name to pass name,
while the PassRegistry currently is a bit messy as it sometimes
reuses the same class for different pass names (without using the
"pass with params" scheme, or the pass-name<variant> syntax).

It gets extra messy in some situations. For example the
MemorySanitizerPass can run like this (with debug and print-after)
  opt -passes='kmsan' -print-after=msan-module -debug-only=msan
The 'kmsan' alias for 'msan<kernel>' is just confusing as one might
think that 'kmsan' is a separate pass (but the DEBUG_TYPE is still
just 'msan'). And since the module pass version of the pass adds
a mapping from 'MemorySanitizerPass' to 'msan-module' one need to
use 'msan-module' in the print-before and print-after options.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D105006
2021-07-09 09:27:37 +02:00
..
ChangePrinters [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
Inputs
X86 Recommit "[LTO] Use lto::backend for code generation." 2021-02-15 10:05:42 +00:00
2002-01-31-CallGraph.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
2002-02-24-InlineBrokePHINodes.ll
2004-08-16-PackedConstantInlineStore.ll Remove llvm-upgrade and update tests. 2008-02-19 01:44:26 +00:00
2004-08-16-PackedGlobalConstant.ll
2004-08-16-PackedSelect.ll
2004-08-16-PackedSimple.ll
2004-08-20-PackedControlFlow.ll
2006-02-05-PassManager.ll
2007-06-05-PassID.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
2007-06-28-PassManager.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
2007-09-10-PassManager.ll [NewPM][LoopUnswitch] Pin loop-unswitch to legacy PM or use simple-loop-unswitch 2020-08-06 10:56:00 -07:00
2008-02-14-PassManager.ll
2008-06-04-FieldSizeInPacked.ll
2008-10-06-RemoveDeadPass.ll
2008-10-15-MissingSpace.ll
2009-03-31-CallGraph.ll [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2009-06-05-no-implicit-float.ll
2009-09-14-function-elements.ll
2010-05-06-Printer.ll Remove "Rewrite Symbols" from codegen pipeline 2021-05-31 08:32:36 -07:00
attribute-comment.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
available-externally-lto.ll
bb-badref.ll [AsmWriter] Construct SlotTracker with the function 2020-10-20 15:01:40 -07:00
bcanalyzer-block-info.txt
bcanalyzer-dump-option.txt
can-execute.txt
cfg_deopt_unreach.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
cfg-printer-branch-weights-percent.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
cfg-printer-branch-weights.ll [test] Fix tests using -analyze that fail under NPM 2020-10-21 21:54:30 -07:00
cfg-printer-filter.ll Use -cfg-func-name value as filter for -view-cfg, etc. 2021-06-16 23:54:51 +02:00
cgscc-devirt-iteration.ll [funcattrs] Add the maximal set of implied attributes to definitions 2021-04-16 14:22:19 -07:00
cgscc-disconnected-invalidation.ll
cgscc-iterate-function-mutation.ll [funcattrs] Add the maximal set of implied attributes to definitions 2021-04-16 14:22:19 -07:00
cgscc-libcall-update.ll Revert "[BuildLibCalls/SimplifyLibCalls] Fix attributes on created CallInst instructions." 2021-06-24 19:24:34 -07:00
cgscc-observe-devirt.ll [funcattrs] Add the maximal set of implied attributes to definitions 2021-04-16 14:22:19 -07:00
change-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
cleanup-lcssa.ll
codegenprepare-and-debug.ll
constant-fold-gep-address-spaces.ll
constant-fold-gep.ll Reland [SCEV] Improve modelling for (null) pointer constants 2021-03-13 16:05:34 +03:00
copy-metadata-of-declaration.ll [Cloning] Copy metadata of global declarations 2021-01-08 08:21:18 +08:00
cspgo-O2-pipeline.ll [NewPM] Pin various tests under Other/ to legacy PM 2020-08-17 18:58:08 -07:00
debug-pass-npm.ll [opt] Error if -debug-pass is specified alongside the new PM 2021-03-02 15:59:28 -08:00
debugcounter-dce.ll
debugcounter-earlycse.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
debugcounter-newgvn.ll
debugcounter-predicateinfo.ll Revert of D49126 [PredicateInfo] Use custom mangling to support ssa_copy with unnamed types. 2021-03-20 11:37:09 +01:00
devirtualization-undef.ll Reland [CGSCC] Detect devirtualization in more cases 2020-11-23 21:28:59 -08:00
extract-alias.ll
extract-linkonce.ll
extract-weak-odr.ll
extract.ll
FileCheck-space.txt
force-opaque-ptrs-typed-dis.ll [OpaquePtr] Split force-opaque-pointers test (NFC) 2021-06-25 11:16:35 +02:00
force-opaque-ptrs.ll [OpaquePtr] Support opaque pointers in intrinsic type check 2021-07-01 18:26:41 +02:00
heat-colors-graphs.ll [test] Pin tests using -dot-callgraph to legacy PM 2020-11-23 11:48:59 -08:00
heat-colors-multigraph.ll [test] Pin tests using -dot-callgraph to legacy PM 2020-11-23 11:48:59 -08:00
invalid-commandline-option.ll
invariant.group.ll Remove a -O2 usage from a CSE specific test file 2021-04-13 10:29:36 -07:00
lint.ll [test] Properly match parameter/argument ABI attributes 2021-05-31 09:12:18 -07:00
lit-globbing.ll
lit-quoting.txt [lit] Remove unnecessary testcases from lit-quoting.txt that fail on macOS 2021-04-14 15:09:42 +03:00
lit-unicode.txt
llvm-nm-without-aliases.ll
loop-deletion-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
loop-pass-ordering.ll
loop-pass-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
loop-pm-invalidation.ll [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
loopnest-callback.ll Making Instrumentation aware of LoopNest Pass 2021-05-24 20:25:52 -07:00
machine-size-remarks.ll
module-pass-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
new-pass-manager-verify-each.ll [NewPM] Use PassInstrumentation for -verify-each 2020-10-07 19:24:25 -07:00
new-pass-manager.ll [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
new-pm-cspgo.ll
new-pm-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-lto-defaults.ll [test] Fix new-pm-lto-defaults.ll to work on all platforms 2021-05-13 18:12:55 -07:00
new-pm-O0-defaults.ll Add AddDiscriminatorsPass to NPM default O0 pipeline 2021-07-08 16:37:20 -07:00
new-pm-O0-ep-callbacks.ll [NewPM] Add pipeline EP callback after initial frontend cleanup 2020-11-24 21:14:36 -08:00
new-pm-pgo-O0.ll [NPM] Move more O0 pass building into PassBuilder 2020-11-19 11:22:23 -08:00
new-pm-pgo-preinline.ll [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
new-pm-pgo.ll [PassManager][PhaseOrdering] lower expects before running simplifyCFG 2021-04-12 15:07:53 -04:00
new-pm-pr42726-cgscc.ll [NewPM][opt] Run the "default" AA pipeline by default 2021-01-21 21:08:54 -08:00
new-pm-pseudo-probe.ll Moving UniqueInternalLinkageNamesPass to the start of IR pipelines. 2021-01-02 14:26:21 -08:00
new-pm-thinlto-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-thinlto-postlink-pgo-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-thinlto-postlink-samplepgo-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-thinlto-prelink-pgo-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-thinlto-prelink-samplepgo-defaults.ll [OpenMP] Run the OpenMPOpt module pass at O1 2021-06-28 18:47:41 -04:00
new-pm-time-trace.ll Extend TimeTrace to LLVM's new pass manager 2020-03-06 14:45:19 -08:00
opt-bisect-helper.py
opt-bisect-legacy-pass-manager.ll [FileCheck] Default --allow-unused-prefixes to false 2021-02-08 13:37:04 -08:00
opt-bisect-new-pass-manager.ll [NewPM] Mark BitcodeWriter as required. 2021-05-21 16:14:09 -07:00
opt-hot-cold-split.ll Revert "[PM/CC1] Add -f[no-]split-cold-code CC1 option to toggle splitting" 2020-10-19 12:31:14 +02:00
opt-LTO-pipeline.ll [VectorCombine] Simplify to scalar store if only one element updated 2021-05-08 18:14:51 +08:00
opt-npm.ll [NewPM] Attempt to run opt passes specified via -foo-pass under NPM 2020-06-23 10:10:40 -07:00
opt-O0-pipeline-enable-matrix.ll Move EntryExitInstrumentation pass location 2021-03-01 10:08:10 -08:00
opt-O0-pipeline.ll Move EntryExitInstrumentation pass location 2021-03-01 10:08:10 -08:00
opt-O2-pipeline.ll [DSE] Remove stores in the same loop iteration 2021-06-20 17:03:30 +01:00
opt-O3-pipeline-enable-matrix.ll [DSE] Remove stores in the same loop iteration 2021-06-20 17:03:30 +01:00
opt-O3-pipeline.ll [DSE] Remove stores in the same loop iteration 2021-06-20 17:03:30 +01:00
opt-old-new-pm-passes.ll [NPM] Bail out when -foo and --passes=foo are both specified 2020-06-22 08:27:13 -07:00
opt-Os-pipeline.ll [DSE] Remove stores in the same loop iteration 2021-06-20 17:03:30 +01:00
opt-override-denormal-fp-math-f32.ll [test] Fix unused check prefixes in test/Linker/ and test/Other/ 2020-10-29 21:54:56 -07:00
opt-override-denormal-fp-math-mixed.ll [test] Fix unused check prefixes in test/Linker/ and test/Other/ 2020-10-29 21:54:56 -07:00
opt-override-denormal-fp-math.ll [test] Fix unused check prefixes in test/Linker/ and test/Other/ 2020-10-29 21:54:56 -07:00
opt-override-frame-pointer.ll llc: Don't overwrite frame-pointer attribute 2020-01-15 20:56:46 -05:00
opt-override-mcpu-mattr.ll llc: Change behavior of -mattr with existing attribute 2020-01-15 19:46:01 -05:00
opt-pipeline-vector-passes.ll [NewPM] Add ExtraVectorizerPasses support 2021-01-26 22:59:10 +01:00
opt-twice.ll
optimization-remarks-auto.ll [InlineCost] Make cost-benefit decision explicit 2021-03-24 16:10:58 -07:00
optimization-remarks-inline.ll Revert "Revert "Reland "[Support] make report_fatal_error abort instead of exit""" 2020-02-13 10:16:06 -08:00
optimization-remarks-invalidation.ll
optimization-remarks-lazy-bfi.ll
optimize-inrange-gep.ll
optimize-options.ll [NewPM] Pin various tests under Other/ to legacy PM 2020-08-17 18:58:08 -07:00
pass-pipeline-parsing.ll [NewPM] Add options to PrintPassInstrumentation 2021-05-18 20:59:35 -07:00
pass-pipelines.ll [LoopRotate] Don't split loop pass manager 2021-04-08 22:05:18 +02:00
pipefail.txt
pm-pgo-preinline.ll [PGO] Enable preinline and cleanup when optimize for size 2020-12-10 12:29:17 -08:00
pr32085.ll
pr49950.ll Make dependency between certain analysis passes transitive (reapply) 2021-05-05 15:17:55 +02:00
print-before-after.ll [NewPM] Handle passes with params in -print-before/-print-after 2021-07-09 09:27:37 +02:00
print-cfg-sccs.ll [NewPM] Pin various tests under Other/ to legacy PM 2020-08-17 18:58:08 -07:00
print-changed-deleted.ll [NewPM] Fix -print-changed when a -filter-print-funcs function is removed 2021-04-12 11:55:17 -07:00
print-debug-counter.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
print-module-scope.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
print-passes.ll [NewPM] Print passes with params when using "opt -print-passes" 2021-06-22 09:01:38 +02:00
print-slotindexes.ll [NFC] Disallow unused prefixes under Other 2021-01-19 12:22:29 -08:00
printer.ll [NewPM] Pin various tests under Other/ to legacy PM 2020-08-17 18:58:08 -07:00
ResponseFile.ll
scalable-vector-array.ll
scalable-vector-struct-intrinsic.ll [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. 2021-01-17 23:29:51 -08:00
scalable-vectors-core-ir.ll Precommit analysis/etc tests for inselt poison placeholder 2020-12-24 12:14:24 +09:00
scc-deleted-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
scc-pass-printer.ll [NewPM] Cleanup IR printing instrumentation 2021-04-15 09:50:55 -07:00
size-remarks.ll [test] Pin size-remarks.ll to legacy PM 2020-11-17 23:47:49 -08:00
spir_cc.ll
statistic.ll [opt] Pin -stats-json & -opt-bisect-limit tests to -enable-new-pm=0 2020-10-28 22:59:53 -07:00
time-passes.ll [Time-report] Add a flag -ftime-report={per-pass,per-pass-run} to control the pass timing aggregation 2020-12-08 10:13:19 -08:00
unroll-sroa.ll
writing-to-stdout.ll