Skip to content

[Chore] Remove unreachable legacy expr/rocdl.py#677

Merged
coderfeli merged 2 commits into
mainfrom
chore/remove-legacy-rocdl-py
Jun 15, 2026
Merged

[Chore] Remove unreachable legacy expr/rocdl.py#677
coderfeli merged 2 commits into
mainfrom
chore/remove-legacy-rocdl-py

Conversation

@sjfeng1999

Copy link
Copy Markdown
Collaborator

The expr/rocdl/ package shadows the same-named expr/rocdl.py: CPython resolves a regular package over a same-named module, so flydsl.expr.rocdl (and every import form / the _LAZY_MODULES alias) always binds to expr/rocdl/__init__.py. rocdl.py is therefore dead code, reachable only via explicit file-path loading, and carried a hand-maintained mirroring burden against the package.

Remove the file and update the docs/skills that pointed at it to the expr/rocdl/ package (MFMA/WMMA wrappers live in expr/rocdl/universal.py).

Verified: no code or build config references it; the package exposes a superset of its public symbols; physically removing the built copy keeps all imports working and the compile-tier unit suite green (287 passed).

Motivation

Technical Details

Test Plan

Test Result

Submission Checklist

The `expr/rocdl/` package shadows the same-named `expr/rocdl.py`: CPython
resolves a regular package over a same-named module, so `flydsl.expr.rocdl`
(and every import form / the `_LAZY_MODULES` alias) always binds to
`expr/rocdl/__init__.py`. `rocdl.py` is therefore dead code, reachable only
via explicit file-path loading, and carried a hand-maintained mirroring
burden against the package.

Remove the file and update the docs/skills that pointed at it to the
`expr/rocdl/` package (MFMA/WMMA wrappers live in `expr/rocdl/universal.py`).

Verified: no code or build config references it; the package exposes a
superset of its public symbols; physically removing the built copy keeps all
imports working and the compile-tier unit suite green (287 passed).

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes the unreachable legacy python/flydsl/expr/rocdl.py module (shadowed by the python/flydsl/expr/rocdl/ package) and updates documentation/skills references to point at the package-based ROCDL intrinsics location.

Changes:

  • Delete python/flydsl/expr/rocdl.py, relying solely on python/flydsl/expr/rocdl/ for ROCDL intrinsics and wrappers.
  • Update docs to reference python/flydsl/expr/rocdl/ (including MFMA/WMMA, buffer, TDM, cluster utilities).
  • Update Claude skill docs/guidance to refer to package modules (e.g., expr/rocdl/universal.py) instead of the legacy module.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
python/flydsl/expr/rocdl.py Removes dead/shadowed legacy ROCDL module implementation.
docs/kernel_authoring_guide.md Updates the “Source Files” reference from expr/rocdl.py to the expr/rocdl/ package.
docs/architecture_guide.md Updates the repo tree to show expr/rocdl/ as the ROCDL intrinsics location.
CLAUDE.md Updates repo layout and kernel-authoring conventions to describe expr/rocdl/ as the canonical package.
.claude/skills/flydsl-kernel-authoring/SKILL.md Updates skill references to the expr/rocdl/ package.
.claude/skills/add-target-atom-op/SKILL.md Updates instructions to place new wrappers in expr/rocdl/universal.py instead of the removed module.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@coderfeli coderfeli merged commit f9feacf into main Jun 15, 2026
17 of 18 checks passed
@coderfeli coderfeli deleted the chore/remove-legacy-rocdl-py branch June 15, 2026 11:13
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.

3 participants