1
1
"""A macro providing an end-to-end test for OpenFHE codegen."""
2
2
3
3
load ("@heir//bazel/openfhe:copts.bzl" , "MAYBE_OPENFHE_LINKOPTS" , "MAYBE_OPENMP_COPTS" )
4
- load ("@heir//tools:heir-opt.bzl" , "heir_opt" )
5
- load ("@heir//tools:heir-translate.bzl" , "heir_translate" )
4
+ load ("@heir//tools:heir-openfhe.bzl" , "openfhe_lib" )
6
5
7
6
def openfhe_end_to_end_test (name , mlir_src , test_src , generated_lib_header , heir_opt_flags = [], heir_translate_flags = [], data = [], tags = [], deps = [], ** kwargs ):
8
7
"""A rule for running generating OpenFHE and running a test on it.
@@ -20,46 +19,8 @@ def openfhe_end_to_end_test(name, mlir_src, test_src, generated_lib_header, heir
20
19
deps: Deps to pass to cc_test and cc_library
21
20
**kwargs: Keyword arguments to pass to cc_library and cc_test.
22
21
"""
23
- cc_codegen_target = name + ".heir_translate_cc"
24
- h_codegen_target = name + ".heir_translate_h"
25
22
cc_lib_target_name = "%s_cc_lib" % name
26
- generated_cc_filename = "%s_lib.inc.cc" % name
27
- heir_opt_name = "%s_heir_opt" % name
28
- generated_heir_opt_name = "%s_heir_opt.mlir" % name
29
- heir_translate_flags = heir_translate_flags + ["--emit-openfhe-pke" , "--openfhe-include-type=source-relative" ]
30
-
31
- if heir_opt_flags :
32
- heir_opt (
33
- name = heir_opt_name ,
34
- src = mlir_src ,
35
- pass_flags = heir_opt_flags ,
36
- generated_filename = generated_heir_opt_name ,
37
- )
38
- else :
39
- generated_heir_opt_name = mlir_src
40
-
41
- heir_translate (
42
- name = cc_codegen_target ,
43
- src = generated_heir_opt_name ,
44
- pass_flags = heir_translate_flags ,
45
- generated_filename = generated_cc_filename ,
46
- )
47
- heir_translate (
48
- name = h_codegen_target ,
49
- src = generated_heir_opt_name ,
50
- pass_flags = heir_translate_flags ,
51
- generated_filename = generated_lib_header ,
52
- )
53
- native .cc_library (
54
- name = cc_lib_target_name ,
55
- srcs = [":" + generated_cc_filename ],
56
- hdrs = [":" + generated_lib_header ],
57
- deps = deps + ["@openfhe//:pke" ],
58
- tags = tags ,
59
- copts = MAYBE_OPENMP_COPTS ,
60
- linkopts = MAYBE_OPENFHE_LINKOPTS ,
61
- ** kwargs
62
- )
23
+ openfhe_lib (name , mlir_src , generated_lib_header , cc_lib_target_name , heir_opt_flags , heir_translate_flags , tags , deps , ** kwargs )
63
24
native .cc_test (
64
25
name = name ,
65
26
srcs = [test_src ],
0 commit comments