Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2334 commits
Select commit Hold shift + click to select a range
e759a85
Add option allowMissingOutputTypes to use type inference if an onnx m…
jorickert Jul 2, 2025
f70db58
Remove unused variable
jorickert Jul 2, 2025
a0a51c3
Enable allowMissingOutputTypes by default
jorickert Jul 2, 2025
a94ca11
Refactor to remove code duplication
jorickert Jul 2, 2025
88cc7dd
Add warning if output type gets inferred
jorickert Jul 2, 2025
c34b3ee
Extend documentation and add missing newline
jorickert Jul 2, 2025
42ff64b
Merge pull request #395 from Xilinx/jrickert.output_type_inference
jorickert Jul 2, 2025
2cc894b
Revert "chore: temporarily disable combine parallel conv recomposition."
jorickert Jul 7, 2025
4faa077
Merge pull request #396 from Xilinx/revert-388-tiagot.disable_conv_re…
jorickert Jul 7, 2025
2d041d6
Use none instead of nullptr for bias and make sure the insertion poin…
jorickert Jul 7, 2025
c85ebc9
Merge pull request #397 from Xilinx/jrickert.further_parallel_recompo…
jorickert Jul 8, 2025
3732187
Add missing cmake depends
jorickert Jul 9, 2025
45f148a
Merge pull request #398 from Xilinx/jrickert.cmake_edge
jorickert Jul 9, 2025
a553cf2
Merge pull request #400 from Xilinx/chaitany.handling_convtranspose_w…
chaitanyakamarapu Jul 23, 2025
7f8c0d6
Merge pull request #401 from Xilinx/chaitany.handling_convtranspose_w…
chaitanyakamarapu Jul 24, 2025
e101853
removing the unnecsessary attributes from q dq nodes in tests
chaitanyakamarapu Jul 25, 2025
0f2391e
Merge pull request #402 from Xilinx/chaitany.backport_convtranspose_qdq
chaitanyakamarapu Jul 25, 2025
9c0bf14
Recompose a Layer/RMSNorm even if the scale multiplication has multip…
jorickert Jul 25, 2025
faf797f
Merge pull request #403 from Xilinx/jrickert.rms_multi_use
jorickert Jul 25, 2025
2eca0d3
Make parsing of models more robust if useOnnxModelTypes is enabled.
jorickert Jul 28, 2025
ac1b864
Fix problem of return type conversion that only works on some compile…
jorickert Jul 28, 2025
d32fa87
Merge pull request #404 from Xilinx/jrickert.more_robust_onnx_model_t…
jorickert Jul 28, 2025
da66cda
Merge pull request #405 from Xilinx/jrickert.fix_invalid_type_conversion
jorickert Jul 29, 2025
cfc3700
feat: add option to build without pybind11
gvartany-amd Aug 5, 2025
eeb634c
Create Remove Passes
Aug 5, 2025
e476ccc
chore: update pybind option description
gvartany-amd Aug 6, 2025
95c4849
Rename ConCatOpt.cpp to ConcatOpt.cpp
SushmitaThakallapalli1980 Aug 6, 2025
3463431
ci: disable pybind for in-tree build
gvartany-amd Aug 7, 2025
fd36e1c
added lit tests. Removed concat,slice,cast.
Aug 7, 2025
1e81b4a
feat: Generate no error when scalar values with different ranks are p…
ehsan-toosi Aug 7, 2025
14c5c53
bug-fix in .mlir
Aug 7, 2025
d6bca38
Merge pull request #409 from ehsan-toosi/enadjara.no_error_for_scalar…
ehsan-toosi Aug 8, 2025
75e0f1d
add pass to remove qdq around dataflow ops
xiaohanAMD Aug 8, 2025
1eb6d40
test: disable pybind-related tests
gvartany-amd Aug 8, 2025
4e9c1be
Merge pull request #407 from gvartany/grigory.AIESW-3006.build-withou…
mgehre-amd Aug 8, 2025
c82eebf
attributes, scale-zp tensor chks
Aug 10, 2025
8599294
Merge branch 'feature/onnx-to-tosa' into xiao.add_remove_qdq_aroundop
xiaohanAMD Aug 11, 2025
4ec19b8
check dq q op value
xiaohanAMD Aug 11, 2025
3a918a7
add op support
xiaohanAMD Aug 11, 2025
205bd8f
add lit test
xiaohanAMD Aug 11, 2025
b8522cb
add op support
xiaohanAMD Aug 11, 2025
5295be8
replace qOp
xiaohanAMD Aug 11, 2025
ba72145
replace qOp
xiaohanAMD Aug 11, 2025
ed60d66
replace qOp
xiaohanAMD Aug 11, 2025
17b3b6d
ULP method for scales comparison. Added flags for OP removal.
Aug 12, 2025
664d3ad
include other input
xiaohanAMD Aug 13, 2025
f0817d9
Scale check wo tol. Removd flags
Aug 13, 2025
d871a05
add lit test
xiaohanAMD Aug 13, 2025
1c8294d
remove unused
xiaohanAMD Aug 13, 2025
f5ef56c
fix for both Attr null-ptrs
Aug 13, 2025
9271d27
more_tests removedChk3 movedQDQPass
Aug 14, 2025
ab6bb16
attr chk simplified, renaming, add flag
Aug 14, 2025
7e22045
add more test
xiaohanAMD Aug 14, 2025
3f72202
add to compiler pass
xiaohanAMD Aug 14, 2025
f1ecdb1
Merge pull request #408 from SushmitaThakallapalli1980/feature/onnx-t…
julio-gorge Aug 15, 2025
5c7db1e
add more lit
xiaohanAMD Aug 15, 2025
a1bae19
add more lit
xiaohanAMD Aug 15, 2025
dd90f90
Merge remote-tracking branch 'origin/feature/onnx-to-tosa' into xiao.…
xiaohanAMD Aug 15, 2025
8ebf0fc
fix format
xiaohanAMD Aug 15, 2025
9826958
put dq, q value check in opHelper
xiaohanAMD Aug 16, 2025
05dad07
simplifying the 4 phased conv merge operation
chaitanyakamarapu Aug 12, 2025
d893b73
improving the comments
chaitanyakamarapu Aug 12, 2025
936c529
making sure we have batch=1
chaitanyakamarapu Aug 18, 2025
8e13e15
fixing the test
chaitanyakamarapu Aug 18, 2025
26c179d
fix cast
xiaohanAMD Aug 18, 2025
63d749b
code refactor
xiaohanAMD Aug 18, 2025
e5f58da
add slice test
xiaohanAMD Aug 18, 2025
5074ede
add transpose test
xiaohanAMD Aug 18, 2025
cfe885d
Merge pull request #413 from Xilinx/chaitany.backport_simplify_convtr…
chaitanyakamarapu Aug 18, 2025
2d9dad5
address review comments
xiaohanAMD Aug 19, 2025
7e109a8
fix format
xiaohanAMD Aug 19, 2025
eefa6f0
fix format
xiaohanAMD Aug 19, 2025
dbe6719
Temporarly disabling the CombineParallelConv2DPattern
chaitanyakamarapu Aug 20, 2025
a585d43
Merge branch 'feature/onnx-to-tosa' into chaitany.disabling_combine_p…
chaitanyakamarapu Aug 20, 2025
60139d2
disabling the tests for combine conv
chaitanyakamarapu Aug 20, 2025
4867e28
Move check for recomposition of Layernorm without bias + add to cano…
jorickert Aug 19, 2025
a364c43
Add test for folding an add into RMSNorm
jorickert Aug 19, 2025
dbd0d83
Add canonicalization pattern to move mul into (RMS)Layernorm
jorickert Aug 19, 2025
71948db
Allow folding of an add into a layernorm if the bias is zero. Add mis…
jorickert Aug 19, 2025
56cdd98
Allow norm + bias fusion even if there is a reshape between them
jorickert Aug 20, 2025
e138ec7
disabling test
chaitanyakamarapu Aug 20, 2025
c0e32a7
test handling
chaitanyakamarapu Aug 20, 2025
b79cd62
test handling
chaitanyakamarapu Aug 20, 2025
3906536
test handling
chaitanyakamarapu Aug 20, 2025
a2be298
Merge pull request #415 from Xilinx/chaitany.disabling_combine_parall…
jorickert Aug 20, 2025
3a9fd90
do not replace dqop with its x input, to avoid dq with multi readers
xiaohanAMD Aug 20, 2025
82c381b
remove resize from pass
xiaohanAMD Aug 20, 2025
35c2fb4
only run pass when resize mode is nearest
xiaohanAMD Aug 20, 2025
9120641
Take concat order in account when combining
jorickert Aug 21, 2025
560c604
Merge pull request #417 from Xilinx/jrickert.concat_order
jorickert Aug 21, 2025
94c4da6
format
xiaohanAMD Aug 21, 2025
13cb4c9
add resize lit test
xiaohanAMD Aug 21, 2025
5342606
Remove attempt to create rewriter from not existing declarative rewri…
jorickert Aug 21, 2025
e8b0547
Merge pull request #418 from Xilinx/jorickert.remove_rewriter_cmake
jorickert Aug 21, 2025
9990047
Separate OnnxToMlirPasses from CompilerPasses
mgehre-amd Aug 21, 2025
8e83e3d
Use https://github.com/xilinx/llvm-aie.git as llvm-project
mgehre-amd Aug 21, 2025
97d6ca4
add dyn cast
xiaohanAMD Aug 21, 2025
bbe0de3
Make libs private
mgehre-amd Aug 21, 2025
033a463
Merge pull request #419 from Xilinx/matthias.new_addONNXToMLIRPasses_lib
mgehre-amd Aug 21, 2025
4576ecd
Update clone-mlir.sh
mgehre-amd Aug 21, 2025
0a665d9
Revert "Take concat order in account when combining parallel convs"
jorickert Aug 21, 2025
442d942
Merge pull request #421 from Xilinx/revert-417-jrickert.concat_order
jorickert Aug 21, 2025
5a200dd
check if scale , zp are all ScalarConstantTensor, only run dq, q arou…
xiaohanAMD Aug 21, 2025
edd9f5d
Merge remote-tracking branch 'origin/feature/onnx-to-tosa' into xiao.…
xiaohanAMD Aug 21, 2025
f97b948
Merge pull request #406 from Xilinx/chaitany.convtranspose_fixing_onn…
chaitanyakamarapu Jul 29, 2025
41d5508
fixing the test
chaitanyakamarapu Aug 21, 2025
e8ff7f8
Merge branch 'feature/onnx-to-tosa' into chaitany.convtranspose_backp…
chaitanyakamarapu Aug 21, 2025
c78aca7
Merge remote-tracking branch 'origin/feature/onnx-to-tosa' into xiao.…
xiaohanAMD Aug 21, 2025
8aaef29
Merge pull request #423 from Xilinx/chaitany.convtranspose_backport_f…
chaitanyakamarapu Aug 22, 2025
21cb45e
Merge branch 'feature/onnx-to-tosa' into xiao.add_remove_qdq_aroundop
xiaohanAMD Aug 22, 2025
e199822
clang-format
xiaohanAMD Aug 22, 2025
bdea6ce
Merge pull request #412 from xiaohanAMD/xiao.add_remove_qdq_aroundop
xiaohanAMD Aug 22, 2025
e434b53
Allow norm + scale fusion even if there is a reshape between them and…
jorickert Aug 20, 2025
b205103
Merge pull request #420 from Xilinx/matthias.change_llvm_repo
mgehre-amd Aug 22, 2025
edd033d
Apply suggestion from code review
jorickert Aug 22, 2025
23803bf
feat: pow to mul canonicalization with quantized exponent
kosh-rai Aug 25, 2025
4bc2be2
test: add testcase
kosh-rai Aug 25, 2025
b5eacf6
fix: Ensure scale and zero-point are scalars
kosh-rai Aug 25, 2025
3572831
fix: clearer comment for calculating dequantized value
kosh-rai Aug 25, 2025
04fa90e
Merge pull request #424 from Xilinx/kosh.pow.to.mul.canonicalization.…
kosh-rai Aug 25, 2025
8547acb
Re-remove attempt to create rewriter from not existing declarative re…
ljfitz Aug 25, 2025
61843f1
Merge pull request #425 from Xilinx/ljfitz.remove_rewriter_cmake
jorickert Aug 25, 2025
28b1716
remove_qdq_binary
Aug 26, 2025
2129d5d
Merge pull request #416 from Xilinx/jrickert.fuse_norms
jorickert Aug 26, 2025
fab3164
addressed review comments
Aug 27, 2025
bf64631
compile bug-fix
Aug 27, 2025
5a82ea7
removed extra comments
Aug 27, 2025
b42f67f
added utility isValuePreserving
Aug 27, 2025
605ea3c
Merge pull request #426 from SushmitaThakallapalli1980/sush.remove_qd…
SushmitaThakallapalli1980 Aug 27, 2025
4506b27
when weights are equally divisble to four, combining to single conv
chaitanyakamarapu Aug 29, 2025
81df9b6
fixing comment
chaitanyakamarapu Aug 29, 2025
6caf973
nit
chaitanyakamarapu Aug 29, 2025
9314dbe
Merge pull request #427 from Xilinx/chaitany.improving_convtranspose_…
chaitanyakamarapu Aug 30, 2025
4bce4f9
OnnxToTosa conversion: add option to only convert slice to tosa when …
mathmer-amd Sep 5, 2025
43fd370
return failure if cast failed
xiaohanAMD Sep 5, 2025
b654c07
Merge pull request #430 from xiaohanAMD/xiao.fix-qdqaroundop-crash
xiaohanAMD Sep 5, 2025
ea01c72
Fix duplicate symbol getGenOpMix<ONNXRoundOp>
mgehre-amd Sep 9, 2025
51b87e7
Add: prevent onnx to tosa legalization when the size (lhs most parame…
Sep 9, 2025
8745e3b
remove unnecessary space
Sep 10, 2025
8283c06
Merge pull request #432 from Xilinx/AIESW-11860.samnour2.stop_legaliz…
SamNour Sep 10, 2025
8d9f9d0
Add new option useOnnxModelTypesForCustomOps to allow using types fro…
jorickert Sep 10, 2025
ed88b44
Add shape inference for microsoft QuickGelu
jorickert Sep 10, 2025
b43d680
Fix typo
jorickert Sep 10, 2025
d61af31
Merge pull request #434 from Xilinx/jrickert.quick_gelu
jorickert Sep 10, 2025
4c5ced6
Merge branch 'feature/onnx-to-tosa' into jrickert.use_model_type_for_…
jorickert Sep 10, 2025
aced82d
Merge pull request #433 from Xilinx/jrickert.use_model_type_for_custo…
mgehre-amd Sep 11, 2025
07d5ce8
Merge pull request #431 from Xilinx/matthias.fix_duplicate_symbol
laurettaSchubert Sep 11, 2025
9f7d82d
call relevant getter for signed and unsigned ints
Sep 15, 2025
3704868
seprate signed unsigned and signless
Sep 15, 2025
5d2f70f
Merge pull request #435 from Xilinx/scalar_type_fix
ayanshul-amd Sep 15, 2025
1289209
Make old opset warning based on newest version in opset range, not ol…
jorickert Sep 16, 2025
189c863
Merge pull request #436 from Xilinx/jrickert.version_warning
jorickert Sep 16, 2025
2250084
Add ShapeInference for RandomUniform and RandomUniformLike.
jorickert Sep 17, 2025
0624efc
Fix return of pointer to local variable. TypeRange is not-owning and …
jorickert Sep 17, 2025
1c9f28b
convert negative indices correctly
p-lanza Sep 19, 2025
8d72440
Merge pull request #441 from Xilinx/planzase.AIESW-13111.gather_inval…
p-lanza Sep 19, 2025
b36aa95
check input shape is static
p-lanza Sep 19, 2025
6d54700
check dynamic indices
p-lanza Sep 19, 2025
86d29ea
Merge pull request #442 from Xilinx/planzase.AIESW-13111.gather_check…
jorickert Sep 19, 2025
80be0e5
Allow padValue to be non-constant
sayeddla Aug 12, 2025
e859e0c
review comments - cleanup handling of constant pad values
sayeddla Aug 12, 2025
6063633
Merge branch 'feature/onnx-to-tosa' into koshrai2.backport.pad.loweri…
kosh-rai Sep 19, 2025
3ba47e1
test: update lit-tests
kosh-rai Sep 19, 2025
8798e80
Merge pull request #444 from Xilinx/koshrai2.backport.pad.lowering.ch…
kosh-rai Sep 19, 2025
4e3672a
fixing a mismatch in 4x4 kernel usecase
chaitanyakamarapu Sep 19, 2025
8f70a00
simplifying
chaitanyakamarapu Sep 19, 2025
de4f902
Merge branch 'feature/onnx-to-tosa' into chaitany.fix_convtranpose_4x…
chaitanyakamarapu Sep 19, 2025
e4cf47f
Merge pull request #446 from Xilinx/chaitany.fix_convtranpose_4x4_mis…
chaitanyakamarapu Sep 19, 2025
6af39f5
feat: onnx.Not and onnx.Where optimization
Sep 23, 2025
f923eda
Merge pull request #438 from Xilinx/jrickert.stack_use
jorickert Sep 30, 2025
64527b0
Merge pull request #448 from Xilinx/liangta.not_where_opt
ge28boj Sep 30, 2025
ded645a
Only include perf tests if LLVM_INCLUDE_BENCHMARKS is enabled, as it …
jorickert Oct 2, 2025
589b7f2
Do not force the C++ standard to 17, if it is already set by an inclu…
jorickert Oct 2, 2025
8c64ff9
Do not modify compiler flags for in-tree build, this should be handle…
jorickert Oct 2, 2025
f1e99a8
Merge pull request #437 from Xilinx/jrickert.result_type_inference
jorickert Oct 2, 2025
2c7ef03
Merge pull request #449 from Xilinx/jrickert.perf_benchmark
jorickert Oct 2, 2025
2a49da8
Merge pull request #450 from Xilinx/jrickert.intree
jorickert Oct 2, 2025
cc2958a
Set CMAKE_CXX_STANDARD to 20 to allow building with newer protobuf ve…
jorickert Oct 6, 2025
3b12e41
Merge pull request #451 from Xilinx/jrickert.do_not_set_cache_variable
jorickert Oct 6, 2025
e47a8cd
Do create Cast operations with correct type, instead of relying on sh…
jorickert Oct 7, 2025
2bd0f01
Do not crash when verifiying/shape-infering GridSample if inputs have…
jorickert Oct 7, 2025
a4c081c
Merge pull request #452 from Xilinx/jrickert.dynamic_shapes
jorickert Oct 8, 2025
7c83832
Do not emit error in shape inference if this error only means that th…
jorickert Oct 9, 2025
ac97f19
Merge pull request #455 from Xilinx/jrickert.error_in_shape_inference
jorickert Oct 9, 2025
c58cf70
Adjust IndexExprBuilderForAnalysis::getConst to not only handle onnx.…
jorickert Oct 9, 2025
3c980df
Merge pull request #454 from Xilinx/jrickert.mixed_dialects
jorickert Oct 9, 2025
2aa5715
fix crash during ConstantOfShape decomposition
Oct 17, 2025
2760083
Merge pull request #458 from Xilinx/liangta.ConstantOfShape_crash
ge28boj Oct 20, 2025
a9a2cec
Add decomposition for microsoft BiasGelu
jorickert Oct 8, 2025
2dbf4f3
Add decomposition for microsoft FusedConv
jorickert Oct 20, 2025
24f4192
Add decomposition of microsoft SkipLayerNorm
jorickert Oct 22, 2025
bccacea
Add decomposition for SimplifiedLayerNorm
jorickert Oct 22, 2025
0019e50
Add decomposition of SkipSimplifiedLayerNormalization
jorickert Oct 22, 2025
834e2e9
Replace usage of deprecated functions
jorickert Oct 22, 2025
1960957
bump onnx to v1.19.1
p-lanza Oct 27, 2025
8c27f22
update onnx python package version
p-lanza Oct 28, 2025
dcbf576
Use an early exit instead of large if body
jorickert Oct 28, 2025
2656a25
feat: Match LayerNorm decomposition pattern with transposing original…
ehsan-toosi Oct 24, 2025
2a89e14
feat: add single lit test for recompose-onnx pass
ehsan-toosi Oct 24, 2025
4555efd
feat: fix clang-tidy issue
ehsan-toosi Oct 24, 2025
fb69354
fix: address comments and add more tests
ehsan-toosi Oct 27, 2025
4e5bc98
Merge pull request #462 from ehsan-toosi/enadjara.layernorm_with_tran…
ehsan-toosi Oct 29, 2025
974795f
Merge pull request #459 from Xilinx/jrickert.decompose
jorickert Oct 29, 2025
74c6472
update protobuf version to 25.3
p-lanza Oct 29, 2025
29a18ad
Add comment to not maintained script
jorickert Oct 30, 2025
f382ab8
Regenerate tblgen files with new onnx version
jorickert Oct 30, 2025
0c59ba4
Do not assert if an node with subgraph does not implement HasOnnxSubg…
jorickert Oct 29, 2025
6247d07
Add assert for not-custom ops
jorickert Oct 30, 2025
81d2871
Merge pull request #466 from Xilinx/jrickert.backport
jorickert Oct 30, 2025
e28cef4
Merge pull request #461 from Xilinx/planzase.bump_onnx_v1.19.1
jorickert Oct 30, 2025
e6a3485
Refactor: Move InstanceNorm→LayerNorm from Canonicalize to Decompose
ayanshul-amd Oct 30, 2025
5e2ee82
ONNXConstantOp: Allow extra attributes (parser/printer)
mgehre-amd Oct 30, 2025
f976234
Add ResultNames attributes to imported ops
mgehre-amd Oct 30, 2025
b7dc57c
Address review comments: move enableInstanceNormDecompose to end and …
ayanshul-amd Oct 30, 2025
f7033c9
Fix e2e test: use --EmitONNXIR to run decomposition pass
ayanshul-amd Oct 30, 2025
9b043b7
Merge pull request #465 from Xilinx/move_instancenorm_pattern
ayanshul-amd Oct 30, 2025
d054bd0
fix: refactor suitableAxis func in recompose pass
ehsan-toosi Oct 29, 2025
8139ea5
Merge pull request #464 from ehsan-toosi/enadjara.code_refactor
jorickert Oct 31, 2025
aaf7f92
FoldBinaryThroughQDQ: prevent invalid read access (#470)
mathmer-amd Oct 31, 2025
efe9701
Handle default attributes in decomposition
jorickert Oct 31, 2025
23050e2
Merge pull request #472 from Xilinx/jrickert.default_attrs
jorickert Oct 31, 2025
c32cd27
include Attention and RotaryEmbedding ops
p-lanza Oct 28, 2025
c207fb3
shape inference for rotaryEmbedding and Attention
p-lanza Oct 29, 2025
24168c6
add verifiers
p-lanza Oct 29, 2025
781c3e3
address review comments
p-lanza Oct 31, 2025
de1d2df
Merge pull request #467 from Xilinx/planzase.rotary-embedding_and_att…
p-lanza Nov 3, 2025
c69ba80
Merge remote-tracking branch 'origin/feature/onnx-to-tosa' into matth…
mgehre-amd Nov 5, 2025
99c057f
Merge pull request #468 from Xilinx/matthias.attributes_on_constant
mgehre-amd Nov 6, 2025
9f0e17d
Mark both the input and output of custom ops as variadic, to allow co…
jorickert Nov 6, 2025
8e614df
Always try to take the element type from custom ops, instead of guessing
jorickert Nov 7, 2025
ac10142
Merge pull request #474 from Xilinx/jrickert.custom_types
jorickert Nov 7, 2025
bc9ebf3
Add support for AMD Quarks BFPQuantizeDequantizeOp
jorickert Nov 7, 2025
2be7757
Allow the import of not-builtin domains and add POC support for com.a…
jorickert Nov 7, 2025
cdd9f56
Add documentation on how to add ops from not-builtin domains
jorickert Nov 10, 2025
17c0b81
Merge pull request #475 from Xilinx/jrickert.mx6
jorickert Nov 10, 2025
0e5e9bd
Handle aliasing of "" domain and "ai.onnx" domain.
jorickert Nov 11, 2025
d6a01d2
Merge pull request #477 from Xilinx/jrickert.ai_onnx_domain
jorickert Nov 11, 2025
18c9475
Add BF16 support to AMDQuarkBFPQuantizeDequantizeOp
jorickert Nov 11, 2025
e3ebc5f
Update AMDQuarkOps.td with link to documentation
jorickert Nov 11, 2025
ae99b99
Merge pull request #479 from Xilinx/jrickert.bfpqdqbf16
jorickert Nov 11, 2025
c611584
Merge remote-tracking branch 'origin/feature/onnx-to-tosa' into matth…
mgehre-amd Nov 12, 2025
25195af
Remove unnecessary diff
mgehre-amd Nov 12, 2025
8d393f1
Merge pull request #469 from Xilinx/matthias.result_names
mgehre-amd Nov 12, 2025
7d9f4ec
feat: sigmoid constprop
Nov 12, 2025
bfe1d1c
Merge pull request #480 from Xilinx/liangta.sigmoid_const_prop
ttjost Nov 12, 2025
bdc8b97
[AIESW-17979] ONNXToTOSA reject DequantizeLinear on dynamic input
gerion-amd Nov 12, 2025
70255c4
convert split to slice
ayanshul-amd Nov 12, 2025
8fdd35e
Merge pull request #481 from Xilinx/add_split_decomposition
ayanshul-amd Nov 13, 2025
bd09ba4
DequantizeLinear: clarify reasoning behind dynamic reject
gerion-amd Nov 13, 2025
98c0f35
Merge pull request #482 from Xilinx/gentrup.AIESW-17979.dequantize-li…
gerion-amd Nov 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions .buildbot/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -49,25 +49,25 @@ def call() {
DOCKER_DAEMON_SOCKET = 'unix://var/run/docker.sock'
DOCKER_REGISTRY_TOKEN_ACCESS = 'true'
/* Settings for docker.io */
/*
DOCKER_REGISTRY_HOST_NAME = ''
DOCKER_REGISTRY_USER_NAME = 'onnxmlir'
DOCKER_REGISTRY_LOGIN_NAME = 'onnxmlir'
*/
/* Settings for ghcr.io */
/*
DOCKER_REGISTRY_HOST_NAME = 'ghcr.io'
DOCKER_REGISTRY_USER_NAME = 'onnxmlir'
DOCKER_REGISTRY_LOGIN_NAME = 'onnxmlir'
*/

/* Credentials defined in Jenkins */
JENKINS_REST_API_TOKEN = credentials('Jenkins-REST-API-Token')
GITHUB_REPO_ACCESS_TOKEN = credentials('jenkins-buildbot-access-token')
/* Settings for docker.io */
/*
DOCKER_REGISTRY_LOGIN_TOKEN = credentials('DOCKERHUB-ONNXMLIR-TOKEN')
*/
/* Settings for ghcr.io */
/*
DOCKER_REGISTRY_LOGIN_TOKEN = credentials('GITHUB-ONNXMLIR-TOKEN')
*/

/* Environment variables that depend on the arch */
JENKINS_REST_API_URL = sh(returnStdout: true,
Expand Down
4 changes: 2 additions & 2 deletions .buildbot/jenkins-build-llvm-project.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
LLVM_PROJECT_DOCKERFILE = "docker/Dockerfile.llvm-project"
LLVM_PROJECT_GITHUB_URL = "https://api.github.com/repos/llvm/llvm-project"
LLVM_PROJECT_BASE_IMAGE = {
"static": "ubuntu:jammy",
"static": "ghcr.io/onnxmlir/ubuntu:jammy",
"shared": "registry.access.redhat.com/ubi8-minimal:latest",
}
LLVM_PROJECT_IMAGE = {
Expand Down Expand Up @@ -187,7 +187,7 @@ def setup_per_pr_llvm_project(image_type, exp):
):
if "stream" in line:
# Keep track of the latest successful image layer
m = re.match("^\s*---> ([0-9a-f]+)$", line["stream"])
m = re.match(r"^\s*---> ([0-9a-f]+)$", line["stream"])
if m:
layer_sha256 = m.group(1)
print(line["stream"], end="", flush=True)
Expand Down
2 changes: 1 addition & 1 deletion .buildbot/jenkins-build-onnx-mlir.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ def build_per_pr_onnx_mlir(image_type, exp):
):
if "stream" in line:
# Keep track of the latest successful image layer
m = re.match("^\s*---> ([0-9a-f]+)$", line["stream"])
m = re.match(r"^\s*---> ([0-9a-f]+)$", line["stream"])
if m:
layer_sha256 = m.group(1)
print(line["stream"], end="", flush=True)
Expand Down
2 changes: 1 addition & 1 deletion .buildbot/jenkins-watch-llvm-project.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ def build_watch_image(repo, commit, dockerfile, base_image, image_repo, image_ta
):
if "stream" in line:
# Keep track of the latest successful image layer
m = re.match("^\s*---> ([0-9a-f]+)$", line["stream"])
m = re.match(r"^\s*---> ([0-9a-f]+)$", line["stream"])
if m:
layer_sha256 = m.group(1)
print(line["stream"], end="", flush=True)
Expand Down
11 changes: 6 additions & 5 deletions .buildbot/jenkins_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,11 @@
MEMORY_IN_GB = os.sysconf("SC_PAGE_SIZE") * os.sysconf("SC_PHYS_PAGES") / (1024.0**3)
NPROC = str(math.ceil(min(max(2, MEMORY_IN_GB / 8), os.cpu_count())))

RETRY_LIMIT = 5
RETRY_LIMIT = 10
READ_CHUNK_SIZE = 1024 * 1024
BASE_BRANCH = "main"

DOCKER_API_TIMEOUT = 3600
DOCKER_DIST_MANIFEST = "application/vnd.docker.distribution.manifest.v2+json"
DOCKER_DIST_MANIFEST_LIST = "application/vnd.docker.distribution.manifest.list.v2+json"

Expand All @@ -47,7 +48,7 @@
docker_registry_login_token = os.getenv("DOCKER_REGISTRY_LOGIN_TOKEN")
docker_registry_token_access = os.getenv("DOCKER_REGISTRY_TOKEN_ACCESS")
docker_rwlock = fasteners.InterProcessReaderWriterLock(docker_pushpull_rwlock)
docker_api = docker.APIClient(base_url=docker_daemon_socket)
docker_api = docker.APIClient(base_url=docker_daemon_socket, timeout=DOCKER_API_TIMEOUT)

github_repo_access_token = os.getenv("GITHUB_REPO_ACCESS_TOKEN")
github_repo_name = os.getenv("GITHUB_REPO_NAME")
Expand Down Expand Up @@ -119,12 +120,12 @@ def strtobool(s: str) -> bool:
def compute_file_sha1(file_name):
"""Compute sha1 of a file."""

sha1sum = hashlib.sha1()
sha3_256sum = hashlib.sha3_256()
try:
with open(file_name, "rb") as f:
for data in iter(lambda: f.read(READ_CHUNK_SIZE), b""):
sha1sum.update(data)
return sha1sum.hexdigest()
sha3_256sum.update(data)
return sha3_256sum.hexdigest()
except:
return ""

Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/black-format-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: psf/black@stable
with:
options: "--check --exclude third_party"
Expand Down
16 changes: 15 additions & 1 deletion .github/workflows/macos-amd64-build.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: GitHub Action MacOS amd64

on: [push, pull_request]
on:
pull_request:
push:
branches: [ main, feature/onnx-to-tosa ]

jobs:
build:
Expand All @@ -18,6 +21,12 @@ jobs:
- name: install tools that are needed for compilation
run: |
brew install automake ninja pybind11
- name: ccache
uses: hendrikmuhs/[email protected]
with:
# Create symlinks to intercept compiler calls without modifying the cmake invocation
create-symlink: true
key: ${{ runner.os }}-ccache
- name: install protobuf
run: |
cd ~/work
Expand Down Expand Up @@ -46,6 +55,8 @@ jobs:
python3 -m pip install -v .
- name: build onnx-mlir
run: |
# Disable stablehlo to ease bumping; we don't need it.
export EXTRA_CMAKE_ARGS="-DONNX_MLIR_ENABLE_STABLEHLO=OFF -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
cd ~/work/onnx-mlir
sh ~/work/onnx-mlir/onnx-mlir/utils/install-onnx-mlir.sh
- name: build and run docs/doc_example tests
Expand All @@ -57,6 +68,9 @@ jobs:
cd ~/work/onnx-mlir
sh ~/work/onnx-mlir/onnx-mlir/utils/check-unittest.sh
- name: run onnx-mlir backend and numerical tests
# Those tests are not relevant to the work on the xilinx fork, but take
# 40 min. Don't run them on PRs.
if: github.event_name != 'pull_request'
run: |
cd ~/work/onnx-mlir
sh ~/work/onnx-mlir/onnx-mlir/utils/check-onnx-backend-numerical.sh
86 changes: 86 additions & 0 deletions .github/workflows/ubuntu-build-intree.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: In-tree build

on:
pull_request:
push:
branches: [ main, feature/onnx-to-tosa ]

concurrency:
# Build every push.
# Only build the newest PR; cancel older builds of a PR
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
build-intree:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: install tools that are needed for compilation
run: |
sudo apt-get update
sudo apt-get install -y gcc g++ cmake ninja-build
- name: Setup ccache
uses: hendrikmuhs/ccache-action@v1
with:
# A full build seems to take ~ 250 MB. Leave a bit more room
# so we don't run out of cache space in the future.
max-size: 400M
key: ccache-intree
create-symlink: true

- name: install dependencies
run: |
utils/install-protobuf.sh
utils/install-venv.sh

- name: clone llvm-project
run: sh utils/clone-mlir.sh

- name: build
run: |
cmake llvm-project/llvm \
-Bbuild \
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_PROJECTS=mlir \
-DLLVM_EXTERNAL_PROJECTS="onnx-mlir" \
-DONNX_MLIR_ENABLE_STABLEHLO=OFF \
-DONNX_MLIR_ENABLE_PYBIND=OFF \
-DLLVM_EXTERNAL_ONNX_MLIR_SOURCE_DIR=. \
-DLLVM_TARGETS_TO_BUILD=host \
-DLLVM_BUILD_TOOLS=OFF \
-DLLVM_BUILD_UTILS=OFF \
-DLLVM_BUILD_RUNTIMES=OFF \
-DLLVM_ENABLE_ASSERTIONS=ON \
-DLLVM_ENABLE_RTTI=ON \
-DLLVM_ENABLE_LIBEDIT=OFF \
-DLLVM_USE_LINKER=lld \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache

cmake --build build --target onnx-mlir

- name: run LIT tests
run: |
export LIT_OPTS=-v
cmake --build build --target check-onnx-lit


- name: build and run docs/doc_example tests
run: |
cd ..
sh onnx-mlir/utils/check-doc-example.sh

- name: build and run unit tests
run: |
cd ..
sh onnx-mlir/utils/check-unittest.sh
68 changes: 68 additions & 0 deletions .github/workflows/ubuntu-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Out-of-tree build

on:
push:
branches: [ main ]

concurrency:
# Build every push to main
# Only build the newest PR; cancel older builds of a PR
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: install tools that are needed for compilation
run: |
sudo apt-get update
sudo apt-get install -y gcc g++ cmake ninja-build
- name: Setup ccache
uses: hendrikmuhs/ccache-action@v1
with:
# A full build of llvm, clang, lld, and lldb takes about 250MB
# of ccache space. There's not much reason to have more than this,
# because we usually won't need to save cache entries from older
# builds. Also, there is an overall 10GB cache limit, and each
# run creates a new cache entry so we want to ensure that we have
# enough cache space for all the tests to run at once and still
# fit under the 10 GB limit.
max-size: 500M
key: ccache
create-symlink: true

- name: install dependencies
run: |
utils/install-protobuf.sh
utils/install-venv.sh

- name: clone & build MLIR
run: |
cd ..
export EXTRA_CMAKE_ARGS="-DLLVM_USE_LINKER=lld -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
sh onnx-mlir/utils/clone-mlir.sh
sh onnx-mlir/utils/build-mlir.sh

- name: build onnx-mlir
run: |
cd ..
export EXTRA_CMAKE_ARGS="-DONNX_MLIR_ENABLE_STABLEHLO=OFF -DLLVM_USE_LINKER=lld -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
bash onnx-mlir/utils/install-onnx-mlir.sh

- name: build and run docs/doc_example tests
run: |
cd ..
sh onnx-mlir/utils/check-doc-example.sh

- name: build and run unit tests
run: |
cd ..
sh onnx-mlir/utils/check-unittest.sh
Loading