ITADN
EnzymeAD/Enzyme-JAX

版本发布 8

v0.0.13
? · 2026-06-02

## What's Changed * [CI] Set container image for Tag workflow by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/2517 * [CI] Use `release/v1` ref for `pypa/gh-action-pypi-publish` by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/2518 * [CI] Move PyPI publishing to a non-Docker job by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/2519 **Full Changelog**: https://github.com/EnzymeAD/Enzyme-JAX/compare/v0.0.12...v0.0.13

nightly
? · 2026-02-16
v0.0.10
? · 2025-06-14
0.0.10v0.0.10
? · 2025-06-14

## What's Changed * Convolution backward by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/178 * Constant propagation for dynamic update slice by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/177 * fix: handle integers for stablehlo.power by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/186 * support dilation and feature/batch group count in convolution reverse by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/181 * Bump enzyme/jax commits by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/187 * Fix complex rules for imag, real and abs by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/175 * Adds support for LSP by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/189 * Update HLODerivatives.td by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/192 * Fix transpose conert on complex types by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/188 * feat: `dynamic_gather` to `gather` opt pass by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/193 * Custom kernel lowering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/191 * Add options to kernel lowering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/196 * LowerKernel: load process symbols by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/199 * Bump jax by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/198 * Forced debug info for kernel launch by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/200 * Reduce window reverse when op is maximum by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/194 * More prints of lowered kernels by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/201 * Callinfo by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/203 * `enzyme.broadcast` conversion by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/197 * Fix shaped broadcast by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/205 * Separate gpu ffi info by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/206 * Modularize Bazel build by @mofeing in https://github.com/EnzymeAD/Enzyme-JAX/pull/202 * Bump enzyme commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/209 * feat: common simplifications by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/208 * feat: convert to rsqrt by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/215 * Transform interpreter runnable from within a function by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/211 * Fix bug in rsqrt opt by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/216 * add pass for raising libdevice calls to ops by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/223 * Update workspace.bzl by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/225 * Update BUILD by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/226 * Enzyme ops removal for stablehlo.if by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/224 * Add opt to simplify select uses within if by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/228 * const prop for log and logp1 by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/218 * Fix removal of if op by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/231 * fix: missing neg in rsqrt derivative by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/233 * Add read only kernel arg optimization by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/234 * Added const prop for chlo.is_inf by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/236 * chlo.lgamma const prop by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/182 * SROA by roundtripping to LLVM by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/229 * Fix typo by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/240 * Fix failing FileCheck by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/243 * feat: some more transpose optimizations by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/242 * Update workspace.bzl by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/245 * feat: DynamicSliceOp adjoint by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/220 * Fixup tests by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/247 * Move mlir lit tests to subdirectory by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/250 * Add readnone kernel arg by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/251 * More lower kernel flags by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/254 * Try fixing CI by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/252 * Apply div simplify patterns to integers by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/249 * Remove duplicate funcs by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/255 * While simplify opt by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/248 * bump jax commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/263 * Raise powi and absi to the math dialect by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/259 * Apply `NoNanAddSubSimplify` pattern to integer unconditionally by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/261 * pattern to remove dead results of stablehlo.while by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/260 * Support f8E4M3FN in `fromTensor` by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/267 * Update gpu_pipeline.yml by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/268 * NoNan transform dialect by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/271 * fix cmplx stop by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/272 * Propagate constant for thread/block index in kernels by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/275 * Reland: pattern to remove dead results of stablehlo.while by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/280 * Use the new pass registration by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/277 * add compare and constant by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/282 * Add LLVM to CF raising pass by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/281 * Add sroa dumps by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/283 * [NFC] Move raising tests to common subdirectory by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/284 * Add custom CF to SCF raising pass by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/285 * Remove unused inclusion by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/287 * fix compilation by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/288 * feat: simplify select(compare(...)...) to max or min by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/291 * feat: missing broadcast_in_dim opt by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/292 * feat: remove common compare ops + select(not ...) simplify by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/294 * CPU lowering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/290 * Add RemoveIV pattern by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/296 * Add sdy dialect to enzymexlamlir-opt by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/299 * Add NormalizeLoop pattern by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/300 * Create a separate target for RaisingTransformOps by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/302 * General symbol map by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/304 * Group constants for commutative ops by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/301 * Lower call by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/307 * make XLADerivatives target public by @joelberkeley in https://github.com/EnzymeAD/Enzyme-JAX/pull/309 * try fixing GPU CI by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/295 * Annotate kernel params by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/289 * Remove unused results from if by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/311 * Handle complex by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/310 * Instsimplify by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/312 * Bump upstream by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/313 * Fix complex import from stablehlo by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/315 * feat: derivative rule for gather op by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/316 * Add LLVM to Affine access pass by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/303 * feat: rewrite constants into scatter update_computation by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/319 * fix: support constant return in converting scatter -> dynamic_slice_update by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/320 * Support JitCall annotation by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/323 * feat: more passes for scatter by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/325 * feat: simplify transpose + reduce by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/327 * Complete CallOpInterface implementation for Kernel and JIT call ops by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/332 * Enzyme ops removal for stablehlo.while by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/262 * If predicate value propagation by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/334 * feat: batchnorm adjoint by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/335 * Transform llvm.ptr arg to memref arg by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/314 * Delinearize indexing by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/318 * Also support func.func in memref arg propagation by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/338 * Implement ori hack recognition in affine raising by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/339 * Loop canonicalization by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/340 * SCF While to For by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/341 * No extui by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/343 * Fast path for readnone by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/344 * Fix missing intrinsics by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/346 * Forward lower jit failure by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/349 * Use the right builder for CallOp by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/351 * Use integer data flow analysis to simplify IR by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/348 * preserve visibility during sroa by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/353 * Div and add cast fixups by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/354 * Preserve memory accesses attributes when raising llvm -> affine by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/356 * Attempt fix workspace updates by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/357 * Add affinecfg by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/360 * implement reduce_window reverse when reduction is add by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/361 * Preserve argument attributes when raising llvm -> memref/affine by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/362 * Switch to If by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/363 * [CI] Resurrect GitHub Actions build job by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/358 * Bump DoozyX/clang-format-lint-action from 0.16.2 to 0.18.2 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/365 * Bump bazel-contrib/setup-bazel from 0.8.5 to 0.13.0 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/366 * Do while raising by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/345 * Use jax.ffi.register_ffi_target instead of deprecated version in jax.lib.xla_client by @dfm in https://github.com/EnzymeAD/Enzyme-JAX/pull/371 * [GHA] Also run tests, again by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/369 * DoWhile to For extension to support cmpi.ne in scf.condition by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/372 * Add pass to raise affine loop nests to stablehlo by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/367 * Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/364 * Fix range analysis by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/376 * Add missing dependency to `src/enzyme_ad/jax:XLADerivatives` by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/374 * Trunci propagation to if-else body by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/375 * Simplify If by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/373 * Correct bound min/max by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/379 * Move while down3 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/380 * [CI] Run `format` job only on C/C++ files and exclude external packages by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/378 * Transform select followed by extract to first extract and then select by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/382 * [CI] Fix paths triggers for `build` workflow by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/383 * Add crashing test for dowhile by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/381 * Bump bazel-contrib/setup-bazel from 0.13.0 to 0.14.0 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/384 * More affinecfg raising by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/385 * raising loop iv usage to stablehlo by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/386 * Fix affine raising by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/387 * Take care of alignment when dividing indexing by element size by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/389 * Added select trunc to trunc select pass by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/391 * Make clang-format ignore `src/external` by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/395 * No public description by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/394 * Update jax commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/396 * Import polygeist affine simplifications by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/397 * Fix Python build by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/399 * Fix auto modulo detection by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/400 * Merge parallel inductions & raise improvements by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/401 * Canonicalize pattern for llvm.alloca by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/398 * Fix isl memory management by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/403 * Preserve modulo with consistent ordering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/404 * Fix affine merge with constant index by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/406 * Fix affine merge with constant index by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/407 * Fix lower bound indexing by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/408 * Split induction variable when possible by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/405 * Fix up more complex mod case by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/409 * Don't crash if fails to raise to stablehlo by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/411 * StableHLORaising: Generalize alignment from differently loaded tensors by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/412 * fix raising with aliasing by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/413 * Add many missing deps by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/417 * [stablehlo] Add mul/div/add/sub constant lifting patterns by @GleasonK in https://github.com/EnzymeAD/Enzyme-JAX/pull/414 * Add missing deps needed for running the tests by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/419 * Fix affine to stablehlo raising by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/418 * Fix broadcast to transpose by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/423 * Fixing the fact I can't do math by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/424 * split induction variable if some uses are not floordiv or mod by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/426 * a pass to print locations by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/428 * Don't infinitely recur by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/427 * Fix torem bug by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/432 * Fixbug by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/433 * CI: Run lit tests on linux by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/435 * If Yield propagate to outside if-else region by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/430 * Select to affine by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/437 * Raise inner parallel for loops and simple affine.if by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/434 * Fix affine if raise by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/439 * raise scf.if by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/440 * Merge ifs when checking for first iteration by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/446 * Allow raising ifs with speculatively executable loads by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/443 * Raise memref.load to stablehlo.gather by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/450 * Affine if yield fixup by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/451 * Fix raise with atan by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/453 * Enable speculative load for scf.if by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/455 * Raise memref.store to stablehlo.scatter by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/452 * Support affine.apply in split/merge ivs by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/456 * Affine getIndexSet does not work for operations in affine.if else blocks by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/459 * Raise affine.for to stablehlo.while by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/457 * Memrefraise by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/458 * Remove if statically provable ifs by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/461 * Delinearize for memref by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/460 * Affapply by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/462 * apply: use stablehlo variant of expandEmitExpr + more complex loads by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/463 * Simplify and speed up affine expr builder by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/465 * Raise remui to stablehlo by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/468 * Fix isl memory bug by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/469 * Fetch symbol uses once by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/470 * ArithRaise: add extui i1 -> iN by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/471 * fix comp by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/473 * Pattern for extractValue of select transform to select of extractValue by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/474 * Add support for raising math.copysign to stablehlo by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/475 * Add option to print generic ir form by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/476 * Signed by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/478 * Add boolean related optimizations by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/479 * Add isnanf and trunc support by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/481 * Try fixing lower jit issue by re ordering gpu module conversion by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/483 * Support iter args for affine.for -> stablehlo by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/480 * Fix a(b(), c()) issues by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/485 * Delinearize 0dim by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/487 * try fix size by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/488 * Fix crash with constant expr by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/492 * Raise ub.poison by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/495 * [CI] Upload enzymexlamlir-opt by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/501 * Fixaarch64 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/502 * Bump jax commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/496 * bump jax and enzyme versions to use newer LLVM by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/503 * Do not use subscript to assign to the same densemap by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/505 * raise bit counting ops from nvvm and llvm by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/507 * Handle ne neg step with cmp taking the iv by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/509 * Fix another off by 1 by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/510 * vendor affine loop parallelization from upstream in affine-cfg by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/429 * MergeInductions fix by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/513 * Add misc fixups in affinecfg by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/514 * Re-land jax update to 5fef4cff7a37d0bb4d7004741189880b357699a2 by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/511 * Update JAX by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/518 * reduction for pass by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/517 * Work around module flags bug by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/520 * Vpatch by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/519 * Add store sinking by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/521 * Lower cpu into exit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/522 * Add error if not all functions are raised by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/523 * Correctly identify main IV by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/526 * lift memref.load depending on scf.if into that by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/524 * Handle simple "else" branches in affine simplification by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/527 * resolve #491: Iota Rewrite by @hhkit in https://github.com/EnzymeAD/Enzyme-JAX/pull/528 * Add patterns for affine expr simplification into AffineCFG by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/532 * copy select-of-extract patterns to libdevice-raise by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/529 * Add truncf raising by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/537 * Add compare vs 1 simplification by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/538 * Add Select-Compare-Iota optimization (#535) by @hhkit in https://github.com/EnzymeAD/Enzyme-JAX/pull/539 * Fix affine cfg of affine apply by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/541 * Handle non dominating if by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/542 * fixes post #542 by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/547 * bump vendor xla by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/548 * fix: build by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/549 * Adding check for yield Op movement pattern for operands type to match by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/553 * DUS DUS by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/555 * dus dus concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/556 * Reduction by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/558 * feat: simplify (mul (sign x) (abs x)) by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/559 * feat: transpose(dus) -> dus(transpose, transpose) by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/561 * feat: abs of positive operand by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/564 * Lockstep for op raising by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/546 * Moving transpose to before whileOp + broadcast iota error fix by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/563 * pfor red by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/569 * fix: transposes by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/567 * transpose reduce window by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/570 * Transpose reduce by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/571 * use correct result type by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/574 * Add missing td pattern by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/573 * Update EnzymeHLOOpt.cpp by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/576 * slice(reduce_window) -> reduce by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/572 * reshape by @chelini in https://github.com/EnzymeAD/Enzyme-JAX/pull/577 * memrefs defined outside for reduction optimization by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/580 * Reshape(DynamicUpdateSlice) -> DynamicUpdateSlice(Reshape, Reshape) by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/582 * fix: naming of ReduceTranspose by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/583 * reshapes r fun by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/584 * reshape(reduce_window) -> reduce_window(reshape) by @tyb0807 in https://github.com/EnzymeAD/Enzyme-JAX/pull/585 * Fix transpose reduce window by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/588 * Add fix for parallel reduction dimension crash by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/589 * Fix broadcast is reshape by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/593 * Fix reshape concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/594 * Move while transpose without inner transpose by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/595 * Add sort memory pass by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/597 * Hoist while fn arg by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/598 * While DUS by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/599 * DUS concat while by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/600 * Dus concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/603 * More dus concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/604 * Convert DUS to a combination of slices and concats by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/608 * Remove dependent induction variable from stablehlo.while by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/601 * Fix bug in while dead result by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/609 * WhileInduction add type check by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/610 * Add slice dus to concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/611 * Add DUS LICM by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/612 * while simplify for all outer args by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/613 * Slicm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/615 * Revert "fix: parameterized td" by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/617 * fix: parameterized td by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/618 * WIP: while induction by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/616 * So many more licms by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/620 * Whileinduction: check limit is defined outside loop and format by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/621 * Add opt to convert const dus to i32 indices by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/629 * feat: pad(concat, const) to concat(..., const) by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/636 * fix: ReduceTransposeSimplify by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/640 * WIP : Reducing slice via Yield of concat of slices representing replication padding in while by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/641 * While licm'd yields by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/642 * PadConcat to (MaybePad)ConcatPad by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/639 * Slice(Select) to Select(Slice) by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/643 * (add (mul a x) (mul a y)) -> (add a (mul x y)) by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/644 * Check single use in padconcat ->concatpad by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/645 * Sum to convolve v1 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/646 * Separate out while licm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/648 * while with pad in yield by @arpitj1 in https://github.com/EnzymeAD/Enzyme-JAX/pull/647 * Add while licm parameter by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/649 * Fix up the shape by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/651 * Even better multi conv by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/652 * Push reductions down by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/655 * Check for parallel IV in affineMapToSlice by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/658 * Properly update mapping when using the ForOp unroll raising by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/657 * Less sketchy get operand index of sliceif by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/661 * Sum2v3 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/663 * feat: add option for agg transpose lift by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/662 * Don't raise top level ops differently & raise arith bitcast by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/660 * Fix transpose reduce by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/665 * Single use transpose reduce by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/666 * feat: transpose select by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/667 * Correct while induction by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/669 * feat: more abs passes by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/670 * Aggressive option for reshape slice and elementwise by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/673 * Xor simplify by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/672 * feat: reshape select by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/674 * fix reshape slice to handle a non-greedy solution by backtracking by one by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/675 * DUS slice simplify by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/678 * Don't reverse unless necessary by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/683 * SortMemory: Fix memref access dependence check by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/682 * Broadcast to noop by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/684 * dont emit noop by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/685 * Fix dusStartIndices in dus slice simplify by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/689 * Fix off by one in canonicalize for by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/690 * WhileInductionReduction : fix self-yield by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/693 * Fix reverse mode derivative for `stablehlo.broadcast_in_dim` by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/679 * Concat concat to dus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/698 * New operations for simplifying comm questions by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/699 * Concat Multi pad by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/705 * feat: optimize communications pass by @vimarsh6739 in https://github.com/EnzymeAD/Enzyme-JAX/pull/687 * add concat concat axis swap by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/707 * Bld by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/708 * Recognize and lower ExtendOp by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/706 * Add extend to patterns by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/709 * Extend op recognition improvements by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/710 * Reshapewrap by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/716 * Concat wrap by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/719 * RotatePad by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/721 * Extend of slice becomes slice of extend by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/720 * feat: rotate op communication pattern by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/718 * Finish up extend of slice becomes slice of extend by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/723 * Concat to dus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/724 * Rotate: preserve sharding by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/726 * Preserve shardings by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/727 * fix: comm pattern for concat (generalized) by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/725 * Don't crash if no sharding by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/729 * fix recognize extend crash by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/732 * Prevent infinite recursion by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/733 * feat: wrap/extend comm optimize by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/731 * Test fixes by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/738 * Fix ExtendOp construction by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/735 * SliceWrap by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/736 * disable padded rotate by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/740 * Fix rotate test by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/746 * fix: don't apply for trivial cases by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/751 * fix: allow full shard comm for rotate by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/750 * TransposeWrap, TransposeExtend, TransposeRotate by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/747 * Extend of Elementwise and Extend of splat and Wrap of elementwise by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/743 * Fully generalized dus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/753 * ReshapeExtend, ReshapeWrap, ReshapeRotate by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/748 * Fix infinite compile by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/754 * feat: concat comm optimize by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/737 * fix: bad wrap by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/752 * Add concat2dusslice by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/756 * Add extend by 2 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/759 * [CRASHCASE] Periodic crash by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/757 * rotations of slices of base into slice of single rotation by @jumerckx in https://github.com/EnzymeAD/Enzyme-JAX/pull/734 * feat: use padding to optimize concat comm by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/760 * Split opt comm into pass options by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/761 * Bump jax commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/762 * Make channel IDs unique by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/765 * DUS non divisible by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/768 * feat: rotate to pad opt by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/764 * feat: generalize concat to padding pass by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/769 * Speculate if with pad to select by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/772 * Local type < dim by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/774 * fix: fail early for concat to pad by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/776 * feat: DUS to Pad + Elementwise by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/773 * Cleanup sliceextend by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/777 * Don't rewrite inside of manual computation by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/775 * Concat dus like by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/779 * fixup by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/780 * Multi pad by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/781 * fix rotate by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/782 * Wrap: fix non axis non divisible by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/783 * Periodic extend to non dim by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/785 * Always use axes by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/786 * Preserve shardings in rotate lowering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/787 * Extenddus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/788 * Extend: non dim by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/784 * fix: better lowering by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/790 * Extshard by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/791 * Shardy interface for our permutes by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/792 * Concat reshape to dus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/793 * Recognize extend reshape by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/794 * Fix wrap pad correctness bug by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/795 * Preserve arg sharding by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/797 * Reshape to broadcast by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/798 * Add is zero check by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/799 * Add mid iota by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/801 * Selectiotatodus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/802 * Fix and extend iota detection by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/803 * Add compare cleanups by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/804 * Zero predicate start by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/806 * and/or of same value by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/807 * Broadcast compare by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/808 * not compare by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/809 * Broadcast iota by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/810 * CSE Iota by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/813 * fix raising tests by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/816 * optimize and(compare, compare) by @ftynse in https://github.com/EnzymeAD/Enzyme-JAX/pull/814 * Wrap & Extend unary elementwise by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/805 * Add transform dialect by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/818 * Fix reshape bug by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/819 * Fix wrap concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/821 * Compare(Iota, Const) simplify by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/817 * don't add zeros by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/824 * WhileDUS with concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/829 * While wrap by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/830 * Add dus wrap by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/832 * fix: bcast_in_dim reverse mode by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/831 * Add slice internal by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/833 * Simplify boundary by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/836 * Concatenate const prop fix by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/837 * Update EnzymeHLOOpt.cpp by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/838 * Fix wrap extension on concat by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/841 * feat: transpose dynamic slice by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/842 * Bump DoozyX/clang-format-lint-action from 0.18.2 to 0.20 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/800 * fix: WhileOp reverse autodiff by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/845 * Fix lower replace by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/846 * feat: simplify square of abs by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/847 * feat: divide divide simplify patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/849 * Update jax/enzyme by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/848 * feat: cse of commutative ops by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/850 * feat: optimize concat(reshape(slice)...) to transpose by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/853 * feat: fuse dot_general + elem into cudnn fusion by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/855 * feat: reduce op batch interface by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/856 * feat: sharding aware operation reordering by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/859 * Err if we can't remove while op gradient push/pop by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/861 * feat: bcast_in_dim + dot_general batch interface by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/862 * fix: transpose rule for batched case by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/863 * fix: accidental new variable by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/865 * do not cache known iter count for whileop by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/864 * fix: concatreshapeslice by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/868 * feat: reverse_transpose + transpose_reverse by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/871 * fix: safety check for FullReduceReshapeOrTranspose by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/872 * conv: Handle lhs dilation correctly by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/874 * Fix one dimensional type check by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/875 * chore: bump both enzyme and jax versions by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/858 * WhileOp Min cut by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/857 * Fix build by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/877 * Fix macos build by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/878 * Add fdivide raise by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/879 * Fix reduce of broadcast by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/881 * Simplify empty reduce by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/882 * Update workspace.bzl by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/883 * Move math simplification to interface by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/884 * feat: memory effect annotations on functions by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/876 * feat: register sparse tensor dialect by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/885 * Support fma by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/889 * Speedup remove-unnecessary-enzyme-ops by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/891 * fix: pass name by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/895 * Nanobind by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/896 * Remove pybind11 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/898 * Make is commutative check constexpr by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/899 * feat: ConcatReshapeReduce simplify pass by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/897 * mincut: fix incomplete reverse graph by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/902 * Gatherinact by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/901 * feat: elementwise reshape like by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/904 * feat: aggressively push slice(transpose) down if it can be eliminated for sure by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/906 * feat: reshape transpose to broadcast by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/907 * feat: concat_transpose by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/908 * fix: element type change by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/910 * DUS: add max const prop threshold by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/911 * Bump enzyme by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/912 * Fix sort memory by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/916 * Fix llvm to affine for non i8 element type by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/917 * More llvm affine access fixes by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/918 * More sort memory fix by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/919 * Allow for over-approximated domains in affine expr simplification by @ivanradanov in https://github.com/EnzymeAD/Enzyme-JAX/pull/921 * Sink store in affine if by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/922 * Fix sort to be a valid partial order by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/923 * Correct rem simplify by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/924 * AffineCFG: fix infinite recursion in moveiftoaffine by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/925 * fix: transpose all users slice by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/926 * Predicate simplify in if to affine by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/927 * AffineCFG cond raise: expr recreation by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/928 * feat: merge consecutive reduce ops by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/929 * fix: dot general rule by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/930 * feat: generalize dot_general optimize patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/931 * Fix opt build flag by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/932 * Add cmp ext simplification by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/933 * sitofp to affine by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/934 * Void return for erase arg by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/935 * Add upper bound for select iota by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/936 * feat: factorization ops by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/887 * Fix const prop threshold for pad by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/938 * Compare iota by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/939 * Broadcast pad of const by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/944 * Select pad to dus by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/946 * And pad pad by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/947 * Correctness: fix while licm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/949 * Add uitofp by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/952 * test: missing RUN by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/950 * Correctness: fix whilecond result ordering by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/954 * fix: slice_elementwise stride handling by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/956 * feat: conj(real number) -> real number by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/958 * Lower linalg: Set API version by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/959 * fix: layout by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/961 * Update LowerEnzymeXLALinalg.cpp by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/966 * feat: concat op batching by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/968 * feat: gather op batching interface by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/969 * feat: slice op batch interface by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/970 * Generalize select to handle and/or by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/972 * chore(deps): bump setuptools from 75.1.0 to 78.1.1 in /builddeps by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/971 * feat: custom call batching by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/973 * feat: DUS batching by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/974 * feat: iota batching by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/975 * feat: select op batch interface by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/976 * Fix reshape rotate/wrap/extend by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/977 * Add memrefinsider by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/978 * LLVMToAffineAccess fix base memory by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/979 * feat: add `CheckedOpRewritePattern` & `CheckedOpTraitRewritePattern` by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/960 * feat: concatreshapeelementwise by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/980 * fix: batchnorm gradient by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/987 * Fix sqrt of zero by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/989 * feat: batchnorm transpose optimization patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/988 * Actually use checked mul by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/990 * feat: select bcast_in_dim simplify by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/995 * feat: add transpose(if) by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/998 * feat: lift common ops from if by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/999 * feat: involution simplify patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1006 * fix: some fixes for if ops lift common ops by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1004 * feat: more conj patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1007 * feat: reverse mode rules for fft by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1001 * feat: add missing unary const props by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1009 * Add missing dependency by @giordano in https://github.com/EnzymeAD/Enzyme-JAX/pull/1010 * chore(deps): bump bazel-contrib/setup-bazel from 0.14.0 to 0.15.0 by @dependabot in https://github.com/EnzymeAD/Enzyme-JAX/pull/1008 * fix: padding dimensions for rfft adjoint by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1011 * feat: implement matchers for complex numbers + simplification patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1012 * fix: transpose_conv pass by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1016 * feat: generalize binary constant propagation by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1017 * chore: bump enzyme commit by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/992 * fix: move window reversal out of conv by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1019 * hasSideEffectAttr fix by @sbrantq in https://github.com/EnzymeAD/Enzyme-JAX/pull/1018 * chore: install latest enzyme version by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1020 * fix: don't inline kernel call / jit call by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1021 * build: centralize dialect/pass registration in EnzymeJAX by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1026 * Raiselib by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/1022 * fix: build by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1030 * fix: scatter unique indices for non-last index dim by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1031 * feat: more scatter gather optimization patterns by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1033 * feat: refactor pass pipeline options in python by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1036 * continuing gpu backend by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/1035 * feat: gather elementwise simplify by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1038 * feat: support convert in unary scatter by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1039 * shlo raise by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/1041 * feat: transpose of scatter by @avik-pal in https://github.com/EnzymeAD/Enzyme-JAX/pull/1042 * Fix: erase inlined op in reducereduce by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/1043 * Try to fix buildkite bazel tag by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/1044 ## New Contributors * @vimarsh6739 made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/189 * @jumerckx made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/197 * @tyb0807 made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/240 * @chelini made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/255 * @joelberkeley made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/309 * @giordano made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/358 * @dependabot made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/365 * @arpitj1 made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/345 * @dfm made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/371 * @GleasonK made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/414 * @hhkit made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/528 * @sbrantq made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/1018 **Full Changelog**: https://github.com/EnzymeAD/Enzyme-JAX/compare/v0.0.9...v0.0.10

