There is a newer version of the record available.

Published September 2, 2024 | Version v0.22.0
Software Open

xdslproject/xdsl: v0.22.0

Description

xDSL framework

  • core: Assembly format shouldn't require $*SegmentSizes @alexarice (#3123)
  • core: Add successors to assembly format @alexarice (#3124)
  • core: (irdl) Add support for regions in optional groups to declarative assembly format @kimxworrall (#3106)
  • core: Implement speculability trait and helper. @PapyChacal (#3102)
  • frontend: (stablehlo) add ir generation from jaxpr @shreya-um (#3038)
  • core: Implement IRDL SameSize options @PapyChacal (#3067)
  • rewriting: Make modify_block_argument_type modify_value_type @PapyChacal (#3045)
  • transformations: Implement shape-inference pass @PapyChacal (#3047)
  • core: Improved treatment of whitespace in assembly format @alexarice (#3044)
  • core: CanonicaliZation naming consistency @PapyChacal (#3040)
  • core: helpers for IRDL construct type access. @PapyChacal (#3025)
  • core: Implement simple helpers for construct type access. @PapyChacal (#3024)
  • core: implement EffectInstance @PapyChacal (#2987)
  • (core) Support UnitAttr in assembly format @n-io (#2995)
  • core: (irdl) Add regions to declarative assembly format @kimxworrall (#3065)
  • core: Add BitEnumAttribute @zero9178 (#2617)
  • core: (affine) override python floordiv symbol @jorendumoulin (#2942)

Dialects

  • dialects: (csl) added csl.addressof_fn @dk949 (#3135)
  • dialects: Add NoMemoryEffect trait in various LLVM and builtin ops @JosseVanDelm (#3127)
  • dialects: (riscv) canonize x ^ x = 0 @mamanain (#3121)
  • dialects: (stim) initialise dialect @kimxworrall (#3042)
  • dialects: (stablehlo) add stablehlo.dot @superlopuh (#3090)
  • dialects: (stablehlo) add stablehlo.after_all @efferifick (#3104)
  • dialects: (stablehlo) add stablehlo.case @efferifick (#3095)
  • dialects: (stablehlo) add stablehlo.bitcast_convert @efferifick (#3100)
  • dialects: (transform) Fix amount of returned loops in TileOp @JonasCrols (#3080)
  • dialects: (stablehlo) add stablehlo.token @efferifick (#3093)
  • dialects: (stablehlo) add stablehlo.precision @superlopuh (#3089)
  • dialects: (stablehlo) Add support for returnOp @efferifick (#3085)
  • dialects: (transform) Add structured match operation @JonasCrols (#3079)
  • dialects: (stablehlo) Add support for andOp @efferifick (#3081)
  • dialects: stencil: Allow loading and storing from a same field. @PapyChacal (#3071)
  • dialects: Update dialects with SameSize IRDL options. @PapyChacal (#3070)
  • dialects: Update tensor side-effect traits @n-io (#3069)
  • transformations: Enable dmp.swap stencil bufferization. @PapyChacal (#3066)
  • dialects: Update dmp.swap @PapyChacal (#3056)
  • transformations: Decouple distribute-stencil from shape-inference @PapyChacal (#3054)
  • dialects: dmp: make strategies attributes and carry them in IR @PapyChacal (#3050)
  • dialects: (Transform) Add new selecting operations @JonasCrols (#3015)
  • dialect: (irdl) Add region and attributes operations @alexarice (#3049)
  • dialects: (stablehlo) add transpose @superlopuh (#3031)
  • dialects: (irdl) Update for mlir compatibility @alexarice (#3002)
  • dialects: (stablehlo) add elementwise add, sub, mul @superlopuh (#3030)
  • dialects: (stablehlo) Add initial contribution for stablehlo dialect @efferifick (#3020)
  • dialects: (csl_stencil) Enable bufferized csl_stencil.apply @n-io (#2994)
  • dialects: (riscv_snitch) add vfmax.s @superlopuh (#2988)
  • dialects: Add stencil features meant for bufferization @PapyChacal (#2985)
  • dialects: Enable bufferized stencil.apply @PapyChacal (#2982)
  • dialects: (tensor) Incorrect default 'dynamic index' on insert_slice op @n-io (#2974)
  • dialects: (arith, core) Constant op to accept tensor and memref @n-io (#2969)
  • (bug): linalg named ops to include hidden regions in generic print @n-io (#2957)
  • (dialects): improving stencil attr syntax mlir compatibility @n-io (#2947)
  • dialects: (scf) Add parse/print to scf.if @alexarice (#3126)
  • dialects: (vector) add pure trait to vector.broadcast and vector.fma @knickish (#3094)
  • dialects: (bufferization) Add to_memref op @n-io (#2996)
  • dialects: (linalg) Add Quantized Matmul @JonasCrols (#2999)
  • dialects: (stencil) Relax stencil.return for tensors @n-io (#2989)
  • dialects: (transform) Add some transform dialect operations @JonasCrols (#2973)
  • dialects: (tensor) add tensor.dim and tensor.cast op @jorendumoulin (#2968)
  • dialects: (linalg) add correct generic printing for fill, and matmul @jorendumoulin (#2971)
  • transforms: (memref_stream) add missing doc and library call in generic constructors @jorendumoulin (#2941)

Transformations

  • transformations: (stencil-tensorize-z-dim) Support loops @n-io (#3118)
  • transforms: Fix constant pinning breaking for external functions @AntonLydike (#3131)
  • bug: (csl-stencil-to-csl-wrapper) Reverse generated operands @n-io (#3112)
  • transformations: (csl-stencil-to-csl-wrapper) Generate symbol export and no memref.globals @n-io (#3101)
  • transformations: Translate memref to dsd @n-io (#3092)
  • transformations: Support safe inplace stencil bufferization. @PapyChacal (#3077)
  • transformations: Implement control-flow-hoist @PapyChacal (#3103)
  • transformations: (csl-stencil-to-csl-wrapper) Support reading properties from bufferized csl-stencil @n-io (#3083)
  • transformations: (csl-stencil-bufferize) Fold csl_stencil.access that have no effect @n-io (#3084)
  • transformations: stencil-bufferize side-effect analysis fix @PapyChacal (#3076)
  • dialects: stencil: Allow loading and storing from a same field. @PapyChacal (#3071)
  • transformations: Enable bufferized dmp.swap lowering. @PapyChacal (#3073)
  • transformations: Forgotten xdsl/transforms/shape_inference_patterns/init.py @PapyChacal (#3072)
  • transformations: (stencil-to-csl-stencil) Support also bufferized dmp.swap @n-io (#3068)
  • transformations: Enable dmp.swap stencil bufferization. @PapyChacal (#3066)
  • transformations: Tensorize new result of dmp.swap @n-io (#3063)
  • dialects: Update dmp.swap @PapyChacal (#3056)
  • transformations: Decouple distribute-stencil from shape-inference @PapyChacal (#3054)
  • dialects: dmp: make strategies attributes and carry them in IR @PapyChacal (#3050)
  • transformations: (csl-stencil-to-csl-wrapper) Translate func args to exportable memref.global @n-io (#3051)
  • transformations: update stencil lowering to properly accomodate bufferized stencils. @PapyChacal (#3016)
  • transformations: Implement shape-inference pass @PapyChacal (#3047)
  • transformations: stencil shape inference polish @PapyChacal (#3046)
  • transformations: stencil bufferization polish @PapyChacal (#3001)
  • transformations: Add linalg-to-csl pass @n-io (#3028)
  • transformations: (csl-stencil-bufferize) Inject iter_arg into linalg compute @n-io (#3033)
  • transformations: (csl_stencil) Add bufferization pass @n-io (#3004)
  • transformations: First implementation of stencil-bufferize @PapyChacal (#2983)
  • transformations: Enable bufferized stencil lowering. @PapyChacal (#2984)
  • transformations: (stencil-tensorize-z-dim) Scaling z-shifts to avoid negative offsets @n-io (#2975)
  • transform: (stencil-tensorize-z-dimension) Tensorize arith.constant directly @n-io (#2970)
  • transformations: lift arith to linalg named ops @n-io (#2963)
  • (transforms): dont have tensor inside memref @n-io (#2962)
  • (transform): csl_wrapper program module init @n-io (#2891)
  • (transform): csl_stencil canonicalization pass @n-io (#2814)
  • transformations: (memref_stream) add memref_stream.generic legalization pass @nazavode (#2929)

Backend

  • fix: Param names were not correctly referenced in the printer @dk949 (#3108)
  • backend: (riscv) print list of registers to regalloc stats @superlopuh (#3111)
  • backend: (JAX) add some syntax sugar for typed compiled functions @superlopuh (#3058)
  • backend: (JAX) add export to JAX executable @superlopuh (#3057)
  • backend: (riscv) fix register allocation stats @superlopuh (#2961)
  • backend: (riscv) add option to insert regalloc stats @superlopuh (#2958)
  • backend: (snitch) add an optimization-level option to linalg-snitch pass @superlopuh (#2956)
  • backend: (snitch) unify all the test passes as a single end-to-end pass @superlopuh (#2955)
  • dialects: (riscv_snitch) lower arith.addf on vector<4xf16> to vfadd.h @nazavode (#2934)

Interpreter

  • interpreter: fix int64 format in ptr dtypes @superlopuh (#3035)

API

  • api: deprecate print_string_raw in favor of indent=0 @superlopuh (#2951)
  • api: remove parameters field from Trait @superlopuh (#2940)

🗎 Documentation

  • docs: (marimo) use carousel in linalg snitch notebook @superlopuh (#2933)

🐛 Bug Fixes

  • core: Assembly format shouldn't require $*SegmentSizes @alexarice (#3123)
  • tests: Increase timeout on lit tests @alexarice (#3125)
  • bug: remove duplicate isattr definition @superlopuh (#3088)
  • transformations: stencil-bufferize side-effect analysis fix @PapyChacal (#3076)
  • dependencies: fix numpy version for subprojects that depend on it @superlopuh (#3062)
  • interpreter: fix int64 format in ptr dtypes @superlopuh (#3035)
  • bug: (snitch_stream) fix stride pattern repeat param parsing @superlopuh (#2986)
  • transformations: (stencil-tensorize-z-dim) Scaling z-shifts to avoid negative offsets @n-io (#2975)
  • dialects: (arith, core) Constant op to accept tensor and memref @n-io (#2969)
  • backend: (riscv) fix register allocation stats @superlopuh (#2961)
  • (bug): linalg named ops to include hidden regions in generic print @n-io (#2957)
  • (bug): fix csl_stencil canonicalise @n-io (#2949)

Testing

  • tests: Increase timeout on lit tests @alexarice (#3125)
  • dialect: (irdl) Add region and attributes operations @alexarice (#3049)
  • core: Improved treatment of whitespace in assembly format @alexarice (#3044)
  • dialects: (irdl) Update for mlir compatibility @alexarice (#3002)
  • misc: Add Dialect.split_name method @alexarice (#3003)
  • testing: add relu f32 to bottom-up tests @superlopuh (#2990)
  • testing: (linalg-snitch) change order of incrementally added passes @superlopuh (#2966)

Continuous Integration

  • CI: update ruff precommit @superlopuh (#3119)
  • ci: Enable pip caching @n-io (#3098)
  • CI: Python 3.12 @PapyChacal (#3074)
  • dependencies: fix numpy version for subprojects that depend on it @superlopuh (#3062)
  • CI: add end of file and end of line pre-commit hooks @superlopuh (#3053)
  • CI: update pre-commit-hooks @superlopuh (#3052)
  • CI: use ruff to format xdsl @superlopuh (#3023)
  • CI: move ruff line setting to only linting @superlopuh (#3022)
  • CI: remove isort from dev dependencies @superlopuh (#3011)
  • CI: lint jupyter notebooks using ruff @superlopuh (#3010)
  • CI: use .lint when required by ruff @superlopuh (#3007)
  • CI: include onnx interpreter for pyright @superlopuh (#3012)
  • CI: update ruff precommit @superlopuh (#3006)
  • CI: add clean-caches make rule and remove *.cover files @superlopuh (#3008)
  • CI: don't run coverage by default in cmath conversion test @superlopuh (#3009)

Installation

  • pip prod(deps): bump textual from 0.78.0 to 0.79.1 @dependabot (#3130)
  • pip prod(deps): bump textual-dev from 1.5.1 to 1.6.1 @dependabot (#3129)
  • pip prod(deps): bump marimo from 0.8.5 to 0.8.7 @dependabot (#3128)
  • pip prod(deps): bump ruff from 0.6.2 to 0.6.3 @dependabot (#3116)
  • pip prod(deps): bump marimo from 0.8.4 to 0.8.5 @dependabot (#3117)
  • pip prod(deps): bump marimo from 0.8.3 to 0.8.4 @dependabot (#3109)
  • pip prod(deps): bump textual from 0.77.0 to 0.78.0 @dependabot (#3105)
  • pip prod(deps): bump ruff from 0.6.1 to 0.6.2 @dependabot (#3097)
  • pip prod(deps): bump marimo from 0.8.0 to 0.8.3 @dependabot (#3096)
  • pip prod(deps): bump pytest-asyncio from 0.23.8 to 0.24.0 @dependabot (#3086)
  • pip prod(deps): bump marimo from 0.7.20 to 0.8.0 @dependabot (#3061)
  • pip prod(deps): bump ruff from 0.6.0 to 0.6.1 @dependabot (#3060)
  • pip prod(deps): bump textual from 0.76.0 to 0.77.0 @dependabot (#3087)
  • dependencies: fix numpy version for subprojects that depend on it @superlopuh (#3062)
  • installation: Update nix flake @alexarice (#3059)
  • dependencies: update ruff-pre-commit to v0.6.0 @superlopuh (#3039)
  • pip prod(deps): bump ruff from 0.5.7 to 0.6.0 @dependabot (#3043)
  • dependencies: add JAX as an optional dependency of xDSL @superlopuh (#3037)
  • pip prod(deps): bump marimo from 0.7.19 to 0.7.20 @dependabot (#3021)
  • pip prod(deps): bump textual from 0.75.1 to 0.76.0 @dependabot (#3013)
  • pip prod(deps): bump marimo from 0.7.18 to 0.7.19 @dependabot (#2998)
  • pip prod(deps): bump ruff from 0.5.6 to 0.5.7 @dependabot (#2997)
  • pip prod(deps): bump marimo from 0.7.17 to 0.7.18 @dependabot (#2992)
  • pip prod(deps): bump black[jupyter] from 24.4.2 to 24.8.0 @dependabot (#2980)
  • pip prod(deps): bump textual from 0.75.0 to 0.75.1 @dependabot (#2981)
  • pip prod(deps): bump ruff from 0.5.5 to 0.5.6 @dependabot (#2979)
  • pip prod(deps): bump marimo from 0.7.14 to 0.7.17 @dependabot (#2978)
  • pip prod(deps): bump textual from 0.74.0 to 0.75.0 @dependabot (#2977)
  • pip prod(deps): bump onnx from 1.16.1 to 1.16.2 @dependabot (#2976)
  • pip prod(deps): bump marimo from 0.7.12 to 0.7.14 @dependabot (#2965)
  • pip prod(deps): bump pre-commit from 3.7.1 to 3.8.0 @dependabot (#2954)
  • pip prod(deps): bump textual from 0.73.0 to 0.74.0 @dependabot (#2943)
  • pip prod(deps): bump marimo from 0.7.11 to 0.7.12 @dependabot (#2944)
  • pip prod(deps): bump ruff from 0.5.4 to 0.5.5 @dependabot (#2945)
  • pip prod(deps): bump marimo from 0.7.9 to 0.7.11 @dependabot (#2935)

Miscellaneous

  • misc: remove type annotations from operand definitions [NFC] @superlopuh (#3120)
  • core: Assembly format shouldn't require $*SegmentSizes @alexarice (#3123)
  • core: (irdl) Add support for regions in optional groups to declarative assembly format @kimxworrall (#3106)
  • bug: (csl-stencil-to-csl-wrapper) Reverse generated operands @n-io (#3112)
  • transformations: (csl-stencil-to-csl-wrapper) Support reading properties from bufferized csl-stencil @n-io (#3083)
  • core: Implement speculability trait and helper. @PapyChacal (#3102)
  • transformations: (csl-stencil-bufferize) Fold csl_stencil.access that have no effect @n-io (#3084)
  • transformations: stencil-bufferize side-effect analysis fix @PapyChacal (#3076)
  • dialects: Update dialects with SameSize IRDL options. @PapyChacal (#3070)
  • transformations: Forgotten xdsl/transforms/shape_inference_patterns/init.py @PapyChacal (#3072)
  • dialects: Update tensor side-effect traits @n-io (#3069)
  • transformations: (stencil-to-csl-stencil) Support also bufferized dmp.swap @n-io (#3068)
  • transformations: Tensorize new result of dmp.swap @n-io (#3063)
  • installation: Update nix flake @alexarice (#3059)
  • rewriting: Make modify_block_argument_type modify_value_type @PapyChacal (#3045)
  • misc: Fix typo achorable -> anchorable @alexarice (#3048)
  • core: CanonicaliZation naming consistency @PapyChacal (#3040)
  • misc: remove mentions of black formatter @superlopuh (#3032)
  • misc: make some pyright ignores more specific [NFC] @superlopuh (#3029)
  • misc: Add Dialect.split_name method @alexarice (#3003)
  • misc: don't set pass spec arguments from instance when they are the default value @superlopuh (#3005)
  • transformations: Enable bufferized stencil lowering. @PapyChacal (#2984)
  • transformations: (stencil-tensorize-z-dim) Scaling z-shifts to avoid negative offsets @n-io (#2975)
  • transform: (stencil-tensorize-z-dimension) Tensorize arith.constant directly @n-io (#2970)
  • dialects: (tensor) Incorrect default 'dynamic index' on insert_slice op @n-io (#2974)
  • misc: don't import riscv and x86 in xdsl-opt @superlopuh (#2967)
  • misc: use specific print method in printer.py @superlopuh (#2964)
  • (transforms): dont have tensor inside memref @n-io (#2962)
  • misc: move IRDLDialectLoader to own file and remove circular dependency @superlopuh (#2946)
  • misc: use more isattr checks @superlopuh (#2952)
  • misc: make version lazy @superlopuh (#2950)
  • misc: remove some pylance errors throughout the project [NFC] @superlopuh (#2953)
  • (transform): csl_stencil canonicalization pass @n-io (#2814)
  • misc: move print_csl import away from top level @superlopuh (#2948)
  • misc: use constraints in more operation definitions @superlopuh (#2939)

Files

xdslproject/xdsl-v0.22.0.zip

Files (1.4 MB)

Name Size Download all
md5:2dc7eea39110da0218f62881cafa40d1
1.4 MB Preview Download

Additional details

Related works