Skip to content

pre-commit: PR165975#3508

Open
zyw-bot wants to merge 3 commits intomainfrom
test-run22409783069
Open

pre-commit: PR165975#3508
zyw-bot wants to merge 3 commits intomainfrom
test-run22409783069

Conversation

@zyw-bot
Copy link
Collaborator

@zyw-bot zyw-bot commented Feb 25, 2026

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

@github-actions github-actions bot mentioned this pull request Feb 25, 2026
@zyw-bot
Copy link
Collaborator Author

zyw-bot commented Feb 25, 2026

Diff mode

runner: ariselab-64c-docker
baseline: llvm/llvm-project@4fec4df
patch: llvm/llvm-project#165975
sha256: ba27e5a8a37a29bce397b496f264c7eb01528b58ccc0804d05e272fc7449dc9a
commit: 6feb969

220 files changed, 81387 insertions(+), 81523 deletions(-)

Improvements:
  bdce.NumSimplified 5815 -> 5816 +0.02%
  instcount.NumAndInst 3015051 -> 3015161 +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 1142732 -> 1142740 +0.00%
  instcombine.NumConstProp 155104 -> 155105 +0.00%
  bdce.NumRemoved 378277 -> 378279 +0.00%
  instcount.NumSubInst 1915033 -> 1915040 +0.00%
  early-cse.NumCSE 5181736 -> 5181751 +0.00%
Regressions:
  indvars.NumSameSign 40231 -> 40226 -0.01%
  instcount.NumShlInst 1394831 -> 1394677 -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 40958176 -> 40955930 -0.01%
  instcount.NumLShrInst 1229093 -> 1229031 -0.01%
  correlated-value-propagation.NumNSW 564262 -> 564241 -0.00%
  instcombine.NumReassoc 277246 -> 277237 -0.00%
  instsimplify.NumReassoc 813650 -> 813629 -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
Copy link
Contributor

Here's a concise summary of the major changes in the patch:

  1. Reordered Bitwise Operations: In multiple files (amapUniq.ll, mapperTree.ll, satSolver.ll, F14Table-related files), sequences of and, add, and or disjoint operations were reordered—typically moving an and operation later in the chain and adjusting operand order in add/or instructions. This preserves semantics but reflects instruction reordering (e.g., and A, M; add B, Cadd B, C; and result, M).

  2. Shift/Scale Constant Adjustments: Several arithmetic sequences were optimized by replacing shift-and-add patterns with direct multiplies or adjusted shifts—for example, lshr i16 ..., 1lshr ..., 2 in cavs.ll and webp.ll, and shl ..., 3; add ..., -8and ..., -8; add ..., -8 in eastl.ll and cmake/System.ll. These reflect strength reduction or alignment-aware offset computation.

  3. Phi Node Operand Updates: Across many files (mpmPre.ll, cmJSONState.ll, darktable/*.ll, harfbuzz/*.ll, libphonenumber/*.ll, etc.), phi node incoming value blocks were updated to match new control-flow edge labels (e.g., %295%291), indicating CFG restructuring—likely due to loop rotation, sinking, or block merging.

  4. Masking and Alignment Fixes: Several memory-related computations now use and i64 ..., -N (e.g., -8, -16, -256, -4294967296) to compute aligned offsets instead of subtracting and masking manually (e.g., sub ..., 8; and ..., -8). This appears in cmake/System.ll, bdwgc/gc.ll, eastl/EACallback.ll, and graphviz/emit.ll, suggesting improved alignment handling.

  5. Constant Folding & Bitfield Logic Simplification: In mpmPre.ll, bit extraction via lshr + and was replaced with direct and with a mask (e.g., lshr ..., 24; and ..., 31and ..., 520093696), and similar replacements occurred for other bitfield masks (e.g., 16515072). This indicates aggressive constant propagation and bitfield optimization.

The changes are consistent with backend optimizations—particularly instruction combining, alignment-aware addressing, phi cleanup after CFG changes, and bit manipulation simplifications—without altering program semantics.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants