37 lines · plain
1// RUN: mlir-opt %s --verify-roundtrip | FileCheck %s2 3// CHECK-LABEL: func @integer_operations4func.func @integer_operations() {5 // CHECK-NEXT: [[V0:%.+]] = smt.int.constant -123 {smt.some_attr}6 %0 = smt.int.constant -123 {smt.some_attr}7 // CHECK-NEXT: %c184467440737095516152 = smt.int.constant 184467440737095516152 {smt.some_attr}8 %1 = smt.int.constant 184467440737095516152 {smt.some_attr}9 10 11 // CHECK-NEXT: smt.int.add [[V0]], [[V0]], [[V0]] {smt.some_attr}12 %2 = smt.int.add %0, %0, %0 {smt.some_attr}13 // CHECK-NEXT: smt.int.mul [[V0]], [[V0]], [[V0]] {smt.some_attr}14 %3 = smt.int.mul %0, %0, %0 {smt.some_attr}15 // CHECK-NEXT: smt.int.sub [[V0]], [[V0]] {smt.some_attr}16 %4 = smt.int.sub %0, %0 {smt.some_attr}17 // CHECK-NEXT: smt.int.div [[V0]], [[V0]] {smt.some_attr}18 %5 = smt.int.div %0, %0 {smt.some_attr}19 // CHECK-NEXT: smt.int.mod [[V0]], [[V0]] {smt.some_attr}20 %6 = smt.int.mod %0, %0 {smt.some_attr}21 // CHECK-NEXT: smt.int.abs [[V0]] {smt.some_attr}22 %7 = smt.int.abs %0 {smt.some_attr}23 24 // CHECK-NEXT: smt.int.cmp le [[V0]], [[V0]] {smt.some_attr}25 %9 = smt.int.cmp le %0, %0 {smt.some_attr}26 // CHECK-NEXT: smt.int.cmp lt [[V0]], [[V0]] {smt.some_attr}27 %10 = smt.int.cmp lt %0, %0 {smt.some_attr}28 // CHECK-NEXT: smt.int.cmp ge [[V0]], [[V0]] {smt.some_attr}29 %11 = smt.int.cmp ge %0, %0 {smt.some_attr}30 // CHECK-NEXT: smt.int.cmp gt [[V0]], [[V0]] {smt.some_attr}31 %12 = smt.int.cmp gt %0, %0 {smt.some_attr}32 // CHECK-NEXT: smt.int2bv [[V0]] {smt.some_attr} : !smt.bv<4>33 %13 = smt.int2bv %0 {smt.some_attr} : !smt.bv<4>34 35 return36}37