Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix remaining warnings on Windows and turn on warning-as-error #1706

Merged
merged 17 commits into from
Sep 27, 2022

Conversation

sstamenova
Copy link
Collaborator

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

  • The check-docs target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe
  • The Windows CI build now builds onnx first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
  • The remaining warnings (4927) in ConstProp.cpp are disabled because they will require a comprehensive change to ConstProp.td. I'll create an issue to track this.

@sstamenova
Copy link
Collaborator Author

@AlexandreEichenberger : All the warnings on Windows are fixed and I've set up the Windows CI to enable werror. I tried to do it for other platforms also, but there are failures on Ubuntu with gcc (I use clang and the clang build is green), so I backed that part of the change out.

@tungld
Copy link
Collaborator

tungld commented Sep 21, 2022

The remaining warnings (4927) in ConstProp.cpp are disabled because they will require a comprehensive change to ConstProp.td. I'll create an issue to track this.

I have no idea why it happens, but try to guess. Could you try this change to see if it can remove the warning:

--- a/src/Transform/ONNX/ConstProp.cpp
+++ b/src/Transform/ONNX/ConstProp.cpp
@@ -351,7 +351,7 @@ void IterateConstPropElementwiseBinary(char *lhs, char *rhs,
 /// Do element-wise binary calculation of 'lhs' and 'rhs' values and create an
 /// ONNXConstantOp for the result.
 template <typename ElementwiseBinaryOp>
-ONNXConstantOp ConstPropElementwiseBinary(
+Value ConstPropElementwiseBinary(
     PatternRewriter &rewriter, Value replacingValue, Value lhs, Value rhs) {
   Type elementType =
       replacingValue.getType().cast<ShapedType>().getElementType();
@@ -383,7 +383,7 @@ ONNXConstantOp ConstPropElementwiseBinary(
   ONNXConstantOp res =
       createConstantOpAndStoreBufferPtr(rewriter, replacingValue, resArray);

-  return res;
+  return res.getResult();
 }

sstamenova and others added 11 commits September 21, 2022 10:42
Signed-off-by: Stella Stamenova <[email protected]>
* extend onnx-mlir to take json input

either from file with .json extension or from STDIN

the json input is read as a json serialization of the onnx protobuf format

Signed-off-by: Soren Lassen <[email protected]>

* added onnx2json script

Signed-off-by: Soren Lassen <[email protected]>

* added first parse lit test

Signed-off-by: Soren Lassen <[email protected]>

* added failing parse lit test

Signed-off-by: Soren Lassen <[email protected]>

* added parse lit test that needs --useOnnxModelTypes

Signed-off-by: Soren Lassen <[email protected]>

* added failing map type parse lit test

Signed-off-by: Soren Lassen <[email protected]>

* simplied onnx import

Signed-off-by: Soren Lassen <[email protected]>

* made lit test runner include json files

and renamed all the parse lit tests from .json.mlir to just .json

Signed-off-by: Soren Lassen <[email protected]>

* tweak RUN commands to make MLIR-Windows-CI build pass

MLIR-Windows-CI seems to run in powershell and I couldn't come
up with a cross-platform way to pipe from a command with a
non-zero error code directly into FileCheck, so instead piping the
stderror output to a file and then piping that file into FileCheck

Signed-off-by: Soren Lassen <[email protected]>

* ignore "//" comment lines in json

Signed-off-by: Soren Lassen <[email protected]>

* elaborated comment explaining the onnx2json.py script's purpose

Signed-off-by: Soren Lassen <[email protected]>

* removed new functionality to read input from stdin

Signed-off-by: Soren Lassen <[email protected]>

* added short comments stating what the graph in each parse lit test is building

Signed-off-by: Soren Lassen <[email protected]>

* warn about end-of-line // comments in json input

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
* compiled and run

Signed-off-by: chentong319 <[email protected]>

* restore CompilerPasses.cpp

* handle copy

Signed-off-by: chentong319 <[email protected]>

* use attr

Signed-off-by: chentong319 <[email protected]>

* lit test

Signed-off-by: chentong319 <[email protected]>

* dealloc test

Signed-off-by: chentong319 <[email protected]>

* doc

Signed-off-by: chentong319 <[email protected]>

* format

Signed-off-by: chentong319 <[email protected]>

* ordering

Signed-off-by: chentong319 <[email protected]>

* format

Signed-off-by: chentong319 <[email protected]>

* change attr

Signed-off-by: chentong319 <[email protected]>

* doc

Signed-off-by: chentong319 <[email protected]>

* fix erase

Signed-off-by: chentong319 <[email protected]>

* doc

Signed-off-by: chentong319 <[email protected]>

* format

Signed-off-by: chentong319 <[email protected]>

* comment

Signed-off-by: chentong319 <[email protected]>

* response

Signed-off-by: chentong319 <[email protected]>

Signed-off-by: chentong319 <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
* Shape op replace

Signed-off-by: Philip Lassen <[email protected]>

* Run clang format

Signed-off-by: Philip Lassen <[email protected]>

* Fix NNPA Shape for opset 15

Signed-off-by: Philip Lassen <[email protected]>

* Fix shape in NNPA

Signed-off-by: Philip Lassen <[email protected]>

* Some more progress

Signed-off-by: Philip Lassen <[email protected]>

* Fix shape inference and lowering

Signed-off-by: Philip Lassen <[email protected]>

* Use std::tie

Signed-off-by: Philip Lassen <[email protected]>

* Add clean up

Signed-off-by: Philip Lassen <[email protected]>

* Rename ONNXShape to CreateShapeOp

Signed-off-by: Philip Lassen <[email protected]>

* fix lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Fix tablegen pattern and improve normalize function name

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
* lower if

added lit tests and backend test

updated SupportedONNXOps-cpu.md

Signed-off-by: Soren Lassen <[email protected]>

* remove unnecessary cast

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
* Add Shape op verifier

Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
* cleanup of spelling and variable naming convention in gen_onnx_mlir and a few other places

Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
# Conflicts:
#	src/Compiler/CompilerUtils.cpp
#	src/Dialect/ONNX/ONNXOps.td.inc
#	test/mlir/onnx/parse/zipmap.json
#	utils/gen_onnx_mlir.py
#	utils/onnx2json.py
@sstamenova
Copy link
Collaborator Author

@AlexandreEichenberger: I'd like to get this committed sooner rather than later, so that we don't have to deal with new warnings being introduced in the mean time.

Copy link
Collaborator

@tungld tungld left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@sstamenova sstamenova merged commit 9795440 into onnx:main Sep 27, 2022
@sstamenova sstamenova deleted the cleanupandwarnings branch September 27, 2022 15:52
@jenkins-droid
Copy link
Collaborator

Jenkins Linux amd64 Build #7807 [push] Fix remaining warnings o... started at 10:52

@jenkins-droid
Copy link
Collaborator

Jenkins Linux ppc64le Build #6871 [push] Fix remaining warnings o... started at 11:55

@jenkins-droid
Copy link
Collaborator

Jenkins Linux s390x Build #7824 [push] Fix remaining warnings o... started at 11:52

@jenkins-droid
Copy link
Collaborator

Jenkins Linux amd64 Build #7807 [push] Fix remaining warnings o... passed after 1 hr 30 min

@jenkins-droid
Copy link
Collaborator

Jenkins Linux ppc64le Build #6871 [push] Fix remaining warnings o... passed after 2 hr 7 min

@jenkins-droid
Copy link
Collaborator

Jenkins Linux s390x Build #7824 [push] Fix remaining warnings o... passed after 2 hr 48 min

hamptonm1 added a commit that referenced this pull request Oct 11, 2022
* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (#1758)

closes #1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue #1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
chentong319 added a commit to chentong319/onnx-mlir that referenced this pull request Oct 12, 2022
* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (onnx#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (onnx#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (onnx#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (onnx#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (onnx#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (onnx#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (onnx#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (onnx#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (onnx#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (onnx#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (onnx#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (onnx#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (onnx#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (onnx#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (onnx#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (onnx#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (onnx#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (onnx#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (onnx#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (onnx#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (onnx#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (onnx#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (onnx#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (onnx#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (onnx#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (onnx#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (onnx#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (onnx#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (onnx#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (onnx#1758)

closes onnx#1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue onnx#1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (onnx#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (onnx#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
chentong319 added a commit that referenced this pull request Oct 13, 2022
* update shape inference and test

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* Update onnx-mlir product version (#1727)

* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (#1758)

closes #1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue #1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>

* different initial

Signed-off-by: chentong319 <[email protected]>

Signed-off-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: hamptonm1 <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
gargaroff pushed a commit to ljfitz/onnx-mlir that referenced this pull request Nov 3, 2022
* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (onnx#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (onnx#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (onnx#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (onnx#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (onnx#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (onnx#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (onnx#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (onnx#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (onnx#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (onnx#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (onnx#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (onnx#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (onnx#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (onnx#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (onnx#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (onnx#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (onnx#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (onnx#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (onnx#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (onnx#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (onnx#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (onnx#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (onnx#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (onnx#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (onnx#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (onnx#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (onnx#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (onnx#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (onnx#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (onnx#1758)

closes onnx#1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue onnx#1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (onnx#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (onnx#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
gargaroff pushed a commit to ljfitz/onnx-mlir that referenced this pull request Nov 3, 2022
* update shape inference and test

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* Update onnx-mlir product version (onnx#1727)

* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (onnx#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (onnx#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (onnx#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (onnx#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (onnx#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (onnx#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (onnx#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (onnx#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (onnx#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (onnx#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (onnx#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (onnx#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (onnx#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (onnx#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (onnx#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (onnx#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (onnx#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (onnx#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (onnx#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (onnx#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (onnx#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (onnx#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (onnx#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (onnx#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (onnx#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (onnx#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (onnx#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (onnx#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (onnx#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (onnx#1758)

closes onnx#1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue onnx#1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (onnx#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (onnx#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>

* different initial

Signed-off-by: chentong319 <[email protected]>

Signed-off-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: hamptonm1 <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
gargaroff pushed a commit to ljfitz/onnx-mlir that referenced this pull request Nov 8, 2022
* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (onnx#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (onnx#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (onnx#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (onnx#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (onnx#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (onnx#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (onnx#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (onnx#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (onnx#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (onnx#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (onnx#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (onnx#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (onnx#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (onnx#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (onnx#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (onnx#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (onnx#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (onnx#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (onnx#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (onnx#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (onnx#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (onnx#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (onnx#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (onnx#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (onnx#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (onnx#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (onnx#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (onnx#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (onnx#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (onnx#1758)

closes onnx#1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue onnx#1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (onnx#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (onnx#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
gargaroff pushed a commit to ljfitz/onnx-mlir that referenced this pull request Nov 8, 2022
* update shape inference and test

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* lowering

Signed-off-by: chentong319 <[email protected]>

* Update onnx-mlir product version (onnx#1727)

* Update onnx-mlir product version

Signed-off-by: Megan Hampton <[email protected]>

* fix einsum decomposition bug (onnx#1730)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update version to 0.3.1 (onnx#1728)

Signed-off-by: Megan Hampton <[email protected]>

* Fix issues to compile Yolov3-12. (onnx#1726)

Stop conversion to enable onnx.LeakyRelu on NNPA when the stickified layouts of input and output are not the same.
Signed-off-by: Yasushi Negishi <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* simplified if lowering (onnx#1717)

borrowed ideas from ConvertTrivialIfToSelect from
https://github.com/llvm/llvm-project/blob/main/mlir/lib/Dialect/SCF/IR/SCF.cpp

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add definitions

Signed-off-by: Megan Hampton <[email protected]>

* parse string type from getTypeMap() (onnx#1735)

added a parse lit test that passes with this fix

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix 2 compiler warnings (onnx#1736)

* fix sprintf-is-deprecated clang warning

warning from Apple clang version 14.0.0 (clang-1400.0.29.201):
```
.../src/Conversion/ONNXToKrnl/PerfectHash.cpp:47:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(str, "%lld", (long long)val);
/Library/Developer/CommandLineTools/SDKs/MacOSX13.0.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
```

Signed-off-by: Soren Lassen <[email protected]>

* fix copy constructor warning

copied solution from InstrumentONNXPass.cpp

fixes compiler warning in Linux CI pipelines:
```
.../src/Transform/ONNX/ConvOpt.cpp: In copy constructor '{anonymous}::ConvOptONNXToONNXPass::ConvOptONNXToONNXPass(const {anonymous}::ConvOptONNXToONNXPass&)':
.../src/Transform/ONNX/ConvOpt.cpp:211:3: warning: base class 'class mlir::PassWrapper<{anonymous}::ConvOptONNXToONNXPass, mlir::OperationPass<mlir::func::FuncOp> >' should be explicitly initialized in the copy constructor [-Wextra]
   ConvOptONNXToONNXPass(const ConvOptONNXToONNXPass &pass) {}
```

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* cleanup some include files (onnx#1733)

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix remaining warnings on Windows and turn on warning-as-error (onnx#1706)

This change applies the remaining fixes needed for warnings to be treated as errors on Windows and then turns them on on Windows only. Of particular interest are a couple of changes:

* The `check-docs` target needs an update to properly parse the directive even when it contains parenthesis in the path. For example: `C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python39_64/python.exe`
* The Windows CI build now builds `onnx` first and then builds all of the targets that are enabled in onnx-mlir. This will make sure that no targets get missed
* The remaining warnings (4927) in `ConstProp.cpp` are fixed as well.

Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix synax

Signed-off-by: Megan Hampton <[email protected]>

* Simplify shape-related operations (onnx#1695)

* Simplify shape-related operations

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* run-onnx-lib script and docs fixes (onnx#1705)

* update documentation for build-run-onnx-lib.sh
* clarified Mac issue with running statically linked version in the directory where model library was built
* moved usage string up to the top of RunONNXLib.cpp, so it's visible next to the top of file block comment,
* allow llvm-project location to be set with LLVM_PROJECT, otherwise read from $MLIR_DIR if defined

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* remove initializedTensors map from ONNX parser (onnx#1739)

instead insert a constant for each initializer in the frontend_symbols_
symbol map

this is better for several reasons:

1. initializedTensors were incorrectly visible to function bodies (in
   TryImportFunctionCallNode)

2. nested bindings didn't hide initializedTensors within their scope

3. it's more efficient to create a constant for each initializer once
   rather than every time an initializer is accessed

4. it's simpler to look up a single symbol mapping

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add decompositions for v11 split, squeeze, and unsqueeze (onnx#1702)

* Add decompositions for v11 split, squeeze, and unsqueeze

Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>

* Fix lit test

Signed-off-by: Philip Lassen <[email protected]>

* Add lit tests

Signed-off-by: Philip Lassen <[email protected]>

* Delete unneccesary decomp for unsqueeze

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* factored input shaping into ModelInputShaper (onnx#1740)

* factored input shaping into ModelInputShaper

this makes the it easier to read and understand the input shaping
logic and also makes the rest of the FrontendDialectTransformer
implementation shorter and easier to read

Signed-off-by: Soren Lassen <[email protected]>

* documented public methods

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Ingest all of Opset 16  (onnx#1704)

* Ingest al of opset 16

Signed-off-by: Philip Lassen <[email protected]>

* Delete GridSample test which is no longer relevant

Signed-off-by: Philip Lassen <[email protected]>

* Use NullStringAttr insead of "none" string

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix onnx-mlir.py docker wrapper (onnx#1734)

* Requiring input files to have known suffix (.onnx, .json, or .mlir) greatly
simplifies the onnx-mlir.py docker wrapper.

Signed-off-by: Gong Su <[email protected]>

* Return exit code

Signed-off-by: Gong Su <[email protected]>

* Add copyright notice

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Update protobuf (onnx#1747)

* Update to protobuf 3.20.2

Signed-off-by: Charles Volzka <[email protected]>

* Try 3.18.3

Signed-off-by: Charles Volzka <[email protected]>

Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add the product version and fix formatting

Signed-off-by: Megan Hampton <[email protected]>

* Make updates to product version

Signed-off-by: Megan Hampton <[email protected]>

* further updates

Signed-off-by: Megan Hampton <[email protected]>

* Add product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Removed the memory leaks directly in execution session (onnx#1746)

* removed the memory leaks directly in execution session
Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Add support for ArgMin (onnx#1737)

* add support for ArgMin

Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Inclusive terminology update (onnx#1750)

* Update `master` reference to `main` in onnx-mlir doc
* Update rapidcheck to newer commit with inclusive terminology changes
* Update benchmark to 1.6.2 with inclusive terminology changes
* Update pybind11 to 2.10 with inclusive terminology changes

Signed-off-by: Megan Hampton <[email protected]>

* Warning and instructions that --onnx-op-stats needs more than EmitONNXIR (onnx#1719)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Move product version text file

Signed-off-by: Megan Hampton <[email protected]>

* Remove comment

Signed-off-by: Megan Hampton <[email protected]>

* Output the product version for the compiler/version

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* setup.py install is deprecated, use pip install instead (onnx#1752)

* setup.py install is deprecated, use pip install instead (see https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for more details).

Signed-off-by: Gong Su <[email protected]>

* - pip install doesn't work for protobuf, revert back to setup.py install
- use --cpp_implementation for better performance

Signed-off-by: Gong Su <[email protected]>

* Update Windows CI

Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* adding reference to onnx-mlir-serving (onnx#1745)

Signed-off-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* [TOSA] Update type converter and unary ops (onnx#1553)

Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Remove strip

Signed-off-by: Megan Hampton <[email protected]>

* Revert "Cleaned up commit of the InferTypes change. (onnx#1753)"

This reverts commit d08c5ac.

Signed-off-by: Megan Hampton <[email protected]>

* Cleaned up commit of the InferTypes change. (onnx#1753)

Signed-off-by: Brad Messer <[email protected]>

Co-authored-by: Soren Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix for GatherND verifier (onnx#1754)

Co-authored-by: Hadi Jooybar <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Fix OnnxBuilder::concat where axis was not used (onnx#1759)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Simplify GatherOp when its inputs are dimensions (onnx#1755)

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Assign each question mark a unique negative integer value (onnx#1757)

* Assign each question mark a unique negative integer value

Signed-off-by: Tung D. Le <[email protected]>

* Add a mutex to protect the counter

Signed-off-by: Tung D. Le <[email protected]>

* Using decrement

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Change the regex

Signed-off-by: Megan Hampton <[email protected]>

* Fix regex and display product numbers

Signed-off-by: Megan Hampton <[email protected]>

* normalize axis in ScatterElements verify (onnx#1760)

Signed-off-by: Philip Lassen <[email protected]>

Signed-off-by: Philip Lassen <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* redo ArrayRefOrSmallVector with enable_if (onnx#1758)

closes onnx#1729

* redo ArrayRefOrSmallVector with enable_if

attempt to address issue onnx#1729: Build error on Linux

Signed-off-by: Soren Lassen <[email protected]>

* added @qedawkins fix: begin,end -> data,size

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Quinn Dawkins [email protected]
Co-authored-by: Philip Lassen <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* fix syntax

Signed-off-by: Megan Hampton <[email protected]>

* Handle scalar tensor tensor<type> in SimplifyShapeRelatesOps pass (onnx#1764)

Signed-off-by: Tung D. Le <[email protected]>

Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* namespace cleanup (onnx#1763)

* namespace cleanup

removed `using namespace mlir` from ConstPropHelper.hpp and added
requisite `mlir::` and `llvm::` in header files to get everything
to compile again

also put ConstPropHelper definitions in namespace onnx_mlir

Signed-off-by: Soren Lassen <[email protected]>

* added more missing `mlir/llvm::`

Signed-off-by: Soren Lassen <[email protected]>

Signed-off-by: Soren Lassen <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>

* Signed-off-by: Megan Hampton <[email protected]>

Fix Clang format error

* Make use of the product vendor flag

Signed-off-by: Megan Hampton <[email protected]>

* Address feedback

Signed-off-by: Megan Hampton <[email protected]>

Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: chentong319 <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>

* different initial

Signed-off-by: chentong319 <[email protected]>

Signed-off-by: chentong319 <[email protected]>
Signed-off-by: Megan Hampton <[email protected]>
Signed-off-by: Soren Lassen <[email protected]>
Signed-off-by: Stella Stamenova <[email protected]>
Signed-off-by: Tung D. Le <[email protected]>
Signed-off-by: Philip Lassen <[email protected]>
Signed-off-by: Gong Su <[email protected]>
Signed-off-by: Charles Volzka <[email protected]>
Signed-off-by: Hengyu Meng <[email protected]>
Signed-off-by: Alexandre Eichenberger <[email protected]>
Signed-off-by: Philipp Braun <[email protected]>
Co-authored-by: hamptonm1 <[email protected]>
Co-authored-by: Megan Hampton <[email protected]>
Co-authored-by: Soren Lassen <[email protected]>
Co-authored-by: Charles Volzka <[email protected]>
Co-authored-by: Yasushi Negishi <[email protected]>
Co-authored-by: Stella Stamenova <[email protected]>
Co-authored-by: Tung D. Le <[email protected]>
Co-authored-by: Alexandre Eichenberger <[email protected]>
Co-authored-by: Philip Lassen <[email protected]>
Co-authored-by: Roberto DiCecco <[email protected]>
Co-authored-by: gongsu832 <[email protected]>
Co-authored-by: Meng, Hengyu <[email protected]>
Co-authored-by: Brad Messer <[email protected]>
Co-authored-by: Philipp Braun <[email protected]>
Co-authored-by: Hadi Jooybar <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants