mirror-llvm-project/llvm/test/Other
Pankaj Dwivedi 87304516a1
[Reassociate] Use UniformityInfo to group uniform operands together (#198507)
On targets with branch divergence (TTI.hasBranchDivergence()), boost the
rank of divergent operands in ReassociateExpression() so they sort
towards the root of the expression tree. This clusters uniform operands
at the leaves, letting the backend lower the inner sub-expression to a
scalar ALU instruction (s_mul/s_or/s_and) instead of a vector.

Ref:
https://github.com/llvm/llvm-project/pull/175167#issuecomment-4476483692
2026-07-23 11:21:20 +05:30
..
ChangePrinters
ChangeTesters
Inputs
X86 [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
2002-01-31-CallGraph.ll
2002-02-24-InlineBrokePHINodes.ll
2004-08-16-PackedConstantInlineStore.ll
2004-08-16-PackedGlobalConstant.ll
2004-08-16-PackedSelect.ll
2004-08-16-PackedSimple.ll
2004-08-20-PackedControlFlow.ll
2007-09-10-PassManager.ll
2008-02-14-PassManager.ll
2008-06-04-FieldSizeInPacked.ll
2008-10-06-RemoveDeadPass.ll
2008-10-15-MissingSpace.ll
2009-06-05-no-implicit-float.ll
2009-09-14-function-elements.ll
2010-05-06-Printer.ll
amdgpu-pass-pipeline-parsing.ll
attribute-comment.ll
available-externally-lto.ll
bb-badref.ll
bcanalyzer-block-info.txt
bcanalyzer-dump-blockinfo-option.txt
bcanalyzer-dump-option.txt
can-execute.txt
cfg-multiline-header.ll
cfg-printer-branch-weights-percent.ll
cfg-printer-branch-weights.ll
cfg-printer-filter.ll
cfg_deopt_unreach.ll
cgscc-devirt-iteration.ll [FunctionAttrs] Add support for nofree argument inference (#201591) 2026-06-05 12:36:55 +02:00
cgscc-disconnected-invalidation.ll
cgscc-iterate-function-mutation.ll
cgscc-libcall-update.ll
cgscc-observe-devirt.ll
cgscc-refscc-mutation-order.ll
change-printer.ll
change-printer.mir
cleanup-lcssa.ll
codegen-plugin-loading.ll [llvm][test][CGPluginTest] Fix plugin path again (#159923) 2025-09-20 16:43:11 +03:00
codegenprepare-and-debug.ll
constant-fold-gep-address-spaces.ll
constant-fold-gep.ll
copy-metadata-of-declaration.ll
count-visits.ll
crash-stack-trace.ll
debug-pass-manager.ll
debugcounter-dce.ll [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
debugcounter-earlycse.ll [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
debugcounter-multi-intervals.ll [OptBisect][ADT] Add support for running ranges of passes and introduce IntegerInclusiveInterval ADT (#152393) 2026-01-05 11:56:40 -08:00
debugcounter-newgvn.ll [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
debugcounter-predicateinfo.ll [Passes] Use consistent naming for printer passes (#198144) 2026-05-17 11:41:27 -07:00
debugcounter-slsr.ll [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
devirt-invalidated.ll
devirtualization-undef.ll
dropped-var-stats.ll [DebugInfo] Enforce DISubprogram type as required in LLParser (#196299) 2026-05-13 15:40:07 +01:00
dump-before-after-invalidated.ll
dump-before-after-pass-number.ll
dump-before-after.ll [llvm] Fix crash with -ir-dump-directory & analysis passes (#202477) 2026-06-10 11:08:30 -07:00
dump-with-filter.ll
fatlto.ll [CFI] Extract DropTypeTestsPass from LowerTypeTestsPass (#192578) 2026-04-17 00:00:44 -07:00
FileCheck-space.txt
force-opaque-ptrs.ll [IR][CodeGen][mlir] Overload pointer argument for compressstore/expandload intrinsics (#200492) 2026-06-05 15:04:18 +00:00
function-simplification.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
heat-colors-graphs.ll
heat-colors-multigraph.ll
invalid-commandline-option.ll
invalidated-cgscc-invalidate-analyses.ll
invariant.group.ll
largest-scc-stat.ll
legacy-callgraph-scc-pass-printer.ll Emit newline after IR-dump banner in PrintCallGraphPass (#199410) 2026-05-28 06:18:38 -07:00
lint.ll
lit-globbing.ll
lit-quoting.txt
lit-unicode.txt
llvm-nm-without-aliases.ll
loop-deletion-printer.ll
loop-mssa-not-preserved.ll
loop-pass-ordering.ll
loop-pass-printer.ll
loop-pm-invalidation.ll [SimpleLoopUnswitch] Don't use BlockFrequencyInfo to skip cold loops (#159522) 2025-10-17 23:33:49 +00:00
loop-print-after-pass-invalidated.ll
loopnest-callback.ll
loopnest-pass-ordering.ll
lpm-require-analysis-optnone.ll [PM] Make InvalidateAllAnalysesPass Optional (#196956) 2026-05-11 14:44:02 +00:00
machine-size-remarks.ll
mixed-opaque-ptrs-2.ll
module-pass-printer.ll
new-pass-manager-verify-each.ll
new-pass-manager.ll
new-pm-cspgo.ll
new-pm-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-eager-invalidate.ll
new-pm-lto-defaults.ll [Passes] Invoke CGSCCOptimizerLateEP callbacks in LTO pipeline (#203262) 2026-06-14 20:32:12 -05:00
new-pm-lto-prelink-samplepgo-inline-threshold.ll [LTO][Pipelines] Add 0 hot-caller threshold for SamplePGO + FullLTO (#135152) 2025-04-14 11:21:08 +08:00
new-pm-memprof.ll
new-pm-O0-defaults.ll Reland "Compute GUIDs once and store in metadata" (#184065) (#201849) 2026-07-07 16:04:23 -07:00
new-pm-O0-ep-callbacks.ll
new-pm-pgo-O0.ll
new-pm-pgo-preinline.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
new-pm-pgo.ll
new-pm-pr42726-cgscc.ll
new-pm-print-pipeline.ll [LoopUnroll] Add prepare-for-lto pass option (#192153) 2026-07-20 17:42:47 +00:00
new-pm-pseudo-probe.ll
new-pm-thinlto-postlink-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-thinlto-postlink-pgo-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-thinlto-postlink-samplepgo-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-thinlto-prelink-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-thinlto-prelink-pgo-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-thinlto-prelink-samplepgo-defaults.ll [Reassociate] Use UniformityInfo to group uniform operands together (#198507) 2026-07-23 11:21:20 +05:30
new-pm-time-trace.ll
no-rerun-function-simplification-pipeline.ll
opt-bisect-helper.py
opt-bisect-new-pass-manager.ll [SelectionDAG] Mark LowerTypeTests as required and remove intrinsic handling from #142939 (#179249) 2026-02-05 11:16:48 +01:00
opt-bisect-print-ir-path.ll
opt-bisect-ranges.ll [OptBisect][ADT] Add support for running ranges of passes and introduce IntegerInclusiveInterval ADT (#152393) 2026-01-05 11:56:40 -08:00
opt-disable-and-bisect.ll [OptBisect] Merge shouldRun logic of -opt-bisect and -opt-disable (#177122) 2026-01-21 12:14:46 +01:00
opt-disable.ll [OptBisect] Merge shouldRun logic of -opt-bisect and -opt-disable (#177122) 2026-01-21 12:14:46 +01:00
opt-hot-cold-split.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
opt-legacy-syntax-deprecation.ll
opt-On.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
opt-Os-Oz.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
opt-override-denormal-fp-math-f32.ll IR: Promote "denormal-fp-math" to a first class attribute (#174293) 2026-02-05 13:31:26 +00:00
opt-override-denormal-fp-math-mixed.ll IR: Promote "denormal-fp-math" to a first class attribute (#174293) 2026-02-05 13:31:26 +00:00
opt-override-denormal-fp-math.ll IR: Promote "denormal-fp-math" to a first class attribute (#174293) 2026-02-05 13:31:26 +00:00
opt-override-frame-pointer.ll
opt-override-mcpu-mattr.ll
opt-pipeline-attributor-enable.ll Attributor: Add -light options to -attributor-enable flag (#179346) 2026-02-03 10:37:10 +00:00
opt-pipeline-vector-passes.ll
opt-twice.ll
optimization-remarks-auto.ll
optimization-remarks-inline.ll
optimization-remarks-invalidation.ll
optimization-remarks-lazy-bfi.ll Enforce single-operand form for llvm.loop.distribute metadata (#201077) 2026-07-21 12:55:09 +05:30
optimize-inrange-gep.ll [FunctionAttrs] Add support for nofree argument inference (#201591) 2026-06-05 12:36:55 +02:00
pass-pipeline-parsing.ll
pipeline-alias-errors.ll [PassBuilder][FatLTO] Expose FatLTO pipeline via pipeline string (#146048) 2025-06-30 12:04:42 +02:00
pipeline-callbacks-string-api.ll [Passes] Remove Os and Oz optimization pipelines (#191363) 2026-04-22 09:34:35 +00:00
pr32085.ll
print-at-pass-number.ll [StandardInstrumentations] Make -print-after-pass-number/-print-after-pass-number options allow multiple pass numbers specified (#155228) 2025-08-26 10:22:50 +09:00
print-before-after.ll
print-cfg-scc.ll [Passes] Use consistent naming for printer passes (#198144) 2026-05-17 11:41:27 -07:00
print-changed-deleted.ll
print-changed-machine.ll [CodeGen] Support --print-changed for legacy codegen IR passes (#202252) 2026-06-10 18:36:16 -07:00
print-debug-counter.ll [Support] Support debug counters in non-assertion builds (#170468) 2025-12-03 16:21:47 +01:00
print-function-size.ll
print-inst-addrs.ll
print-inst-debug-locs.ll
print-loop-func-scope.ll
print-mi-addrs.ll
print-module-scope.ll
print-on-crash.ll Begin -print-on-crash output with semicolon (#164903) 2025-10-27 22:05:48 +00:00
print-passes.ll [LoopUnroll] Add prepare-for-lto pass option (#192153) 2026-07-20 17:42:47 +00:00
print-prof-data.ll
print-scc-size.ll
print-slotindexes.ll
printer.ll
ResponseFile.ll
scalable-vector-struct-intrinsic.ll
scalable-vectors-core-ir.ll
scc-deleted-printer.ll
scc-pass-printer.ll
spir_cc.ll
statistic.ll
time-passes.ll [Coroutines] Add verifier checks for llvm.coro.begin and llvm.coro.id (#192887) 2026-04-21 16:53:00 +08:00
trigger-crash-flags.ll Reland [LLVM] Add flags to crash the opt/codegen pipeline (#201146) 2026-06-02 16:43:24 +00:00
trigger-verifier-error.ll
unroll-sroa.ll
writing-to-stdout.ll