v0.0.10
? · 2025-06-13
v0.0.9
? · 2024-11-26

## What's Changed * optimize transpose(convolution) -> convolution by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/117 * Force bump xla commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/119 * Simplify path infra by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/128 * Bump internals by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/130 * Attempt gpu ci fix by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/125 * Fast path slice contiguous constant by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/137 * Add jaxmd tests by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/136 * Transpose batch by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/138 * Maxtext by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/139 * implement derivative for real and imag by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/145 * Update compile_with_xla.cc by @klucke in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 * Clamp derivatives by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/148 * IfOp by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/149 * bump enzyme and jax version by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/150 * Update test-requirements.txt by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/155 * Try a100 CI by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/156 * CUDA ci by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/154 * add neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/141 * Generic batch op interface by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/151 * Use absl for neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/158 * DynamicUpdateSliceOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/159 * Try caching again by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/163 * WhileOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/160 * remove transform.with_named_sequence attribute by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/153 * Keras3 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/166 * Merge concatenate of contiguous slices in a single slice by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/168 * Improve enzyme gradient ops removal in while op by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/167 * Fix stablehlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/171 * Nicer hlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/172 ## New Contributors * @klucke made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 **Full Changelog**: https://github.com/EnzymeAD/Enzyme-JAX/compare/v0.0.8...v0.0.9

v0.0.9
? · 2024-11-26

## What's Changed * optimize transpose(convolution) -> convolution by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/117 * Force bump xla commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/119 * Simplify path infra by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/128 * Bump internals by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/130 * Attempt gpu ci fix by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/125 * Fast path slice contiguous constant by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/137 * Add jaxmd tests by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/136 * Transpose batch by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/138 * Maxtext by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/139 * implement derivative for real and imag by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/145 * Update compile_with_xla.cc by @klucke in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 * Clamp derivatives by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/148 * IfOp by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/149 * bump enzyme and jax version by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/150 * Update test-requirements.txt by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/155 * Try a100 CI by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/156 * CUDA ci by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/154 * add neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/141 * Generic batch op interface by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/151 * Use absl for neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/158 * DynamicUpdateSliceOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/159 * Try caching again by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/163 * WhileOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/160 * remove transform.with_named_sequence attribute by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/153 * Keras3 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/166 * Merge concatenate of contiguous slices in a single slice by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/168 * Improve enzyme gradient ops removal in while op by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/167 * Fix stablehlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/171 * Nicer hlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/172 ## New Contributors * @klucke made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 **Full Changelog**: https://github.com/EnzymeAD/Enzyme-JAX/compare/v0.0.8...v0.0.9

v0.0.9
? · 2024-11-25

