Skip to content

[WIP] Remove padded-WMMA-operand zero fills to free the VALU for coexec#3376

Open
VigneshwarJ wants to merge 2 commits into
amd-stagingfrom
wmma-pad-canon-hoist
Open

[WIP] Remove padded-WMMA-operand zero fills to free the VALU for coexec#3376
VigneshwarJ wants to merge 2 commits into
amd-stagingfrom
wmma-pad-canon-hoist

Conversation

@VigneshwarJ

Copy link
Copy Markdown

This is for PSDB test

VigneshwarJ and others added 2 commits July 14, 2026 11:40
…izer

In AMDGPULateCodeGenPrepare, rewrite a shufflevector constant operand whose
lanes are only poison and zero into a full zeroinitializer. For padded WMMA
operands (K<instr-K data padded to the instruction K with a <poison..., 0.0...>
constant), this lets ISel materialize a single uniform, dual-issuable zero
instead of per-lane fills for the poison lanes, freeing the VALU to co-execute
with the WMMA pipe on gfx1250.

Guarded by -amdgpu-late-codegenprepare-canon-pad-zero (default on).
… copies

Post-RA pass that hoists loop-invariant SGPR->VGPR V_MOVs (sole in-loop
definition and preheader-clean) into the loop preheader, and deletes provably
dead fills (destination fully overwritten before any use in the loop). Removes
the per-iteration zero-fill moves for padded WMMA operands from the loop body.

Guarded by -amdgpu-enable-sgpr-copy-opt (default on).

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant