Skip to content
This repository was archived by the owner on Mar 17, 2026. It is now read-only.

pre-commit: PR165975 - #3522

Closed
zyw-bot wants to merge 3 commits into
mainfrom
test-run22537638187
Closed

pre-commit: PR165975#3522
zyw-bot wants to merge 3 commits into
mainfrom
test-run22537638187

Conversation

@zyw-bot

@zyw-bot zyw-bot commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator

Link: llvm/llvm-project#165975
Requested by: @dtcxzyw

@github-actions github-actions Bot mentioned this pull request Mar 1, 2026
@zyw-bot

zyw-bot commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator Author

Diff mode

runner: ariselab-64c-docker
baseline: llvm/llvm-project@c35a726
patch: llvm/llvm-project#165975
sha256: 816126057ae146f737a6d2c8085ac0dc931e86178e96175da6ddd200f6ee2dd8
commit: 52ebb98

219 files changed, 80863 insertions(+), 80998 deletions(-)

Improvements:
  bdce.NumSimplified 5815 -> 5816 +0.02%
  instcount.NumAndInst 3015055 -> 3015165 +0.00%
  correlated-value-propagation.NumShlNUW 152313 -> 152315 +0.00%
  correlated-value-propagation.NumShlNW 268748 -> 268751 +0.00%
  correlated-value-propagation.NumShlNSW 116435 -> 116436 +0.00%
  instcount.NumOrInst 1142721 -> 1142729 +0.00%
  instcombine.NumConstProp 155104 -> 155105 +0.00%
  bdce.NumRemoved 378277 -> 378279 +0.00%
  instcount.NumSubInst 1915033 -> 1915040 +0.00%
  early-cse.NumCSE 5181730 -> 5181745 +0.00%
Regressions:
  indvars.NumSameSign 40231 -> 40226 -0.01%
  instcount.NumShlInst 1394829 -> 1394676 -0.01%
  correlated-value-propagation.NumAddNSW 215589 -> 215567 -0.01%
  instsimplify.NumExpand 291246 -> 291219 -0.01%
  correlated-value-propagation.NumAddNW 426447 -> 426421 -0.01%
  instcombine.NumDeadInst 40959700 -> 40957453 -0.01%
  instcount.NumLShrInst 1229089 -> 1229027 -0.01%
  correlated-value-propagation.NumNSW 564262 -> 564241 -0.00%
  instcombine.NumReassoc 277247 -> 277238 -0.00%
  instsimplify.NumReassoc 813651 -> 813630 -0.00%

+3 wasmtime-rs/4bsmuvpz9r22ks1w.ll
+2 eastl/EACallback.ll
+1 bdwgc/gc.ll
+1 duckdb/ub_duckdb_storage_compression_dictionary.ll
+1 harfbuzz/hb-ot-cff1-table.ll
+1 harfbuzz/hb-subset-plan.ll
+1 hermes/HadesGC.ll
+1 lean4/ByteArray.ll
+1 openjdk/hb-ot-cff1-table.ll
+1 openjdk/hb-ot-cff2-table.ll
+1 openjdk/hb-ot-font.ll
+1 postgres/spell.ll
+1 rocksdb/memtable.ll
+0 abc/amapUniq.ll
+0 abc/mapperTree.ll
+0 abc/satSolver.ll
+0 bullet3/btDeformableBodySolver.ll
+0 c3c/semantic_analyser.ll
+0 cmake/System.ll
+0 cmake/cmJSONState.ll
+0 darktable/FujiDecompressor.ll
+0 darktable/aspect_ratio.ll
+0 folly/Benchmark.ll
+0 folly/EventBase.ll
+0 folly/EventBaseLocal.ll
+0 folly/ThreadedExecutor.ll
+0 graphviz/emit.ll
+0 graphviz/node.ll
+0 image-rs/4srzh4wujeew249y.ll
+0 libigl/intersect_other.ll
+0 libigl/projected_cdt.ll
+0 opencv/gfluidimgproc_func.dispatch.ll
+0 opencv/stereosgbm.ll
+0 openssl/kmac_prov.ll
+0 openssl/wrap128.ll
+0 postgres/slru.ll
+0 proxygen/HTTP2PriorityQueue.ll
+0 proxygen/HTTPSession.ll
+0 ruby/hash.ll
+0 wireshark/packet-dcerpc-netlogon.ll
-1 icu/ucnv_bld.ll
-1 libwebp/lossless_sse2.ll
-1 linux/tree.ll
-1 linux/xstate.ll
-1 llvm/InstructionCombining.ll
-1 llvm/StatepointLowering.ll
-1 luau/IrRegAllocX64.ll
-1 sdl/SDL_sysjoystick.ll
-1 wasmtime-rs/1bz8ofzmdclmzhoz.ll
-2 ffmpeg/cavs.ll
-2 ffmpeg/dvbsubdec.ll
-2 ffmpeg/mobiclip.ll
-2 libquic/stack.ll
-2 openspiel/dynamic_routing.ll
-2 openspiel/spiel.ll
-3 linux/intel_vdsc.ll
-3 llvm/ScaledNumber.ll
-3 pbrt-v4/color.ll
-3 postgres/gram.ll
-4 ffmpeg/webp.ll
-5 ruff-rs/9ezhgv3vaoku7b96fwwr4f701.ll
-7 libphonenumber/geocoding_data_test.ll
-7 openspiel/best_response.ll
-8 abc/mpmPre.ll
-8 darktable/ArwDecoder.ll
-9 libphonenumber/generate_geocoding_data.ll

@github-actions

github-actions Bot commented Mar 1, 2026

Copy link
Copy Markdown
Contributor

Here is a concise summary of the major changes in this LLVM IR diff:

  1. Reordering of bit manipulation operations: In multiple files (e.g., amapUniq.ll, mapperTree.ll, satSolver.ll, folly/*.ll), sequences of and, shr, and add operations were reordered — typically moving and after arithmetic or combining shifts with masks — preserving semantics while improving instruction scheduling or enabling later optimizations.

  2. Refinement of pointer arithmetic and memory alignment logic: Several benchmarks (cmake/System.ll, eastl/EACallback.ll, bdwgc/gc.ll, duckdb/...ll) replaced naive pointer subtraction/addition with explicit masking (e.g., and i64 ..., -8 or -16) to compute aligned offsets, improving safety and clarity of buffer size calculations and memmove/memcpy bounds.

  3. Fixes and simplifications in phi node operand matching: Across many files (mpmPre.ll, graphviz/emit.ll, libphonenumber/...ll, llvm/InstructionCombining.ll), phi node incoming value blocks were corrected to reference the actual predecessor basic blocks, not stale or mislabeled ones (e.g., %20%19, %98%97). This ensures correct SSA form and dataflow.

  4. Optimization of color/alpha channel arithmetic: In image-processing code (dvbsubdec.ll, image-rs/...ll, webp.ll, libwebp/lossless_sse2.ll), RGB/ARGB bitfield extraction and blending was restructured — e.g., replacing lshr + and pairs with direct and-then-add patterns — to reduce instruction count and better expose vectorization opportunities (notably shifting from /2 to /4 in averaging).

  5. Cleanup of dead or redundant control flow: Several functions (aspect_ratio.ll, harfbuzz/...ll, icu/ucnv_bld.ll) removed unnecessary basic blocks (e.g., 132:, 154:), merged switch cases, or simplified conditionals (e.g., replacing icmp ult with icmp eq after masking), reducing CFG complexity without altering behavior.

These changes reflect ongoing compiler-driven optimization passes (e.g., InstCombine, SimplifyCFG, LoopVectorizer) and manual tuning for correctness, performance, and maintainability — especially around low-level bit manipulation, memory layout, and SSA integrity.

model: qwen-plus-latest
CompletionUsage(completion_tokens=531, prompt_tokens=119999, total_tokens=120530, completion_tokens_details=None, prompt_tokens_details=None)

@dtcxzyw dtcxzyw closed this Mar 1, 2026
@dtcxzyw
dtcxzyw deleted the test-run22537638187 branch March 1, 2026 09:24
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants