1//===-- mlir-c/RegisterEverything.h - Register all MLIR entities --*- C -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM
4// Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9// This header contains registration entry points for MLIR upstream dialects
10// and passes. Downstream projects typically will not want to use this unless
11// if they don't care about binary size or build bloat and just wish access
12// to the entire set of upstream facilities. For those that do care, they
13// should use registration functions specific to their project.
14//===----------------------------------------------------------------------===//
15
16#ifndef MLIR_C_REGISTER_EVERYTHING_H
17#define MLIR_C_REGISTER_EVERYTHING_H
18
19#include "mlir-c/IR.h"
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25/// Appends all upstream dialects and extensions to the dialect registry.
26MLIR_CAPI_EXPORTED void mlirRegisterAllDialects(MlirDialectRegistry registry);
27
28/// Register all translations to LLVM IR for dialects that can support it.
29MLIR_CAPI_EXPORTED void mlirRegisterAllLLVMTranslations(MlirContext context);
30
31/// Register all compiler passes of MLIR.
32MLIR_CAPI_EXPORTED void mlirRegisterAllPasses(void);
33
34#ifdef __cplusplus
35}
36#endif
37
38#endif // MLIR_C_REGISTER_EVERYTHING_H
39

source code of mlir/include/mlir-c/RegisterEverything.h