1load("//tensorflow/lite/micro:build_def.bzl", "micro_copts")
2load("//tensorflow:extra_rules.bzl", "tflm_kernel_friends")
3
4package(
5    features = ["-layering_check"],
6    licenses = ["notice"],
7)
8
9package_group(
10    name = "tflite_micro",
11    packages = ["//..."],
12)
13
14package_group(
15    name = "micro_top_level",
16    packages = ["//tensorflow/lite/micro"],
17)
18
19package_group(
20    name = "kernel_friends",
21    packages = tflm_kernel_friends(),
22)
23
24####################################
25# C++ libraries
26####################################
27
28cc_library(
29    name = "activation_utils",
30    hdrs = ["activation_utils.h"],
31    deps = [
32        "//tensorflow/lite/c:common",
33        "//tensorflow/lite/kernels/internal:cppmath",
34    ],
35)
36
37cc_library(
38    name = "circular_buffer_flexbuffers_generated_data",
39    srcs = [
40        "circular_buffer_flexbuffers_generated_data.cc",
41    ],
42    hdrs = [
43        "circular_buffer_flexbuffers_generated_data.h",
44    ],
45)
46
47cc_library(
48    name = "conv_test_common",
49    srcs = [
50        "conv_test_common.cc",
51    ],
52    hdrs = [
53        "conv_test.h",
54    ],
55    deps = [
56        ":kernel_runner",
57        ":micro_ops",
58        "//tensorflow/lite/c:common",
59        "//tensorflow/lite/micro:test_helpers",
60        "//tensorflow/lite/micro/testing:micro_test",
61    ],
62)
63
64cc_library(
65    name = "detection_postprocess_flexbuffers_generated_data",
66    srcs = [
67        "detection_postprocess_flexbuffers_generated_data.cc",
68    ],
69    hdrs = [
70        "detection_postprocess_flexbuffers_generated_data.h",
71    ],
72)
73
74cc_library(
75    name = "kernel_runner",
76    srcs = [
77        "kernel_runner.cc",
78    ],
79    hdrs = ["kernel_runner.h"],
80    visibility = [
81        "//visibility:public",
82    ],
83    deps = [
84        "//tensorflow/lite/c:common",
85        "//tensorflow/lite/kernels/internal:compatibility",
86        "//tensorflow/lite/micro:micro_allocator",
87        "//tensorflow/lite/micro:micro_error_reporter",
88        "//tensorflow/lite/micro:mock_micro_graph",
89        "//tensorflow/lite/micro:test_helpers",
90    ],
91)
92
93cc_library(
94    name = "kernel_util",
95    srcs = [
96        "kernel_util.cc",
97    ],
98    hdrs = ["kernel_util.h"],
99    visibility = [
100        ":kernel_friends",
101        ":tflite_micro",
102    ],
103    deps = [
104        "//tensorflow/lite/c:common",
105        "//tensorflow/lite/kernels/internal:compatibility",
106        "//tensorflow/lite/kernels/internal:types",
107        "//tensorflow/lite/micro:debug_log",
108    ],
109)
110
111cc_library(
112    name = "micro_ops",
113    srcs = [
114        "activations.cc",
115        "activations_common.cc",
116        "add.cc",
117        "add_n.cc",
118        "arg_min_max.cc",
119        "batch_to_space_nd.cc",
120        "cast.cc",
121        "ceil.cc",
122        "circular_buffer.cc",
123        "comparisons.cc",
124        "concatenation.cc",
125        "conv.cc",
126        "conv_common.cc",
127        "cumsum.cc",
128        "depth_to_space.cc",
129        "depthwise_conv.cc",
130        "depthwise_conv_common.cc",
131        "dequantize.cc",
132        "detection_postprocess.cc",
133        "elementwise.cc",
134        "elu.cc",
135        "ethosu.cc",
136        "exp.cc",
137        "expand_dims.cc",
138        "fill.cc",
139        "floor.cc",
140        "floor_div.cc",
141        "floor_mod.cc",
142        "fully_connected.cc",
143        "fully_connected_common.cc",
144        "gather.cc",
145        "gather_nd.cc",
146        "hard_swish.cc",
147        "hard_swish_common.cc",
148        "if.cc",
149        "l2_pool_2d.cc",
150        "l2norm.cc",
151        "leaky_relu.cc",
152        "log_softmax.cc",
153        "logical.cc",
154        "logical_common.cc",
155        "logistic.cc",
156        "logistic_common.cc",
157        "maximum_minimum.cc",
158        "mul.cc",
159        "neg.cc",
160        "pack.cc",
161        "pad.cc",
162        "pooling.cc",
163        "pooling_common.cc",
164        "prelu.cc",
165        "quantize.cc",
166        "quantize_common.cc",
167        "reduce.cc",
168        "reshape.cc",
169        "resize_bilinear.cc",
170        "resize_nearest_neighbor.cc",
171        "round.cc",
172        "shape.cc",
173        "softmax.cc",
174        "softmax_common.cc",
175        "space_to_batch_nd.cc",
176        "space_to_depth.cc",
177        "split.cc",
178        "split_v.cc",
179        "squeeze.cc",
180        "strided_slice.cc",
181        "sub.cc",
182        "svdf.cc",
183        "svdf_common.cc",
184        "tanh.cc",
185        "transpose.cc",
186        "transpose_conv.cc",
187        "unpack.cc",
188        "zeros_like.cc",
189    ],
190    hdrs = [
191        "activations.h",
192        "conv.h",
193        "depthwise_conv.h",
194        "ethosu.h",
195        "fully_connected.h",
196        "hard_swish.h",
197        "logical.h",
198        "logistic.h",
199        "micro_ops.h",
200        "pooling.h",
201        "quantize.h",
202        "softmax.h",
203        "svdf.h",
204    ],
205    copts = micro_copts(),
206    visibility = [
207        # Public visibility to allow application code to select kernel variants.
208        "//visibility:public",
209    ],
210    deps = [
211        ":activation_utils",
212        ":kernel_util",
213        ":micro_utils",
214        "//tensorflow/lite/c:common",
215        "//tensorflow/lite/kernels:kernel_util",
216        "//tensorflow/lite/kernels:op_macros",
217        "//tensorflow/lite/kernels:padding",
218        "//tensorflow/lite/kernels/internal:common",
219        "//tensorflow/lite/kernels/internal:compatibility",
220        "//tensorflow/lite/kernels/internal:cppmath",
221        "//tensorflow/lite/kernels/internal:quantization_util",
222        "//tensorflow/lite/kernels/internal:reference_base",
223        "//tensorflow/lite/kernels/internal:tensor",
224        "//tensorflow/lite/kernels/internal:types",
225        "//tensorflow/lite/micro:memory_helpers",
226        "//tensorflow/lite/micro:flatbuffer_utils",
227        "//tensorflow/lite/micro:micro_graph",
228        "//tensorflow/lite/micro:micro_utils",
229        "//tensorflow/lite/schema:schema_fbs",
230        "@flatbuffers//:runtime_cc",
231    ],
232)
233
234cc_library(
235    name = "micro_utils",
236    hdrs = ["micro_utils.h"],
237)
238
239####################################
240# C++ tests
241####################################
242
243cc_test(
244    name = "activations_test",
245    srcs = [
246        "activations_test.cc",
247    ],
248    deps = [
249        ":kernel_runner",
250        "//tensorflow/lite/c:common",
251        "//tensorflow/lite/micro:op_resolvers",
252        "//tensorflow/lite/micro:test_helpers",
253        "//tensorflow/lite/micro/testing:micro_test",
254    ],
255)
256
257cc_test(
258    name = "add_n_test",
259    srcs = [
260        "add_n_test.cc",
261    ],
262    deps = [
263        ":kernel_runner",
264        "//tensorflow/lite/c:common",
265        "//tensorflow/lite/micro:debug_log",
266        "//tensorflow/lite/micro:op_resolvers",
267        "//tensorflow/lite/micro:test_helpers",
268        "//tensorflow/lite/micro/testing:micro_test",
269    ],
270)
271
272cc_test(
273    name = "add_test",
274    srcs = [
275        "add_test.cc",
276    ],
277    deps = [
278        ":kernel_runner",
279        "//tensorflow/lite/c:common",
280        "//tensorflow/lite/micro:op_resolvers",
281        "//tensorflow/lite/micro:test_helpers",
282        "//tensorflow/lite/micro/testing:micro_test",
283    ],
284)
285
286cc_test(
287    name = "arg_min_max_test",
288    srcs = [
289        "arg_min_max_test.cc",
290    ],
291    deps = [
292        ":kernel_runner",
293        "//tensorflow/lite/c:common",
294        "//tensorflow/lite/micro:op_resolvers",
295        "//tensorflow/lite/micro:test_helpers",
296        "//tensorflow/lite/micro/testing:micro_test",
297    ],
298)
299
300cc_test(
301    name = "batch_to_space_nd_test",
302    srcs = [
303        "batch_to_space_nd_test.cc",
304    ],
305    deps = [
306        ":kernel_runner",
307        "//tensorflow/lite/c:common",
308        "//tensorflow/lite/micro:op_resolvers",
309        "//tensorflow/lite/micro:test_helpers",
310        "//tensorflow/lite/micro/testing:micro_test",
311    ],
312)
313
314cc_test(
315    name = "cast_test",
316    srcs = ["cast_test.cc"],
317    deps = [
318        ":kernel_runner",
319        "//tensorflow/lite/c:common",
320        "//tensorflow/lite/micro:debug_log",
321        "//tensorflow/lite/micro:op_resolvers",
322        "//tensorflow/lite/micro:test_helpers",
323        "//tensorflow/lite/micro/testing:micro_test",
324    ],
325)
326
327cc_test(
328    name = "ceil_test",
329    srcs = [
330        "ceil_test.cc",
331    ],
332    deps = [
333        ":kernel_runner",
334        "//tensorflow/lite/c:common",
335        "//tensorflow/lite/micro:op_resolvers",
336        "//tensorflow/lite/micro:test_helpers",
337        "//tensorflow/lite/micro/testing:micro_test",
338    ],
339)
340
341cc_test(
342    name = "circular_buffer_test",
343    srcs = [
344        "circular_buffer_test.cc",
345    ],
346    deps = [
347        "circular_buffer_flexbuffers_generated_data",
348        ":kernel_runner",
349        ":micro_ops",
350        "//tensorflow/lite/c:common",
351        "//tensorflow/lite/micro:op_resolvers",
352        "//tensorflow/lite/micro:test_helpers",
353        "//tensorflow/lite/micro/testing:micro_test",
354    ],
355)
356
357cc_test(
358    name = "comparisons_test",
359    srcs = [
360        "comparisons_test.cc",
361    ],
362    deps = [
363        ":kernel_runner",
364        "//tensorflow/lite/c:common",
365        "//tensorflow/lite/micro:test_helpers",
366        "//tensorflow/lite/micro/testing:micro_test",
367    ],
368)
369
370cc_test(
371    name = "concatenation_test",
372    srcs = [
373        "concatenation_test.cc",
374    ],
375    deps = [
376        ":kernel_runner",
377        "//tensorflow/lite/c:common",
378        "//tensorflow/lite/micro:test_helpers",
379        "//tensorflow/lite/micro/testing:micro_test",
380    ],
381)
382
383cc_test(
384    name = "conv_test",
385    srcs = [
386        "conv_test.cc",
387    ],
388    deps = [
389        ":conv_test_common",
390        ":kernel_runner",
391        "//tensorflow/lite/c:common",
392        "//tensorflow/lite/micro:micro_utils",
393        "//tensorflow/lite/micro:test_helpers",
394        "//tensorflow/lite/micro/testing:micro_test",
395    ],
396)
397
398cc_test(
399    name = "cumsum_test",
400    srcs = [
401        "cumsum_test.cc",
402    ],
403    deps = [
404        ":kernel_runner",
405        "//tensorflow/lite/c:common",
406        "//tensorflow/lite/micro:debug_log",
407        "//tensorflow/lite/micro:op_resolvers",
408        "//tensorflow/lite/micro:test_helpers",
409        "//tensorflow/lite/micro/testing:micro_test",
410    ],
411)
412
413cc_test(
414    name = "depth_to_space_test",
415    srcs = [
416        "depth_to_space_test.cc",
417    ],
418    deps = [
419        ":kernel_runner",
420        "//tensorflow/lite/c:common",
421        "//tensorflow/lite/micro:debug_log",
422        "//tensorflow/lite/micro:op_resolvers",
423        "//tensorflow/lite/micro:test_helpers",
424        "//tensorflow/lite/micro/testing:micro_test",
425    ],
426)
427
428cc_test(
429    name = "depthwise_conv_test",
430    srcs = [
431        "depthwise_conv_test.cc",
432    ],
433    deps = [
434        ":kernel_runner",
435        "//tensorflow/lite/c:common",
436        "//tensorflow/lite/kernels/internal:tensor",
437        "//tensorflow/lite/micro:test_helpers",
438        "//tensorflow/lite/micro/testing:micro_test",
439    ],
440)
441
442cc_test(
443    name = "dequantize_test",
444    srcs = [
445        "dequantize_test.cc",
446    ],
447    deps = [
448        ":kernel_runner",
449        "//tensorflow/lite/c:common",
450        "//tensorflow/lite/micro:test_helpers",
451        "//tensorflow/lite/micro/testing:micro_test",
452    ],
453)
454
455cc_test(
456    name = "detection_postprocess_test",
457    srcs = [
458        "detection_postprocess_test.cc",
459    ],
460    deps = [
461        ":detection_postprocess_flexbuffers_generated_data",
462        ":kernel_runner",
463        "//tensorflow/lite/c:common",
464        "//tensorflow/lite/kernels/internal:tensor",
465        "//tensorflow/lite/micro:test_helpers",
466        "//tensorflow/lite/micro/testing:micro_test",
467        "@flatbuffers//:runtime_cc",
468    ],
469)
470
471cc_test(
472    name = "elementwise_test",
473    srcs = ["elementwise_test.cc"],
474    deps = [
475        ":kernel_runner",
476        "//tensorflow/lite/c:common",
477        "//tensorflow/lite/micro:debug_log",
478        "//tensorflow/lite/micro:op_resolvers",
479        "//tensorflow/lite/micro:test_helpers",
480        "//tensorflow/lite/micro/testing:micro_test",
481    ],
482)
483
484cc_test(
485    name = "elu_test",
486    srcs = [
487        "elu_test.cc",
488    ],
489    deps = [
490        ":kernel_runner",
491        "//tensorflow/lite/c:common",
492        "//tensorflow/lite/micro:debug_log",
493        "//tensorflow/lite/micro:op_resolvers",
494        "//tensorflow/lite/micro:test_helpers",
495        "//tensorflow/lite/micro/testing:micro_test",
496    ],
497)
498
499cc_test(
500    name = "exp_test",
501    srcs = ["exp_test.cc"],
502    deps = [
503        ":kernel_runner",
504        "//tensorflow/lite/c:common",
505        "//tensorflow/lite/micro:debug_log",
506        "//tensorflow/lite/micro:op_resolvers",
507        "//tensorflow/lite/micro:test_helpers",
508        "//tensorflow/lite/micro/testing:micro_test",
509    ],
510)
511
512cc_test(
513    name = "expand_dims_test",
514    srcs = ["expand_dims_test.cc"],
515    deps = [
516        ":kernel_runner",
517        "//tensorflow/lite/c:common",
518        "//tensorflow/lite/micro:debug_log",
519        "//tensorflow/lite/micro:op_resolvers",
520        "//tensorflow/lite/micro:test_helpers",
521        "//tensorflow/lite/micro/testing:micro_test",
522    ],
523)
524
525cc_test(
526    name = "fill_test",
527    srcs = [
528        "fill_test.cc",
529    ],
530    deps = [
531        ":kernel_runner",
532        "//tensorflow/lite/c:common",
533        "//tensorflow/lite/micro:op_resolvers",
534        "//tensorflow/lite/micro:test_helpers",
535        "//tensorflow/lite/micro/testing:micro_test",
536    ],
537)
538
539cc_test(
540    name = "floor_div_test",
541    srcs = ["floor_div_test.cc"],
542    deps = [
543        ":kernel_runner",
544        "//tensorflow/lite/c:common",
545        "//tensorflow/lite/micro:debug_log",
546        "//tensorflow/lite/micro:op_resolvers",
547        "//tensorflow/lite/micro:test_helpers",
548        "//tensorflow/lite/micro/testing:micro_test",
549    ],
550)
551
552cc_test(
553    name = "floor_mod_test",
554    srcs = ["floor_mod_test.cc"],
555    deps = [
556        ":kernel_runner",
557        "//tensorflow/lite/c:common",
558        "//tensorflow/lite/micro:debug_log",
559        "//tensorflow/lite/micro:op_resolvers",
560        "//tensorflow/lite/micro:test_helpers",
561        "//tensorflow/lite/micro/testing:micro_test",
562    ],
563)
564
565cc_test(
566    name = "floor_test",
567    srcs = [
568        "floor_test.cc",
569    ],
570    deps = [
571        ":kernel_runner",
572        "//tensorflow/lite/c:common",
573        "//tensorflow/lite/micro:op_resolvers",
574        "//tensorflow/lite/micro:test_helpers",
575        "//tensorflow/lite/micro/testing:micro_test",
576    ],
577)
578
579cc_test(
580    name = "fully_connected_test",
581    srcs = [
582        "fully_connected_test.cc",
583    ],
584    deps = [
585        ":kernel_runner",
586        "//tensorflow/lite/c:common",
587        "//tensorflow/lite/micro:micro_utils",
588        "//tensorflow/lite/micro:op_resolvers",
589        "//tensorflow/lite/micro:test_helpers",
590        "//tensorflow/lite/micro/testing:micro_test",
591    ],
592)
593
594cc_test(
595    name = "gather_test",
596    srcs = [
597        "gather_test.cc",
598    ],
599    deps = [
600        ":kernel_runner",
601        "//tensorflow/lite/c:common",
602        "//tensorflow/lite/micro:micro_utils",
603        "//tensorflow/lite/micro:op_resolvers",
604        "//tensorflow/lite/micro:test_helpers",
605        "//tensorflow/lite/micro/testing:micro_test",
606    ],
607)
608
609cc_test(
610    name = "gather_nd_test",
611    srcs = [
612        "gather_nd_test.cc",
613    ],
614    deps = [
615        ":kernel_runner",
616        "//tensorflow/lite/c:common",
617        "//tensorflow/lite/micro:micro_utils",
618        "//tensorflow/lite/micro:op_resolvers",
619        "//tensorflow/lite/micro:test_helpers",
620        "//tensorflow/lite/micro/testing:micro_test",
621    ],
622)
623
624cc_test(
625    name = "hard_swish_test",
626    srcs = ["hard_swish_test.cc"],
627    deps = [
628        ":kernel_runner",
629        "//tensorflow/lite/c:common",
630        "//tensorflow/lite/micro:op_resolvers",
631        "//tensorflow/lite/micro:test_helpers",
632        "//tensorflow/lite/micro/testing:micro_test",
633    ],
634)
635
636cc_test(
637    name = "if_test",
638    srcs = ["if_test.cc"],
639    deps = [
640        ":kernel_runner",
641        "//tensorflow/lite/c:common",
642        "//tensorflow/lite/micro:micro_framework",
643        "//tensorflow/lite/micro:mock_micro_graph",
644        "//tensorflow/lite/micro:op_resolvers",
645        "//tensorflow/lite/micro:test_helpers",
646        "//tensorflow/lite/micro/testing:micro_test",
647    ],
648)
649
650cc_test(
651    name = "l2norm_test",
652    srcs = [
653        "l2norm_test.cc",
654    ],
655    deps = [
656        ":kernel_runner",
657        "//tensorflow/lite/c:common",
658        "//tensorflow/lite/micro:op_resolvers",
659        "//tensorflow/lite/micro:test_helpers",
660        "//tensorflow/lite/micro/testing:micro_test",
661    ],
662)
663
664cc_test(
665    name = "l2_pool_2d_test",
666    srcs = [
667        "l2_pool_2d_test.cc",
668    ],
669    deps = [
670        ":kernel_runner",
671        "//tensorflow/lite/c:common",
672        "//tensorflow/lite/micro:debug_log",
673        "//tensorflow/lite/micro:op_resolvers",
674        "//tensorflow/lite/micro:test_helpers",
675        "//tensorflow/lite/micro/testing:micro_test",
676    ],
677)
678
679cc_test(
680    name = "leaky_relu_test",
681    srcs = [
682        "leaky_relu_test.cc",
683    ],
684    deps = [
685        ":kernel_runner",
686        "//tensorflow/lite/c:common",
687        "//tensorflow/lite/micro:debug_log",
688        "//tensorflow/lite/micro:op_resolvers",
689        "//tensorflow/lite/micro:test_helpers",
690        "//tensorflow/lite/micro/testing:micro_test",
691    ],
692)
693
694cc_test(
695    name = "logical_test",
696    srcs = [
697        "logical_test.cc",
698    ],
699    deps = [
700        ":kernel_runner",
701        "//tensorflow/lite/c:common",
702        "//tensorflow/lite/micro:op_resolvers",
703        "//tensorflow/lite/micro:test_helpers",
704        "//tensorflow/lite/micro/testing:micro_test",
705    ],
706)
707
708cc_test(
709    name = "logistic_test",
710    srcs = [
711        "logistic_test.cc",
712    ],
713    deps = [
714        ":kernel_runner",
715        "//tensorflow/lite/c:common",
716        "//tensorflow/lite/micro:op_resolvers",
717        "//tensorflow/lite/micro:test_helpers",
718        "//tensorflow/lite/micro/testing:micro_test",
719    ],
720)
721
722cc_test(
723    name = "log_softmax_test",
724    srcs = [
725        "log_softmax_test.cc",
726    ],
727    deps = [
728        ":kernel_runner",
729        "//tensorflow/lite/c:common",
730        "//tensorflow/lite/micro:debug_log",
731        "//tensorflow/lite/micro:op_resolvers",
732        "//tensorflow/lite/micro:test_helpers",
733        "//tensorflow/lite/micro/testing:micro_test",
734    ],
735)
736
737cc_test(
738    name = "maximum_minimum_test",
739    srcs = [
740        "maximum_minimum_test.cc",
741    ],
742    deps = [
743        ":kernel_runner",
744        "//tensorflow/lite/c:common",
745        "//tensorflow/lite/micro:op_resolvers",
746        "//tensorflow/lite/micro:test_helpers",
747        "//tensorflow/lite/micro/testing:micro_test",
748    ],
749)
750
751cc_test(
752    name = "mul_test",
753    srcs = [
754        "mul_test.cc",
755    ],
756    deps = [
757        ":kernel_runner",
758        "//tensorflow/lite/c:common",
759        "//tensorflow/lite/micro:test_helpers",
760        "//tensorflow/lite/micro/testing:micro_test",
761    ],
762)
763
764cc_test(
765    name = "neg_test",
766    srcs = [
767        "neg_test.cc",
768    ],
769    deps = [
770        ":kernel_runner",
771        "//tensorflow/lite/c:common",
772        "//tensorflow/lite/micro:op_resolvers",
773        "//tensorflow/lite/micro:test_helpers",
774        "//tensorflow/lite/micro/testing:micro_test",
775    ],
776)
777
778cc_test(
779    name = "pack_test",
780    srcs = [
781        "pack_test.cc",
782    ],
783    deps = [
784        ":kernel_runner",
785        "//tensorflow/lite/c:common",
786        "//tensorflow/lite/micro:debug_log",
787        "//tensorflow/lite/micro:test_helpers",
788        "//tensorflow/lite/micro/testing:micro_test",
789    ],
790)
791
792cc_test(
793    name = "pad_test",
794    srcs = [
795        "pad_test.cc",
796    ],
797    tags = [
798        "noasan",
799        "nomsan",  # TODO(b/175133159): currently failing with asan and msan
800    ],
801    deps = [
802        ":kernel_runner",
803        "//tensorflow/lite/c:common",
804        "//tensorflow/lite/micro:op_resolvers",
805        "//tensorflow/lite/micro:test_helpers",
806        "//tensorflow/lite/micro/testing:micro_test",
807    ],
808)
809
810cc_test(
811    name = "pooling_test",
812    srcs = [
813        "pooling_test.cc",
814    ],
815    deps = [
816        ":kernel_runner",
817        "//tensorflow/lite/c:common",
818        "//tensorflow/lite/micro:test_helpers",
819        "//tensorflow/lite/micro/testing:micro_test",
820    ],
821)
822
823cc_test(
824    name = "prelu_test",
825    srcs = [
826        "prelu_test.cc",
827    ],
828    deps = [
829        ":kernel_runner",
830        "//tensorflow/lite/c:common",
831        "//tensorflow/lite/micro:test_helpers",
832        "//tensorflow/lite/micro/testing:micro_test",
833    ],
834)
835
836cc_test(
837    name = "quantization_util_test",
838    srcs = [
839        "quantization_util_test.cc",
840    ],
841    deps = [
842        "//tensorflow/lite/c:common",
843        "//tensorflow/lite/kernels/internal:quantization_util",
844        "//tensorflow/lite/micro/testing:micro_test",
845    ],
846)
847
848cc_test(
849    name = "quantize_test",
850    srcs = [
851        "quantize_test.cc",
852    ],
853    deps = [
854        ":kernel_runner",
855        "//tensorflow/lite/c:common",
856        "//tensorflow/lite/micro:test_helpers",
857        "//tensorflow/lite/micro/testing:micro_test",
858    ],
859)
860
861cc_test(
862    name = "reduce_test",
863    srcs = [
864        "reduce_test.cc",
865    ],
866    deps = [
867        ":kernel_runner",
868        "//tensorflow/lite/c:common",
869        "//tensorflow/lite/micro:op_resolvers",
870        "//tensorflow/lite/micro:test_helpers",
871        "//tensorflow/lite/micro/testing:micro_test",
872    ],
873)
874
875cc_test(
876    name = "reshape_test",
877    srcs = [
878        "reshape_test.cc",
879    ],
880    deps = [
881        ":kernel_runner",
882        "//tensorflow/lite/c:common",
883        "//tensorflow/lite/kernels/internal:tensor",
884        "//tensorflow/lite/micro:micro_utils",
885        "//tensorflow/lite/micro:test_helpers",
886        "//tensorflow/lite/micro/testing:micro_test",
887    ],
888)
889
890cc_test(
891    name = "resize_bilinear_test",
892    srcs = [
893        "resize_bilinear_test.cc",
894    ],
895    deps = [
896        ":kernel_runner",
897        "//tensorflow/lite/c:common",
898        "//tensorflow/lite/micro:op_resolvers",
899        "//tensorflow/lite/micro:test_helpers",
900        "//tensorflow/lite/micro/testing:micro_test",
901    ],
902)
903
904cc_test(
905    name = "resize_nearest_neighbor_test",
906    srcs = [
907        "resize_nearest_neighbor_test.cc",
908    ],
909    deps = [
910        ":kernel_runner",
911        "//tensorflow/lite/c:common",
912        "//tensorflow/lite/micro:op_resolvers",
913        "//tensorflow/lite/micro:test_helpers",
914        "//tensorflow/lite/micro/testing:micro_test",
915    ],
916)
917
918cc_test(
919    name = "round_test",
920    srcs = [
921        "round_test.cc",
922    ],
923    deps = [
924        ":kernel_runner",
925        "//tensorflow/lite/c:common",
926        "//tensorflow/lite/micro:op_resolvers",
927        "//tensorflow/lite/micro:test_helpers",
928        "//tensorflow/lite/micro/testing:micro_test",
929    ],
930)
931
932cc_test(
933    name = "shape_test",
934    srcs = ["shape_test.cc"],
935    deps = [
936        ":kernel_runner",
937        "//tensorflow/lite/c:common",
938        "//tensorflow/lite/micro:op_resolvers",
939        "//tensorflow/lite/micro:test_helpers",
940        "//tensorflow/lite/micro/testing:micro_test",
941    ],
942)
943
944cc_test(
945    name = "softmax_test",
946    srcs = [
947        "softmax_test.cc",
948    ],
949    deps = [
950        ":kernel_runner",
951        "//tensorflow/lite/c:common",
952        "//tensorflow/lite/micro:op_resolvers",
953        "//tensorflow/lite/micro:test_helpers",
954        "//tensorflow/lite/micro/testing:micro_test",
955    ],
956)
957
958cc_test(
959    name = "space_to_batch_nd_test",
960    srcs = [
961        "space_to_batch_nd_test.cc",
962    ],
963    deps = [
964        ":kernel_runner",
965        "//tensorflow/lite/c:common",
966        "//tensorflow/lite/micro:micro_utils",
967        "//tensorflow/lite/micro:test_helpers",
968        "//tensorflow/lite/micro/testing:micro_test",
969    ],
970)
971
972cc_test(
973    name = "space_to_depth_test",
974    srcs = [
975        "space_to_depth_test.cc",
976    ],
977    deps = [
978        ":kernel_runner",
979        "//tensorflow/lite/c:common",
980        "//tensorflow/lite/micro:debug_log",
981        "//tensorflow/lite/micro:op_resolvers",
982        "//tensorflow/lite/micro:test_helpers",
983        "//tensorflow/lite/micro/testing:micro_test",
984    ],
985)
986
987cc_test(
988    name = "split_test",
989    srcs = [
990        "split_test.cc",
991    ],
992    deps = [
993        ":kernel_runner",
994        "//tensorflow/lite/c:common",
995        "//tensorflow/lite/micro:debug_log",
996        "//tensorflow/lite/micro:op_resolvers",
997        "//tensorflow/lite/micro:test_helpers",
998        "//tensorflow/lite/micro/testing:micro_test",
999    ],
1000)
1001
1002cc_test(
1003    name = "split_v_test",
1004    srcs = [
1005        "split_v_test.cc",
1006    ],
1007    deps = [
1008        ":kernel_runner",
1009        "//tensorflow/lite/c:common",
1010        "//tensorflow/lite/micro:debug_log",
1011        "//tensorflow/lite/micro:op_resolvers",
1012        "//tensorflow/lite/micro:test_helpers",
1013        "//tensorflow/lite/micro/testing:micro_test",
1014    ],
1015)
1016
1017cc_test(
1018    name = "squeeze_test",
1019    srcs = ["squeeze_test.cc"],
1020    deps = [
1021        ":kernel_runner",
1022        "//tensorflow/lite/c:common",
1023        "//tensorflow/lite/micro:op_resolvers",
1024        "//tensorflow/lite/micro:test_helpers",
1025        "//tensorflow/lite/micro/testing:micro_test",
1026    ],
1027)
1028
1029cc_test(
1030    name = "strided_slice_test",
1031    srcs = [
1032        "strided_slice_test.cc",
1033    ],
1034    deps = [
1035        ":kernel_runner",
1036        "//tensorflow/lite/c:common",
1037        "//tensorflow/lite/micro:op_resolvers",
1038        "//tensorflow/lite/micro:test_helpers",
1039        "//tensorflow/lite/micro/testing:micro_test",
1040    ],
1041)
1042
1043cc_test(
1044    name = "sub_test",
1045    srcs = [
1046        "sub_test.cc",
1047    ],
1048    deps = [
1049        ":kernel_runner",
1050        "//tensorflow/lite/c:common",
1051        "//tensorflow/lite/micro:test_helpers",
1052        "//tensorflow/lite/micro/testing:micro_test",
1053    ],
1054)
1055
1056cc_test(
1057    name = "svdf_test",
1058    srcs = [
1059        "svdf_test.cc",
1060    ],
1061    deps = [
1062        ":kernel_runner",
1063        "//tensorflow/lite/c:common",
1064        "//tensorflow/lite/micro:test_helpers",
1065        "//tensorflow/lite/micro/testing:micro_test",
1066    ],
1067)
1068
1069cc_test(
1070    name = "tanh_test",
1071    srcs = ["tanh_test.cc"],
1072    deps = [
1073        ":kernel_runner",
1074        "//tensorflow/lite/c:common",
1075        "//tensorflow/lite/micro:test_helpers",
1076        "//tensorflow/lite/micro/testing:micro_test",
1077    ],
1078)
1079
1080cc_test(
1081    name = "transpose_test",
1082    srcs = ["transpose_test.cc"],
1083    deps = [
1084        ":kernel_runner",
1085        "//tensorflow/lite/c:common",
1086        "//tensorflow/lite/micro:test_helpers",
1087        "//tensorflow/lite/micro/testing:micro_test",
1088    ],
1089)
1090
1091cc_test(
1092    name = "transpose_conv_test",
1093    srcs = [
1094        "transpose_conv_test.cc",
1095    ],
1096    deps = [
1097        ":conv_test_common",
1098        ":kernel_runner",
1099        "//tensorflow/lite/c:common",
1100        "//tensorflow/lite/micro:micro_utils",
1101        "//tensorflow/lite/micro:op_resolvers",
1102        "//tensorflow/lite/micro:test_helpers",
1103        "//tensorflow/lite/micro/testing:micro_test",
1104    ],
1105)
1106
1107cc_test(
1108    name = "unpack_test",
1109    srcs = [
1110        "unpack_test.cc",
1111    ],
1112    deps = [
1113        ":kernel_runner",
1114        "//tensorflow/lite/c:common",
1115        "//tensorflow/lite/micro:debug_log",
1116        "//tensorflow/lite/micro:test_helpers",
1117        "//tensorflow/lite/micro/testing:micro_test",
1118    ],
1119)
1120
1121cc_test(
1122    name = "zeros_like_test",
1123    srcs = ["zeros_like_test.cc"],
1124    deps = [
1125        ":kernel_runner",
1126        "//tensorflow/lite/c:common",
1127        "//tensorflow/lite/micro:debug_log",
1128        "//tensorflow/lite/micro:op_resolvers",
1129        "//tensorflow/lite/micro:test_helpers",
1130        "//tensorflow/lite/micro/testing:micro_test",
1131    ],
1132)
1133