mirror of https://github.com/llvm/circt.git
35 lines
1.4 KiB
MLIR
35 lines
1.4 KiB
MLIR
// RUN: circt-opt %s | circt-opt | FileCheck %s
|
|
|
|
// CHECK-LABEL: func @integer_operations
|
|
func.func @integer_operations() {
|
|
// CHECK-NEXT: [[V0:%.+]] = smt.int.constant -123 {smt.some_attr}
|
|
%0 = smt.int.constant -123 {smt.some_attr}
|
|
// CHECK-NEXT: %c184467440737095516152 = smt.int.constant 184467440737095516152 {smt.some_attr}
|
|
%1 = smt.int.constant 184467440737095516152 {smt.some_attr}
|
|
|
|
|
|
// CHECK-NEXT: smt.int.add [[V0]], [[V0]], [[V0]] {smt.some_attr}
|
|
%2 = smt.int.add %0, %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.mul [[V0]], [[V0]], [[V0]] {smt.some_attr}
|
|
%3 = smt.int.mul %0, %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.sub [[V0]], [[V0]] {smt.some_attr}
|
|
%4 = smt.int.sub %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.div [[V0]], [[V0]] {smt.some_attr}
|
|
%5 = smt.int.div %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.mod [[V0]], [[V0]] {smt.some_attr}
|
|
%6 = smt.int.mod %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.abs [[V0]] {smt.some_attr}
|
|
%7 = smt.int.abs %0 {smt.some_attr}
|
|
|
|
// CHECK-NEXT: smt.int.cmp le [[V0]], [[V0]] {smt.some_attr}
|
|
%9 = smt.int.cmp le %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.cmp lt [[V0]], [[V0]] {smt.some_attr}
|
|
%10 = smt.int.cmp lt %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.cmp ge [[V0]], [[V0]] {smt.some_attr}
|
|
%11 = smt.int.cmp ge %0, %0 {smt.some_attr}
|
|
// CHECK-NEXT: smt.int.cmp gt [[V0]], [[V0]] {smt.some_attr}
|
|
%12 = smt.int.cmp gt %0, %0 {smt.some_attr}
|
|
|
|
return
|
|
}
|