CIRCT 20.0.0git
Loading...
Searching...
No Matches
Moore.h
Go to the documentation of this file.
1//===- Moore.h - C interface for the Moore dialect ----------------*- C -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef CIRCT_C_DIALECT_MOORE_H
10#define CIRCT_C_DIALECT_MOORE_H
11
12#include "mlir-c/IR.h"
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18//===----------------------------------------------------------------------===//
19// Dialect
20//===----------------------------------------------------------------------===//
21
23
24//===----------------------------------------------------------------------===//
25// Types
26//===----------------------------------------------------------------------===//
27
28/// Create a void type.
29MLIR_CAPI_EXPORTED MlirType mooreVoidTypeGet(MlirContext ctx);
30/// Create a string type.
31MLIR_CAPI_EXPORTED MlirType mooreStringTypeGet(MlirContext ctx);
32/// Create a chandle type.
33MLIR_CAPI_EXPORTED MlirType mooreChandleTypeGet(MlirContext ctx);
34/// Create an event type.
35MLIR_CAPI_EXPORTED MlirType mooreEventTypeGet(MlirContext ctx);
36/// Create a two-valued simple bit vector type.
37MLIR_CAPI_EXPORTED MlirType mooreIntTypeGetInt(MlirContext ctx, unsigned width);
38/// Create a four-valued simple bit vector type.
39MLIR_CAPI_EXPORTED MlirType mooreIntTypeGetLogic(MlirContext ctx,
40 unsigned width);
41/// Create a real type.
42MLIR_CAPI_EXPORTED MlirType mooreRealTypeGet(MlirContext ctx);
43/// Create a packed open array type.
44MLIR_CAPI_EXPORTED MlirType mooreOpenArrayTypeGet(MlirType elementType);
45/// Create a packed array type.
46MLIR_CAPI_EXPORTED MlirType mooreArrayTypeGet(unsigned size,
47 MlirType elementType);
48/// Create an unpacked open array type.
49MLIR_CAPI_EXPORTED MlirType mooreOpenUnpackedArrayTypeGet(MlirType elementType);
50/// Create an unpacked array type.
51MLIR_CAPI_EXPORTED MlirType mooreUnpackedArrayTypeGet(unsigned size,
52 MlirType elementType);
53/// Create an unpacked associative array type.
54MLIR_CAPI_EXPORTED MlirType mooreAssocArrayTypeGet(MlirType elementType,
55 MlirType indexType);
56/// Create an unpacked queue type.
57MLIR_CAPI_EXPORTED MlirType mooreQueueTypeGet(MlirType elementType,
58 unsigned bound);
59/// Checks whether the passed UnpackedType is a two-valued type.
60MLIR_CAPI_EXPORTED bool mooreIsTwoValuedType(MlirType type);
61/// Checks whether the passed UnpackedType is a four-valued type.
62MLIR_CAPI_EXPORTED bool mooreIsFourValuedType(MlirType type);
63
64#ifdef __cplusplus
65}
66#endif
67
68#endif // CIRCT_C_DIALECT_MOORE_H
MlirType elementType
Definition CHIRRTL.cpp:29
MLIR_CAPI_EXPORTED MlirType mooreChandleTypeGet(MlirContext ctx)
Create a chandle type.
Definition Moore.cpp:40
MLIR_CAPI_EXPORTED bool mooreIsTwoValuedType(MlirType type)
Checks whether the passed UnpackedType is a two-valued type.
Definition Moore.cpp:91
MLIR_CAPI_EXPORTED MlirType mooreIntTypeGetInt(MlirContext ctx, unsigned width)
Create a two-valued simple bit vector type.
Definition Moore.cpp:50
MLIR_CAPI_EXPORTED MlirType mooreOpenArrayTypeGet(MlirType elementType)
Create a packed open array type.
Definition Moore.cpp:64
MLIR_CAPI_EXPORTED MlirType mooreStringTypeGet(MlirContext ctx)
Create a string type.
Definition Moore.cpp:35
MLIR_CAPI_EXPORTED MlirType mooreOpenUnpackedArrayTypeGet(MlirType elementType)
Create an unpacked open array type.
Definition Moore.cpp:72
MLIR_CAPI_EXPORTED MlirType mooreQueueTypeGet(MlirType elementType, unsigned bound)
Create an unpacked queue type.
Definition Moore.cpp:87
MLIR_CAPI_EXPORTED MlirType mooreUnpackedArrayTypeGet(unsigned size, MlirType elementType)
Create an unpacked array type.
Definition Moore.cpp:77
MLIR_CAPI_EXPORTED MlirType mooreArrayTypeGet(unsigned size, MlirType elementType)
Create a packed array type.
Definition Moore.cpp:68
MLIR_CAPI_EXPORTED bool mooreIsFourValuedType(MlirType type)
Checks whether the passed UnpackedType is a four-valued type.
Definition Moore.cpp:95
MLIR_CAPI_EXPORTED MlirType mooreVoidTypeGet(MlirContext ctx)
Create a void type.
Definition Moore.cpp:30
MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(Moore, moore)
MLIR_CAPI_EXPORTED MlirType mooreEventTypeGet(MlirContext ctx)
Create an event type.
Definition Moore.cpp:45
MLIR_CAPI_EXPORTED MlirType mooreRealTypeGet(MlirContext ctx)
Create a real type.
Definition Moore.cpp:60
MLIR_CAPI_EXPORTED MlirType mooreIntTypeGetLogic(MlirContext ctx, unsigned width)
Create a four-valued simple bit vector type.
Definition Moore.cpp:55
MLIR_CAPI_EXPORTED MlirType mooreAssocArrayTypeGet(MlirType elementType, MlirType indexType)
Create an unpacked associative array type.
Definition Moore.cpp:82