Skip to content

Lower aten.cumsum in TorchToLinalg#4566

Open
KyleHerndon wants to merge 1 commit intollvm:mainfrom
KyleHerndon:kh/lower-cumsum-to-linalg
Open

Lower aten.cumsum in TorchToLinalg#4566
KyleHerndon wants to merge 1 commit intollvm:mainfrom
KyleHerndon:kh/lower-cumsum-to-linalg

Conversation

@KyleHerndon
Copy link
Copy Markdown
Contributor

This adds a TorchToLinalg lowering for statically-shaped torch.aten.cumsum and marks AtenCumsumOp illegal in the conversion target so the conversion framework must rewrite it even when its only consumer is a cross-dialect materialization such as torch_c.to_builtin_tensor.

The lowering reshapes the input to [outer, scan, inner], performs an inclusive scan using tensor.pad, tensor.extract_slice, and linalg.generic, then reshapes back to the result type. A regression test covers the case where torch_c.to_builtin_tensor is the only user.

Verification:

  • clang-format
  • git diff --check

Local FileCheck execution was not available in this fresh checkout because CMake configuration is blocked by missing nanobind / Python module target setup.

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