From 0b86ed0c2c1c2d422d990eaabb17595bf8176112 Mon Sep 17 00:00:00 2001 From: youben11 Date: Fri, 28 May 2021 11:56:54 +0200 Subject: [PATCH] test(compiler): testing dialect's ops --- compiler/tests/Dialect/HLFHE/ops.mlir | 50 +++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 compiler/tests/Dialect/HLFHE/ops.mlir diff --git a/compiler/tests/Dialect/HLFHE/ops.mlir b/compiler/tests/Dialect/HLFHE/ops.mlir new file mode 100644 index 000000000..1f604d3e0 --- /dev/null +++ b/compiler/tests/Dialect/HLFHE/ops.mlir @@ -0,0 +1,50 @@ +// RUN: zamacompiler %s 2>&1| FileCheck %s + +// CHECK-LABEL: func @add_eint_int(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> +func @add_eint_int(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> { + // CHECK-NEXT: %[[V1:.*]] = constant 1 : i32 + // CHECK-NEXT: %[[V2:.*]] = "HLFHE.add_eint_int"(%arg0, %[[V1]]) : (!HLFHE.eint<0>, i32) -> !HLFHE.eint<0> + // CHECK-NEXT: return %[[V2]] : !HLFHE.eint<0> + + %0 = constant 1 : i32 + %1 = "HLFHE.add_eint_int"(%arg0, %0): (!HLFHE.eint<0>, i32) -> (!HLFHE.eint<0>) + return %1: !HLFHE.eint<0> +} + +// CHECK-LABEL: func @mul_eint_int(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> +func @mul_eint_int(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> { + // CHECK-NEXT: %[[V1:.*]] = constant 1 : i32 + // CHECK-NEXT: %[[V2:.*]] = "HLFHE.mul_eint_int"(%arg0, %[[V1]]) : (!HLFHE.eint<0>, i32) -> !HLFHE.eint<0> + // CHECK-NEXT: return %[[V2]] : !HLFHE.eint<0> + + %0 = constant 1 : i32 + %1 = "HLFHE.mul_eint_int"(%arg0, %0): (!HLFHE.eint<0>, i32) -> (!HLFHE.eint<0>) + return %1: !HLFHE.eint<0> +} + +// CHECK-LABEL: func @add_eint(%arg0: !HLFHE.eint<0>, %arg1: !HLFHE.eint<0>) -> !HLFHE.eint<0> +func @add_eint(%arg0: !HLFHE.eint<0>, %arg1: !HLFHE.eint<0>) -> !HLFHE.eint<0> { + // CHECK-NEXT: %[[V1:.*]] = "HLFHE.add_eint"(%arg0, %arg1) : (!HLFHE.eint<0>, !HLFHE.eint<0>) -> !HLFHE.eint<0> + // CHECK-NEXT: return %[[V1]] : !HLFHE.eint<0> + + %1 = "HLFHE.add_eint"(%arg0, %arg1): (!HLFHE.eint<0>, !HLFHE.eint<0>) -> (!HLFHE.eint<0>) + return %1: !HLFHE.eint<0> +} + +// CHECK-LABEL: func @mul_eint(%arg0: !HLFHE.eint<0>, %arg1: !HLFHE.eint<0>) -> !HLFHE.eint<0> +func @mul_eint(%arg0: !HLFHE.eint<0>, %arg1: !HLFHE.eint<0>) -> !HLFHE.eint<0> { + // CHECK-NEXT: %[[V1:.*]] = "HLFHE.mul_eint"(%arg0, %arg1) : (!HLFHE.eint<0>, !HLFHE.eint<0>) -> !HLFHE.eint<0> + // CHECK-NEXT: return %[[V1]] : !HLFHE.eint<0> + + %1 = "HLFHE.mul_eint"(%arg0, %arg1): (!HLFHE.eint<0>, !HLFHE.eint<0>) -> (!HLFHE.eint<0>) + return %1: !HLFHE.eint<0> +} + +// CHECK-LABEL: func @neg_eint(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> +func @neg_eint(%arg0: !HLFHE.eint<0>) -> !HLFHE.eint<0> { + // CHECK-NEXT: %[[V1:.*]] = "HLFHE.neg_eint"(%arg0) : (!HLFHE.eint<0>) -> !HLFHE.eint<0> + // CHECK-NEXT: return %[[V1]] : !HLFHE.eint<0> + + %1 = "HLFHE.neg_eint"(%arg0): (!HLFHE.eint<0>) -> (!HLFHE.eint<0>) + return %1: !HLFHE.eint<0> +}