llvm-project/mlir/tools
Chia-hung Duan 9445b39673 [mlir] Support verification order (2/3)
This change gives explicit order of verifier execution and adds
    `hasRegionVerifier` and `verifyWithRegions` to increase the granularity
    of verifier classification. The orders are as below,

    1. InternalOpTrait will be verified first, they can be run independently.
    2. `verifyInvariants` which is constructed by ODS, it verifies the type,
       attributes, .etc.
    3. Other Traits/Interfaces that have marked their verifier as
       `verifyTrait` or `verifyWithRegions=0`.
    4. Custom verifier which is defined in the op and has marked
       `hasVerifier=1`

    If an operation has regions, then it may have the second phase,

    5. Traits/Interfaces that have marked their verifier as
       `verifyRegionTrait` or
       `verifyWithRegions=1`. This implies the verifier needs to access the
       operations in its regions.
    6. Custom verifier which is defined in the op and has marked
       `hasRegionVerifier=1`

    Note that the second phase will be run after the operations in the
    region are verified. Based on the verification order, you will be able to
    avoid verifying duplicate things.

Reviewed By: Mogball

Differential Revision: https://reviews.llvm.org/D116789
2022-02-25 19:04:56 +00:00
..
mlir-cpu-runner [mlir][Standard] NFC - Drop remaining EDSC usage 2021-05-21 10:40:39 +00:00
mlir-linalg-ods-gen [mlir][OpDSL] Split arithmetic functions. 2022-02-25 15:27:42 +00:00
mlir-lsp-server [mlir:Analysis] Move the LoopAnalysis library to Dialect/Affine/Analysis 2022-01-18 10:28:22 -08:00
mlir-opt [mlir][memref] Add transformation to do loop multi-buffering 2022-02-24 09:41:21 -08:00
mlir-pdll [mlir][NFC] Add a using for llvm::SMLoc/llvm::SMRange to LLVM.h 2022-01-26 21:37:23 -08:00
mlir-reduce [MLIR] Move TestDialect to ::test namespace 2021-08-14 13:24:41 -07:00
mlir-shlib [MLIR] Reapply: Adjust libMLIR building to more closely follow libClang 2020-05-04 20:47:57 -07:00
mlir-spirv-cpu-runner [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
mlir-tblgen [mlir] Support verification order (2/3) 2022-02-25 19:04:56 +00:00
mlir-translate Revert "[RFC] Factor out repetitive cmake patterns for llvm-style projects" 2020-10-04 15:17:34 -07:00
mlir-vulkan-runner [mlir] Use .empty() instead of checking size() == 0. 2022-01-14 11:58:52 +01:00
CMakeLists.txt [mlir] Only build mlir-cpu-runner when the native arch is targeted 2022-01-28 10:09:09 -08:00