What's Changed
- extend lattigo.chebyshev with domain start/end by @AlexanderViand in #3000
- fix cleanup of old nightly releases by @j2kun in #3012
- Added cache to AttachNTTRoots pass to speed it up by @crockeea in #3019
- Add support for pooling_ncw_sum by @mdgrs in #2995
- Suppress warnings generated when compiling with -c opt by @crockeea in #3020
- Fix mutability bug in Codegen by @mdgrs in #3016
- Support batchnorm1d without fusion by @copybara-service[bot] in #3004
- copybara: fix preprocessing util import rewrite rule by @copybara-service[bot] in #3021
- support canonicalizing linalg.generics that transpose by @copybara-service[bot] in #3013
- Resolve TODOs from #2157 by @crockeea in #2977
- fuse batchnorm1d into a preceding linear layer by @copybara-service[bot] in #3006
- Bump the npm_and_yarn group across 1 directory with 3 updates by @dependabot[bot] in #2901
- lower debug.validate to add-debug-port calls by @copybara-service[bot] in #3002
- fix: fixes shift value in LowerPolynomialEval by @copybara-service[bot] in #3027
- lower debug.validate for plaintext pipeline by @copybara-service[bot] in #3005
- lower debug.validate in secret lowerings by @copybara-service[bot] in #3008
- Add lowering for RNSExtractSliceOp and PolynomialExtractSliceOp by @crockeea in #3018
- Move KeySwitchInnerOp from CKKS dialect to LWE dialect by @crockeea in #3017
- DimensionAnalysis: fix inheritance bug by @copybara-service[bot] in #3032
- python: move front/backend to extras by @AlexanderViand in #3026
- fix: add regression test for #3003 with first-mod-bits by @copybara-service[bot] in #3044
- OpenFHE codegen for torch sigmoid + cf.assert on plaintexts by @j2kun in #3039
- e2e tests of debug.validate lowerings & OpenFHE emitter improvements by @copybara-service[bot] in #3010
- deps: bump action-gh-release to 3.0.0 to fix release hang by @asraa in #3049
- Add level analysis interfaces by @copybara-service[bot] in #3029
- lattigo: make emitter more resilient to unused vars by @copybara-service[bot] in #3035
- Fix
zdiv_rdouble-comparison bug during AST translation. Emitarith::RemSIOpdirectly. by @copybara-service[bot] in #3050 - lattigo: alloc-to-inplace level and dominance fixes by @copybara-service[bot] in #3034
- lattigo: extend alloc-to-inplace to support bufferization and loops by @copybara-service[bot] in #3033
- Add PreprocessingAnalysis by @copybara-service[bot] in #3051
- Add emitter handlers for Boolean OR and XOR operations to compile CCMM by @copybara-service[bot] in #3057
- Orbit's Level-Scale-Aware ILP Bootstrap and Rescale Placement by @edwjchen in #2979
- Allow implement-rotate-and-reduce to unroll via flag by @copybara-service[bot] in #3038
- Fix a precision error in the Bicyclic matrix multiplication (CCMM) pipeline, and add 3-backend E2E integration test coverage. by @copybara-service[bot] in #3062
- Fix breakage due to llvm/llvm-project pull/197316 by @copybara-service[bot] in #3063
- misc changes to support optimal bufferization by @copybara-service[bot] in #3036
- Add guards to prevent lowering eval-form polynomial constants by @crockeea in #3056
- Re-enable alloc-to-inplace for lattigo by default by @copybara-service[bot] in #3030
- Added ModArith::LiftOp by @crockeea in #3066
- emitter: support custom step values in scf.for loops by @copybara-service[bot] in #3081
- Change MNIST test to use rolled kernels by @copybara-service[bot] in #2971
- Fix use-of-uninitialized-value error and rank mismatch in plaintext bicyclic matmul test. by @copybara-service[bot] in #3083
- Add LimbwiseMappableOpInterface and LimbwiseAttrInterface by @copybara-service[bot] in #3065
- Decrease CKKS scaling factor in cc_mm test by @copybara-service[bot] in #3084
- Bump fmt dep to 12.1.0 to fix macOS build with clang 22 by @AlexanderViand in #3091
- disable flaky test, cf. #3089 by @copybara-service[bot] in #3090
- tensor_ext: support list of layouts for layout assignment by @copybara-service[bot] in #3092
- fix: fix issues with layout codegen by @copybara-service[bot] in #3093
- Optimize APInt factorization for 64-bit ints by @copybara-service[bot] in #3086
- Add ModArithType folding hooks by @copybara-service[bot] in #3067
- Rewrite dilated convolutions by expanding the kernel by @mdgrs in #3041
- Add Preprocessing dialect by @copybara-service[bot] in #3052
- Removed mod_arith::ExtractOp by @crockeea in #3094
- Add an NTT/INTT and equivalence tests with OpenFHE by @copybara-service[bot] in #3088
- Use per-level logqi for CKKS mod-reduce scale analysis. by @Zohaib58 in #3080
- support DenseResourceElementsAttr in memref'ed lattigo emitter by @AlexanderViand in #2999
- conv2d: enable row interchange for 2d MIMO convolutions by @copybara-service[bot] in #3095
- Add preprocessing-to-memref by @copybara-service[bot] in #3053
- bump BCR deps for hermetic LLVM (extracted from #3048) by @copybara-service[bot] in #3098
- Remove bundled openfhe from PyPI wheel by @j2kun in #3058
- copybara: restore cereal replacement by @copybara-service[bot] in #3102
- restore python3.10 compatibility by @j2kun in #3101
- Add memref emission to OpenFHE by @copybara-service[bot] in #3087
- split-preprocessing: add lowerings for lattigo, openfhe, and LWE by @copybara-service[bot] in #3099
- python: add typing_extensions to 3.10 deps by @AlexanderViand in #3105
- Fix hermetic toolchain by @j2kun in #3048
- Enable buildbuddy in CI workflows build_and_test.yml and docs.yml by @j2kun in #3104
- use remote build when on main by @j2kun in #3107
- ci: fix flag passing by @j2kun in #3108
- use getStaticTripCount now that affine.for has it by @copybara-service[bot] in #3111
- enable RBE when PRs come from within HEIR's repo by @j2kun in #3116
- Only cache OpenFHE build in build_and_test.yml by @j2kun in #3106
- build_and_test.yml: cache venv by @j2kun in #3117
- Made ConversionUtils more robust and cover more of the tensor dialect by @crockeea in #3109
- Updated use of deprecated APIs by @crockeea in #3112
- ci: run pytest in parallel by @j2kun in #3118
- remove cp314 from the cibuildwheel config by @copybara-service[bot] in #3121
- Remove unused LLVM inliner interface from heir-opt. by @copybara-service[bot] in #3119
- split-preprocessing: use new preprocessing dialect infrastructure by @copybara-service[bot] in #3060
- add an automated comment for a user's first interaction by @j2kun in #3125
- blog post for 2026-06-18 HEIR meeting by @copybara-service[bot] in #3128
- Parse ModArith constants as modulus's bit-width by @crockeea in #3126
- first_interaction.yml: dashes to underscores by @copybara-service[bot] in #3132
- Add OpenFHE to EmitC conversion pass by @copybara-service[bot] in #3068
- [FoldConstantTensors] Set insertion point after last operation to erase by @VedantParanjape in #3130
- buildbuddy: ensure autogenerated tablegen headers are downloaded by @j2kun in #3133
- Fixed ModDown step of lwe::keySwitchInner by @crockeea in #3129
- Avoid fusing ops with only secret operands in linalg-fuse-linear-ops by @copybara-service[bot] in #3124
- enable split-preprocessing and rolled kernels for more tests by @copybara-service[bot] in #3115
- Add RNSPolynomial constant folding by @copybara-service[bot] in #3135
- remove linebreaks from first-interaction by @copybara-service[bot] in #3138
- skip first_interaction.yml for copybara bot by @AlexanderViand in #3145
- buildbuddy: add metadata (repo/branch/commit) by @AlexanderViand in #3146
- fix bug in openfhe scf.if emitter by @j2kun in #3141
- Don't install clang in cibuildwheel anymore by @j2kun in #3134
Full Changelog: v2026.06.01...v2026.07.01