| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[mlir] Consistently add TableGen generated files as deps to mlir-headers/mlir-generic-headers CMake targets (#155474) Tool targets like mlir-opt rely on the mlir-headers or mlir-generic-headers targets to run first to generate headers. However, many of the IncGen targets are not specified as dependencies of the header targets in CMake, which causes spurious build failures when using a high number of parallel build jobs. Thus, this commit introduces a pair of new CMake macros add_mlir_dialect_tablegen_target and add_mlir_generic_tablegen_target to AddMLIR.cmake, which can be used in place of add_public_tablegen_target to ensure (by convention) that IncGen targets are added to the mlir-headers (resp. mlir-generic-headers) target dependencies. Most uses of add_public_tablegen_target in the dialects have been refactored to use the new macros. | 11 个月前 | |
[MLIR][Python] Update Nanobind Warnings List for clang-cl on Windows We recently moved over to compiling with clang-cl on Windows. This ended up causing a large increase in warnings, particularly due to how warnings are handled in nanobind. cd91d0fff9293a904704784c92c28637bfebef45 initially set -Wall -Wextra and -Wpedantic while fixing another issue, which is probably not what we want to do on third-party code. We also need to disable -Wmissing-field-initializers to get things clean in this configuration. Reviewers: makslevental, jpienaar, rkayaith Reviewed By: makslevental Pull Request: https://github.com/llvm/llvm-project/pull/166828 | 8 个月前 | |
[MLIR][IRDL] Added IRDL to C++ Translation (#141248) This PR introduces a new tool, mlir-irdl-to-cpp, that converts IRDL to C++ definitions. The C++ definitions allow use of the IRDL-defined dialect in MLIR C++ infrastructure, enabling the use of conversion patterns with IRDL dialects for example. This PR also adds CMake utilities to easily integrate the IRDL dialects into MLIR projects. Note that most IRDL features are not supported. In general, we are only able to define simple types and operations. - The only type constraint supported is irdl.any. - Variadic operands and results are not supported. - Verifiers for the IRDL constraints are not generated. - Attributes are not supported. --------- Co-authored-by: Théo Degioanni <theo.degioanni.llvm.deluge062@simplelogin.fr> Co-authored-by: Fehr Mathieu <mathieu.fehr@gmail.com> | 1 年前 | |
[mlir][ExecutionEngine] Add LevelZeroRuntimeWrapper. (#151038) Adds LevelZeroRuntime wrapper and tests. Co-authored-by: Artem Kroviakov <artem.kroviakov@intel.com> Co-authored-by: Nishant Patel <nishant.b.patel@intel.com> --------- Co-authored-by: Artem Kroviakov <artem.kroviakov@intel.com> Co-authored-by: Nishant Patel <nishant.b.patel@intel.com> | 11 个月前 | |
[NFC][CMake] quote ${CMAKE_SYSTEM_NAME} consistently (#154537) A CMake change included in CMake 4.0 makes AIX into a variable (similar to APPLE, etc.) https://gitlab.kitware.com/cmake/cmake/-/commit/ff03db6657c38c8cf992877ea66174c33d0bcb0b However, ${CMAKE_SYSTEM_NAME} unfortunately also expands exactly to AIX and if auto-expands variable names in CMake. That means you get a double expansion if you write: if (${CMAKE_SYSTEM_NAME} MATCHES "AIX") which becomes: if (AIX MATCHES "AIX") which is as if you wrote: if (ON MATCHES "AIX") You can prevent this by quoting the expansion of "${CMAKE_SYSTEM_NAME}", due to policy [CMP0054](https://cmake.org/cmake/help/latest/policy/CMP0054.html#policy:CMP0054) which is on by default in 4.0+. Most of the LLVM CMake already does this, but this PR fixes the remaining cases where we do not. | 11 个月前 | |
[MLIR][IRDL][CMake] CMake fixes for cross-compilation (#145672) The PR fixes a misconfigured dependency that causes CMake error "No rule to make target 'NATIVE/bin/mlir-irdl-to-cpp'" for cross-compilation. | 1 年前 | |
[mlir][test] Extend CMake logic for e2e tests Adds two new CMake functions to query the host system: * check_hwcap, * check_emulator. Together, these functions are used to check whether a given set of MLIR integration tests require an emulator. If yes, then the corresponding CMake var that defies the required emulator executable is also checked. check_hwcap relies on ELF_HWCAP for discovering CPU features from userspace on Linux systems. This is the recommended approach for Arm CPUs running on Linux as outlined in this blog post: * https://community.arm.com/arm-community-blogs/b/operating-systems-blog/posts/runtime-detection-of-cpu-features-on-an-armv8-a-cpu Other operating systems (e.g. Android) and CPU architectures will most likely require some other approach. Right now these new hooks are only used for SVE and SME integration tests. This relands #86489 with the following changes: * Replaced: set(hwcap_test_file ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/hwcap_check.c) with: set(hwcap_test_file ${CMAKE_BINARY_DIR}/temp/hwcap_check.c) The former would trigger an infinite loop when running ninja (after the initial CMake configuration). * Fixed commit msg. Previous one was taken from the initial GH PR commit rather than the final re-worked solution (missed this when merging via GH UI). * A couple more NFCs/tweaks. | 2 年前 | |
[MLIR][IRDL] Added IRDL to C++ Translation (#141248) This PR introduces a new tool, mlir-irdl-to-cpp, that converts IRDL to C++ definitions. The C++ definitions allow use of the IRDL-defined dialect in MLIR C++ infrastructure, enabling the use of conversion patterns with IRDL dialects for example. This PR also adds CMake utilities to easily integrate the IRDL dialects into MLIR projects. Note that most IRDL features are not supported. In general, we are only able to define simple types and operations. - The only type constraint supported is irdl.any. - Variadic operands and results are not supported. - Verifiers for the IRDL constraints are not generated. - Attributes are not supported. --------- Co-authored-by: Théo Degioanni <theo.degioanni.llvm.deluge062@simplelogin.fr> Co-authored-by: Fehr Mathieu <mathieu.fehr@gmail.com> | 1 年前 | |
Add version to all LLVM cmake package Add a version to non-LLVM cmake package so that users needing an exact version match can use the version parameter to find_package. Also adjust the find_package(LLVM) to use an exact version match as well. Reviewed By: arsenm, stellaraccident, mceier Differential Revision: https://reviews.llvm.org/D138274 | 3 年前 | |
| 9 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 11 个月前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 9 个月前 |