There is a newer version of the record available.

Published May 9, 2025 | Version v0.37.0

xdslproject/xdsl: v0.37.0

Description

Another productive week! There has been some activity making register allocation more general, moving towards allocating registers for x86 and ARM dialects, some equality saturation work, and first steps towards being able to store complex types in dense arrays, as well as some small quality of life improvements in the APIs.

Note that this release removed a number of functions that have been deprecated for over three months, and added some new deprecations.

xDSL framework

  • dialects: (builtin) Make ComplexType inherit from Generic and ContainerType. @erick-xanadu (#4352)
  • core: Add notify_op_modified to the PatternRewriter @math-fehr (#4348)
  • core: only pass constraints to isattr @superlopuh (#4336)
  • core: Separate attributes and types in the context @math-fehr (#4330)
  • core: Add nicer error messages for RangeOf @math-fehr (#4332)
  • core: (constraints) remove variance on get_variable_extractors @alexarice (#4322)
  • formatting: github merge error @alexarice (#4328)
  • core: Create BuiltinAttribute class @math-fehr (#4303)

Dialects

  • dialects: (builtin) Make ComplexType inherit from PackableType @erick-xanadu (#4353)
  • dialects: (builtin) fix deprecated vector_from_list @alexarice (#4365)
  • dialects: (builtin) stricten create_dense_float typing @alexarice (#4361)
  • dialects (arm): Add dup instruction @emmau678 (#4357)
  • dialects: (builtin) deprecate vector_from_list @alexarice (#4360)
  • dialects: (cf) simplify switch's use of DenseIntElementAttr @alexarice (#4359)
  • dialects: (builtin) deprecate create_dense_index @alexarice (#4358)
  • dialects: (builtin) Make ComplexType inherit from Generic and ContainerType. @erick-xanadu (#4352)
  • dialects: (builtin) move check to DenseElement verify @alexarice (#4356)
  • dialects: (memref) Add nontemporal default value. @milos1397 (#4346)
  • dialects: (riscv) canonicalization pattern added (x / 1 β†’ x) @milos1397 (#4338)
  • dialects (arm): add destination reg as operand to fmla instruction @emmau678 (#4184)
  • dialects: (vector) Add nontemporal to vector.load and vector.store @milos1397 (#4344)
  • dialects: (transform) add assembly format for apply_registered_pass @efferifick (#4307)
  • dialects: (ptr) add inits to ptr dialect @superlopuh (#4340)
  • dialects: (ptr) add canonicalization patterns to remove to/from ptr @superlopuh (#4339)
  • dialects: (ptr) add FromPtrOp @superlopuh (#4334)
  • dialects: (builtin) remove TensorOrMemRefConstraint @alexarice (#4321)
  • dialects: (arith) move float binary ops to assembly format @alexarice (#4323)
  • dialects: (arith) fix negf @alexarice (#4324)
  • dialects: (arith) move select to assembly format @alexarice (#4325)

Transformations

  • transformations: (convert-memref-to-ptr) use to/from ptr ops for casts @superlopuh (#4342)
  • transformations: (convert-ptr-to-llvm) Add conversions for ConvertToPtrOp and ConvertFromPtrOp @kaylendog (#4355)
  • transformations: (pdl_interp) Add pdl-interp-apply pass @jumerckx (#4279)
  • transformations: vector load to ptr @qaco (#4192)
  • transformations: (convert-ptr-to-llvm) Enable recursive type rewriting @kaylendog (#4354)

Backend

  • backend: (riscv) use RegisterAllocationOperation for snitch reserved registers @superlopuh (#4335)
  • backend: add RegisterAllocatableOperation abstract base class @superlopuh (#4318)
  • backend: ptr load to x86 @qaco (#4304)

Interpreter

  • interpreter: (pdl_interp) Change rewriter check in run_create_operation @jumerckx (#4287)

πŸ—Ž Documentation

  • documentation: Rename traversal example function to @sum_of_squares for clarity @RepoBirdBot (#4319)

Testing

  • testing: add unregistered dialect flag to new test @superlopuh (#4347)

Installation

  • dependencies: update pre-commit hook astral-sh/ruff-pre-commit to v0.11.9 @renovate[bot] (#4369)
  • dependencies: update dependency ruff to v0.11.9 @renovate[bot] (#4368)
  • dependencies: update dependency filecheck to v1.0.2 @renovate[bot] (#4337)
  • dependencies: update dependency marimo to v0.13.6 @renovate[bot] (#4333)

Miscellaneous

  • misc: remove APIs deprecated more than three months ago @superlopuh (#4370)
  • dialects: (builtin) fix deprecated vector_from_list @alexarice (#4365)

Files

xdslproject/xdsl-v0.37.0.zip

Files (1.9 MB)

Name Size Download all
md5:e946195404d118a7007317184ad45b1c
1.9 MB Preview Download

Additional details

Related works

Software