Skip to content

[compiler] support schedule_bank/vgpr/apgr/sgpr - #1296

Open
jli-melchior wants to merge 5 commits into
mainfrom
jli/schedule-bank-upstream-oldllvm-waitalu-schedule-gpr
Open

jli-melchior wants to merge 5 commits into
mainfrom
jli/schedule-bank-upstream-oldllvm-waitalu-schedule-gpr

Conversation

@jli-melchior

Copy link
Copy Markdown
Collaborator

Motivation

Technical Details

Test Plan

Test Result

Submission Checklist

- Add --source flag to build_llvm.sh supporting custom LLVM branch entries
  from llvm-build-info.json (default: custom-upstream-old-vavdst-schedule-gpr).
  When source is "upstream", existing patch/extension system is used.
  Custom entries fetch from their own repo/branch and skip patching.
- Add custom-upstream-old-vavdst-schedule-gpr entry to llvm-build-info.json
  pointing to the LLVM branch with schedule_bank + va_vdst + schedule_gpr.
- Add schedule_bank, schedule_vgpr, schedule_sgpr, schedule_agpr Python DSL
  wrappers to flydsl.expr.rocdl for VGPR bank and exact-register hints.
- Add unit tests for all four schedule hint APIs.

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
@jli-melchior
jli-melchior force-pushed the jli/schedule-bank-upstream-oldllvm-waitalu-schedule-gpr branch 2 times, most recently from f9b1979 to 6078681 Compare October 15, 2026 02:42
Custom LLVM sources now use the same directory layout as upstream
(llvm-project/, build-flydsl/, mlir_install/) so CI workflows don't
need path adjustments.

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
jli-melchior and others added 3 commits October 16, 2026 14:10
Custom LLVM branches were skipping all patches, but required_patches
(waves_per_eu StringAttr, lld argv[0]) fix MLIR/ROCDL bugs the branch
may not include. This caused a segfault in translate_module_to_llvmir
when rocdl.waves_per_eu was a StringAttr instead of IntegerAttr.

Co-Authored-By: Claude <noreply@anthropic.com>
The upstream/custom branch split indented LLVM_PATCH_LIST and the apply
section under `if [[ "$LLVM_SOURCE" == "upstream" ]]`. Fix the test
helpers: use lstrip() for line matching and set LLVM_SOURCE="upstream"
so the extracted section runs the upstream code path.

Co-Authored-By: Claude <noreply@anthropic.com>

This branch was successfully deployed

1 active (outdated) deployment
pypi — a32ced99 Deployed Oct 15, 2026 by jli-melchior via publish #132
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.

1 participant