LLZK
3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Toggle main menu visibility
Loading...
Searching...
No Matches
SMTEnums.cpp.inc
Go to the documentation of this file.
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|* *|
3
|* Enum Utility Definitions *|
4
|* *|
5
|* Automatically generated file, do not edit! *|
6
|* From: SMT.td *|
7
|* *|
8
\*===----------------------------------------------------------------------===*/
9
10
namespace
llzk
{
11
namespace
smt
{
12
::llvm::StringRef
stringifyBVCmpPredicate
(
BVCmpPredicate
val) {
13
switch
(val) {
14
case
BVCmpPredicate::slt
:
return
"slt"
;
15
case
BVCmpPredicate::sle
:
return
"sle"
;
16
case
BVCmpPredicate::sgt
:
return
"sgt"
;
17
case
BVCmpPredicate::sge
:
return
"sge"
;
18
case
BVCmpPredicate::ult
:
return
"ult"
;
19
case
BVCmpPredicate::ule
:
return
"ule"
;
20
case
BVCmpPredicate::ugt
:
return
"ugt"
;
21
case
BVCmpPredicate::uge
:
return
"uge"
;
22
}
23
return
""
;
24
}
25
26
::std::optional<BVCmpPredicate>
symbolizeBVCmpPredicate
(::llvm::StringRef str) {
27
return ::llvm::StringSwitch<::std::optional<BVCmpPredicate>>(str)
28
.Case(
"slt"
,
BVCmpPredicate::slt
)
29
.Case(
"sle"
,
BVCmpPredicate::sle
)
30
.Case(
"sgt"
,
BVCmpPredicate::sgt
)
31
.Case(
"sge"
,
BVCmpPredicate::sge
)
32
.Case(
"ult"
,
BVCmpPredicate::ult
)
33
.Case(
"ule"
,
BVCmpPredicate::ule
)
34
.Case(
"ugt"
,
BVCmpPredicate::ugt
)
35
.Case(
"uge"
,
BVCmpPredicate::uge
)
36
.Default(::std::nullopt);
37
}
38
::std::optional<BVCmpPredicate>
symbolizeBVCmpPredicate
(uint64_t value) {
39
switch
(value) {
40
case
0:
return
BVCmpPredicate::slt
;
41
case
1:
return
BVCmpPredicate::sle
;
42
case
2:
return
BVCmpPredicate::sgt
;
43
case
3:
return
BVCmpPredicate::sge
;
44
case
4:
return
BVCmpPredicate::ult
;
45
case
5:
return
BVCmpPredicate::ule
;
46
case
6:
return
BVCmpPredicate::ugt
;
47
case
7:
return
BVCmpPredicate::uge
;
48
default
: return ::std::nullopt;
49
}
50
}
51
52
bool
BVCmpPredicateAttr::classof
(::mlir::Attribute attr) {
53
return
(((::llvm::isa<::mlir::IntegerAttr>(attr))) && ((::llvm::cast<::mlir::IntegerAttr>(attr).getType().isSignlessInteger(64)))) && (((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 0)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 1)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 2)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 3)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 4)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 5)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 6)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 7)));
54
}
55
BVCmpPredicateAttr
BVCmpPredicateAttr::get
(::mlir::MLIRContext *context,
BVCmpPredicate
val) {
56
::mlir::IntegerType intType = ::mlir::IntegerType::get(context, 64);
57
::mlir::IntegerAttr baseAttr = ::mlir::IntegerAttr::get(intType,
static_cast<
uint64_t
>
(val));
58
return ::llvm::cast<BVCmpPredicateAttr>(baseAttr);
59
}
60
BVCmpPredicate
BVCmpPredicateAttr::getValue
()
const
{
61
return
static_cast<
BVCmpPredicate
>
(::mlir::IntegerAttr::getInt());
62
}
63
}
// namespace smt
64
}
// namespace llzk
65
66
namespace
llzk
{
67
namespace
smt {
68
::llvm::StringRef
stringifyIntPredicate
(
IntPredicate
val) {
69
switch
(val) {
70
case
IntPredicate::lt
:
return
"lt"
;
71
case
IntPredicate::le
:
return
"le"
;
72
case
IntPredicate::gt
:
return
"gt"
;
73
case
IntPredicate::ge
:
return
"ge"
;
74
}
75
return
""
;
76
}
77
78
::std::optional<IntPredicate>
symbolizeIntPredicate
(::llvm::StringRef str) {
79
return ::llvm::StringSwitch<::std::optional<IntPredicate>>(str)
80
.Case(
"lt"
,
IntPredicate::lt
)
81
.Case(
"le"
,
IntPredicate::le
)
82
.Case(
"gt"
,
IntPredicate::gt
)
83
.Case(
"ge"
,
IntPredicate::ge
)
84
.Default(::std::nullopt);
85
}
86
::std::optional<IntPredicate>
symbolizeIntPredicate
(uint64_t value) {
87
switch
(value) {
88
case
0:
return
IntPredicate::lt
;
89
case
1:
return
IntPredicate::le
;
90
case
2:
return
IntPredicate::gt
;
91
case
3:
return
IntPredicate::ge
;
92
default
: return ::std::nullopt;
93
}
94
}
95
96
bool
IntPredicateAttr::classof
(::mlir::Attribute attr) {
97
return
(((::llvm::isa<::mlir::IntegerAttr>(attr))) && ((::llvm::cast<::mlir::IntegerAttr>(attr).getType().isSignlessInteger(64)))) && (((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 0)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 1)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 2)) || ((::llvm::cast<::mlir::IntegerAttr>(attr).getInt() == 3)));
98
}
99
IntPredicateAttr
IntPredicateAttr::get
(::mlir::MLIRContext *context,
IntPredicate
val) {
100
::mlir::IntegerType intType = ::mlir::IntegerType::get(context, 64);
101
::mlir::IntegerAttr baseAttr = ::mlir::IntegerAttr::get(intType,
static_cast<
uint64_t
>
(val));
102
return ::llvm::cast<IntPredicateAttr>(baseAttr);
103
}
104
IntPredicate
IntPredicateAttr::getValue
()
const
{
105
return
static_cast<
IntPredicate
>
(::mlir::IntegerAttr::getInt());
106
}
107
}
// namespace smt
108
}
// namespace llzk
109
llzk::smt::BVCmpPredicateAttr
Definition
SMTEnums.h.inc:44
llzk::smt::BVCmpPredicateAttr::getValue
BVCmpPredicate getValue() const
Definition
SMTEnums.cpp.inc:60
llzk::smt::BVCmpPredicateAttr::get
static BVCmpPredicateAttr get(::mlir::MLIRContext *context, BVCmpPredicate val)
Definition
SMTEnums.cpp.inc:55
llzk::smt::BVCmpPredicateAttr::classof
static bool classof(::mlir::Attribute attr)
Definition
SMTEnums.cpp.inc:52
llzk::smt::IntPredicateAttr
Definition
SMTEnums.h.inc:157
llzk::smt::IntPredicateAttr::classof
static bool classof(::mlir::Attribute attr)
Definition
SMTEnums.cpp.inc:96
llzk::smt::IntPredicateAttr::get
static IntPredicateAttr get(::mlir::MLIRContext *context, IntPredicate val)
Definition
SMTEnums.cpp.inc:99
llzk::smt::IntPredicateAttr::getValue
IntPredicate getValue() const
Definition
SMTEnums.cpp.inc:104
llzk::smt
Definition
SMT.cpp.inc:80
llzk::smt::BVCmpPredicate
BVCmpPredicate
Definition
SMTEnums.h.inc:13
llzk::smt::BVCmpPredicate::sgt
@ sgt
Definition
SMTEnums.h.inc:16
llzk::smt::BVCmpPredicate::sge
@ sge
Definition
SMTEnums.h.inc:17
llzk::smt::BVCmpPredicate::ult
@ ult
Definition
SMTEnums.h.inc:18
llzk::smt::BVCmpPredicate::ugt
@ ugt
Definition
SMTEnums.h.inc:20
llzk::smt::BVCmpPredicate::uge
@ uge
Definition
SMTEnums.h.inc:21
llzk::smt::BVCmpPredicate::ule
@ ule
Definition
SMTEnums.h.inc:19
llzk::smt::BVCmpPredicate::slt
@ slt
Definition
SMTEnums.h.inc:14
llzk::smt::BVCmpPredicate::sle
@ sle
Definition
SMTEnums.h.inc:15
llzk::smt::stringifyBVCmpPredicate
::llvm::StringRef stringifyBVCmpPredicate(BVCmpPredicate val)
Definition
SMTEnums.cpp.inc:12
llzk::smt::IntPredicate
IntPredicate
Definition
SMTEnums.h.inc:130
llzk::smt::IntPredicate::ge
@ ge
Definition
SMTEnums.h.inc:134
llzk::smt::IntPredicate::gt
@ gt
Definition
SMTEnums.h.inc:133
llzk::smt::IntPredicate::le
@ le
Definition
SMTEnums.h.inc:132
llzk::smt::IntPredicate::lt
@ lt
Definition
SMTEnums.h.inc:131
llzk::smt::stringifyIntPredicate
::llvm::StringRef stringifyIntPredicate(IntPredicate val)
Definition
SMTEnums.cpp.inc:68
llzk::smt::symbolizeIntPredicate
::std::optional< IntPredicate > symbolizeIntPredicate(::llvm::StringRef str)
Definition
SMTEnums.cpp.inc:78
llzk::smt::symbolizeBVCmpPredicate
::std::optional< BVCmpPredicate > symbolizeBVCmpPredicate(::llvm::StringRef str)
Definition
SMTEnums.cpp.inc:26
llzk
Definition
AnalysisPassEnums.cpp:19
build
include
llzk
Dialect
SMT
IR
SMTEnums.cpp.inc
Generated by
1.17.0
Copyright 2025 Veridise Inc. under the Apache License v2.0. Copyright 2026 Project LLZK under the Apache License v2.0.