## What's Changed * optimize transpose(convolution) -> convolution by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/117 * Force bump xla commit by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/119 * Simplify path infra by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/128 * Bump internals by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/130 * Attempt gpu ci fix by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/125 * Fast path slice contiguous constant by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/137 * Add jaxmd tests by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/136 * Transpose batch by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/138 * Maxtext by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/139 * implement derivative for real and imag by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/145 * Update compile_with_xla.cc by @klucke in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 * Clamp derivatives by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/148 * IfOp by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/149 * bump enzyme and jax version by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/150 * Update test-requirements.txt by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/155 * Try a100 CI by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/156 * CUDA ci by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/154 * add neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/141 * Generic batch op interface by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/151 * Use absl for neuralgcm by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/158 * DynamicUpdateSliceOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/159 * Try caching again by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/163 * WhileOp reverse derivative by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/160 * remove transform.with_named_sequence attribute by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/153 * Keras3 by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/166 * Merge concatenate of contiguous slices in a single slice by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/168 * Improve enzyme gradient ops removal in while op by @Pangoraw in https://github.com/EnzymeAD/Enzyme-JAX/pull/167 * Fix stablehlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/171 * Nicer hlo ffi by @wsmoses in https://github.com/EnzymeAD/Enzyme-JAX/pull/172 ## New Contributors * @klucke made their first contribution in https://github.com/EnzymeAD/Enzyme-JAX/pull/147 **Full Changelog**: https://github.com/EnzymeAD/Enzyme-JAX/compare/v0.0.8...v0.0.9