There is a newer version of the record available.

Published October 24, 2025 | Version v0.54.2

xdslproject/xdsl: v0.54.2

Description

Two important changes in this release: early stages of adding analyses from MLIR by @jumerckx, and removing JAX as an optional dependency.

This release also fixes Python 3.14 compatibility and adds it to our CI.

Changes

xDSL framework

  • core: Check irdl_options only contains IRDLOptions @dk949 (#5343)
  • core: add stubs for SymbolTable and SymbolTableCollection @superlopuh (#5384)
  • core: add walk_symbol_table helper @superlopuh (#5383)
  • core: split dialect interfaces into own files @superlopuh (#5381)
  • core: add simplification of AffineExpr (no modulo or division) @superlopuh (#5353)
  • core: (analysis) add SparseForwardDataflowAnalysis @jumerckx (#5368)
  • core: (analysis) Allow ModuleOp in DCA visit method @jumerckx (#5369)
  • core: (analysis ) add Lattice @jumerckx (#5367)
  • core: (analysis) add AbstractLatticeValue and SparseLatticeSubscriberBase @jumerckx (#5362)
  • core: (analysis) add DeadCodeAnalysis @jumerckx (#5361)
  • core: (analysis) add PredecessorState for dead code analysis @jumerckx (#5360)
  • core: (analysis) add Executable AnalysisState for dead code analysis @jumerckx (#5359)
  • core: (analysis) add DataFlowAnalysis @jumerckx (#5358)
  • core: (analysis) add DataFlowSolver @jumerckx (#5357)
  • core: (analysis) add AnalysisState @jumerckx (#5356)
  • core: (analysis) add ProgramPoint @jumerckx (#5355)
  • core: (analysis) add GenericLatticeAnchor @jumerckx (#5354)
  • core: (Analysis) add ChangeResult @jumerckx (#5352)
  • core: ReturnLike OpTrait @jumerckx (#5350)
  • core: (folder) check for HasFolder trait instead of HasFolderInterface @jumerckx (#5349)
  • core: add AffineExpr.from_flat_form @superlopuh (#5338)

Dialects

  • dialects: (x86) constraint rflags operand and result to rflags @superlopuh (#5398)
  • dialects [x86]: add AVX512 mask register type @emmau678 (#5392)
  • dialects: (llvm) Allow arithmetic operations to accept vector types @hpooja1599 (#5387)
  • dialects: (builtin) Fix printer for FloatData @ed741 (#5389)
  • dialects: (builtin) accept Iterable of Operation in ModuleOp init @superlopuh (#5382)
  • dialects: (vector) Add vector.BitcastOp @jakedves (#5366)
  • dialects: (x86) add fma ops with memory operand @emmau678 (#5363)
  • dialects: (Vector) disallow 0d extraction/insertion @alexarice (#5364)

Transformations

  • transformations: (apply-eqsat-pdl-interp) add is_not_unsound constraint function @jumerckx (#5390)
  • transformations: (convert-x86-scf-to-x86) copy name hints in lowering @superlopuh (#5394)
  • transformations: (convert_pdl_to_pdl_interp) add _generate_rewriter_for_apply_native_rewrite and _generate_rewriter_for_attribute @jumerckx (#5385)
  • transformations: (convert-pdl-to-pdl-interp) add generate_switch_node @jumerckx (#5375)
  • transformations: (convert-pdl-to-pdl-interp) add generate_matcher @jumerckx (#5374)
  • transformations: (convert-pdl-to-pdl-interp) add generate_bool_node @jumerckx (#5371)
  • transformations: (apply-eqsat-pdl-interp) Support folding @jumerckx (#5340)
  • transformations: (convert-pdl-to-pdl-interp) add get_value_at @jumerckx (#5346)

Interpreter

  • interpreter: (pdl_interp) use interpreter state for PatternRewriter @superlopuh (#5400)
  • interpreter: (pdl_interp) use interpreter state for Context @superlopuh (#5399)

πŸ—Ž Documentation

  • documentation: (Toy) use CallableOpInterface when inlining @superlopuh (#5380)
  • documentation: (Toy) use SymbolOpInterface in inliner @superlopuh (#5378)

πŸ› Bug Fixes

  • dialects: (builtin) Fix printer for FloatData @ed741 (#5389)

Continuous Integration

  • CI: collect code coverage for 3.13 instead of 3.10 @superlopuh (#5404)

Installation

  • dependencies: update pre-commit hook astral-sh/ruff-pre-commit to v0.14.2 @renovate[bot] (#5402)
  • dependencies: update dependency ruff to v0.14.2 @renovate[bot] (#5401)
  • dependencies: lock file maintenance @renovate[bot] (#5388)
  • installation: Fix pylint compatibility @ed741 (#5379)
  • dependencies: update dependency ruff to v0.14.1 @renovate[bot] (#5376)
  • dependencies: update pre-commit hook astral-sh/ruff-pre-commit to v0.14.1 @renovate[bot] (#5377)
  • dependencies: update dependency marimo to v0.17.0 @renovate[bot] (#5370)
  • dependencies: (jax) remove jax optional dependency @superlopuh (#5334)
  • dependencies: lock file maintenance @renovate[bot] (#5348)

Miscellaneous

  • core: Check irdl_options only contains IRDLOptions @dk949 (#5343)
  • misc: (RangeConstaint) add verifies @alexarice (#5397)
  • core: (analysis) Allow ModuleOp in DCA visit method @jumerckx (#5369)

Files

xdslproject/xdsl-v0.54.2.zip

Files (4.4 MB)

Name Size Download all
md5:14eacc2fb01071d5171cb55a94af8c51
4.4 MB Preview Download

Additional details

Related works

Software