commit | 5b63912e8c32c27bb710d80473c8c0d8fa3c9137 | [log] [tgz] |
---|---|---|
author | Stella Laurenzo <stellaraccident@gmail.com> | Fri Jun 18 14:44:10 2021 -0700 |
committer | GitHub <noreply@github.com> | Fri Jun 18 14:44:10 2021 -0700 |
tree | 2ccc0917f0177c7e44db95ffe3bec0bf6c099a74 | |
parent | b189c6e196c3428cd0a34aab3b61278c75881058 [diff] |
Add an IREE_ENABLE_ASSERTIONS option and make it interop with LLVM. (#6252) * Add an IREE_ENABLE_ASSERTIONS option and make it interop with LLVM. Please, everyone, hold your noses. No one likes this state but we do need to have a way to reliably strip -DNDEBUG flags for release builds when opting in to enable assertions. It isn't awesome that LLVM gates so much on NDEBUG, but reality is what it is. With this patch, setting -DIREE_ENABLE_ASSERTIONS=ON in Release mode gets us assertions and LLVM `-debug`. Some non-scientific observations lead me to believe that this is not that much slower than a real Release build - which matches my upstream expectations (i.e. if it is, some assert is too expensive). I want to be able to generate release binaries with assertions/debug enabled in special packages. And developing this way is my normal mode of operation when I'm not using a debugger.
IREE (Intermediate Representation Execution Environment, pronounced as “eerie”) is an MLIR-based end-to-end compiler and runtime that lowers Machine Learning (ML) models to a unified IR that scales up to meet the needs of the datacenter and down to satisfy the constraints and special considerations of mobile and edge deployments.
See our website for project details, user guides, and instructions on building from source.
IREE is still in its early phase. We have settled down on the overarching infrastructure and are actively improving various software components as well as project logistics. It is still quite far from ready for everyday use and is made available without any support at the moment. With that said, we welcome any kind of feedback on any communication channels!
IREE is licensed under the terms of the Apache 2.0 License with LLVM Exceptions. See LICENSE for more information.