xref: /aosp_15_r20/external/tensorflow/tensorflow/lite/delegates/gpu/metal/kernels/BUILD (revision b6fb3261f9314811a0f4371741dbb8839866f948)
1load("@build_bazel_rules_apple//apple:ios.bzl", "ios_unit_test")
2load(
3    "//tensorflow/lite:special_rules.bzl",
4    "tflite_ios_lab_runner",
5    "tflite_ios_per_kernel_test",
6    "tflite_portable_test_suite",
7)
8load(
9    "//tensorflow/core/platform:build_config_root.bzl",
10    "tf_gpu_tests_tags",
11)
12
13package(
14    default_visibility = ["//visibility:public"],
15    licenses = ["notice"],
16)
17
18objc_library(
19    name = "add_test_lib",
20    testonly = 1,
21    srcs = ["add_test.mm"],
22    sdk_frameworks = ["XCTest"],
23    deps = [
24        ":test_util",
25        "//tensorflow/lite/delegates/gpu/common/tasks:add_test_util",
26    ],
27)
28
29ios_unit_test(
30    name = "add_test",
31    testonly = 1,
32    minimum_os_version = "11.4",
33    runner = tflite_ios_lab_runner("IOS_LATEST"),
34    tags = tf_gpu_tests_tags() + [
35        "notap",
36        "tflite_not_portable_android",
37    ],
38    deps = [":add_test_lib"],
39)
40
41objc_library(
42    name = "cast_test_lib",
43    testonly = 1,
44    srcs = ["cast_test.mm"],
45    sdk_frameworks = ["XCTest"],
46    deps = [
47        ":test_util",
48        "//tensorflow/lite/delegates/gpu/common:status",
49        "//tensorflow/lite/delegates/gpu/common/tasks:cast_test_util",
50    ],
51)
52
53ios_unit_test(
54    name = "cast_test",
55    testonly = 1,
56    minimum_os_version = "11.4",
57    runner = tflite_ios_lab_runner("IOS_LATEST"),
58    tags = tf_gpu_tests_tags() + [
59        "notap",
60        "tflite_not_portable_android",
61    ],
62    deps = [":cast_test_lib"],
63)
64
65objc_library(
66    name = "concat_test_lib",
67    testonly = 1,
68    srcs = ["concat_test.mm"],
69    sdk_frameworks = ["XCTest"],
70    deps = [
71        ":test_util",
72        "//tensorflow/lite/delegates/gpu/common/tasks:concat_test_util",
73    ],
74)
75
76ios_unit_test(
77    name = "concat_test",
78    testonly = 1,
79    minimum_os_version = "11.4",
80    runner = tflite_ios_lab_runner("IOS_LATEST"),
81    tags = tf_gpu_tests_tags() + [
82        "notap",
83        "tflite_not_portable_android",
84    ],
85    deps = [":concat_test_lib"],
86)
87
88objc_library(
89    name = "conv_test_lib",
90    testonly = 1,
91    srcs = ["conv_test.mm"],
92    sdk_frameworks = ["XCTest"],
93    deps = [
94        ":test_util",
95        "//tensorflow/lite/delegates/gpu/common:operations",
96        "//tensorflow/lite/delegates/gpu/common:shape",
97        "//tensorflow/lite/delegates/gpu/common:status",
98        "//tensorflow/lite/delegates/gpu/common:tensor",
99        "//tensorflow/lite/delegates/gpu/common:util",
100        "//tensorflow/lite/delegates/gpu/common/tasks:conv_constants_test_util",
101        "//tensorflow/lite/delegates/gpu/common/tasks:conv_generic",
102        "//tensorflow/lite/delegates/gpu/common/tasks:conv_generic_test_util",
103        "//tensorflow/lite/delegates/gpu/common/tasks:conv_metal_simd",
104        "//tensorflow/lite/delegates/gpu/common/tasks:winograd",
105        "//tensorflow/lite/delegates/gpu/metal:compute_task",
106        "//tensorflow/lite/delegates/gpu/metal:metal_spatial_tensor",
107    ],
108)
109
110ios_unit_test(
111    name = "conv_test",
112    testonly = 1,
113    minimum_os_version = "11.4",
114    runner = tflite_ios_lab_runner("IOS_LATEST"),
115    tags = tf_gpu_tests_tags() + [
116        "notap",
117        "tflite_not_portable_android",
118    ],
119    deps = [":conv_test_lib"],
120)
121
122objc_library(
123    name = "conv_weights_converter_test_lib",
124    testonly = 1,
125    srcs = ["conv_weights_converter_test.mm"],
126    sdk_frameworks = ["XCTest"],
127    deps = [
128        ":test_util",
129        "//tensorflow/lite/delegates/gpu/common/tasks:conv_weights_converter_test_util",
130    ],
131)
132
133ios_unit_test(
134    name = "conv_weights_converter_test",
135    testonly = 1,
136    minimum_os_version = "11.4",
137    runner = tflite_ios_lab_runner("IOS_LATEST"),
138    tags = tf_gpu_tests_tags() + [
139        "notap",
140        "tflite_not_portable_android",
141    ],
142    deps = [":conv_weights_converter_test_lib"],
143)
144
145objc_library(
146    name = "cumsum_test_lib",
147    testonly = 1,
148    srcs = ["cumsum_test.mm"],
149    sdk_frameworks = ["XCTest"],
150    deps = [
151        ":test_util",
152        "//tensorflow/lite/delegates/gpu/common:status",
153        "//tensorflow/lite/delegates/gpu/common/tasks:cumsum_test_util",
154    ],
155)
156
157ios_unit_test(
158    name = "cumsum_test",
159    testonly = 1,
160    minimum_os_version = "11.4",
161    runner = tflite_ios_lab_runner("IOS_LATEST"),
162    tags = tf_gpu_tests_tags() + [
163        "notap",
164        "tflite_not_portable_android",
165    ],
166    deps = [":cumsum_test_lib"],
167)
168
169objc_library(
170    name = "depthwise_conv_test_lib",
171    testonly = 1,
172    srcs = ["depthwise_conv_test.mm"],
173    sdk_frameworks = ["XCTest"],
174    deps = [
175        ":test_util",
176        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_3x3_stride_h2_test_util",
177        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_3x3_test_util",
178        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_test_util",
179    ],
180)
181
182ios_unit_test(
183    name = "depthwise_conv_test",
184    testonly = 1,
185    minimum_os_version = "11.4",
186    runner = tflite_ios_lab_runner("IOS_LATEST"),
187    tags = tf_gpu_tests_tags() + [
188        "notap",
189        "tflite_not_portable_android",
190    ],
191    deps = [":depthwise_conv_test_lib"],
192)
193
194objc_library(
195    name = "elementwise_test_lib",
196    testonly = 1,
197    srcs = ["elementwise_test.mm"],
198    sdk_frameworks = ["XCTest"],
199    deps = [
200        ":test_util",
201        "//tensorflow/lite/delegates/gpu/common/tasks:elementwise_test_util",
202    ],
203)
204
205ios_unit_test(
206    name = "elementwise_test",
207    testonly = 1,
208    minimum_os_version = "11.4",
209    runner = tflite_ios_lab_runner("IOS_LATEST"),
210    tags = tf_gpu_tests_tags() + [
211        "notap",
212        "tflite_not_portable_android",
213    ],
214    deps = [":elementwise_test_lib"],
215)
216
217objc_library(
218    name = "fully_connected_test_lib",
219    testonly = 1,
220    srcs = ["fully_connected_test.mm"],
221    sdk_frameworks = ["XCTest"],
222    deps = [
223        ":test_util",
224        "//tensorflow/lite/delegates/gpu/common/tasks:fully_connected_test_util",
225    ],
226)
227
228ios_unit_test(
229    name = "fully_connected_test",
230    testonly = 1,
231    minimum_os_version = "11.4",
232    runner = tflite_ios_lab_runner("IOS_LATEST"),
233    tags = tf_gpu_tests_tags() + [
234        "notap",
235        "tflite_not_portable_android",
236    ],
237    deps = [":fully_connected_test_lib"],
238)
239
240objc_library(
241    name = "gather_test_lib",
242    testonly = 1,
243    srcs = ["gather_test.mm"],
244    sdk_frameworks = ["XCTest"],
245    deps = [
246        ":test_util",
247        "//tensorflow/lite/delegates/gpu/common/tasks:gather_test_util",
248    ],
249)
250
251ios_unit_test(
252    name = "gather_test",
253    testonly = 1,
254    minimum_os_version = "11.4",
255    runner = tflite_ios_lab_runner("IOS_LATEST"),
256    tags = tf_gpu_tests_tags() + [
257        "notap",
258        "tflite_not_portable_android",
259    ],
260    deps = [":gather_test_lib"],
261)
262
263objc_library(
264    name = "lstm_test_lib",
265    testonly = 1,
266    srcs = ["lstm_test.mm"],
267    sdk_frameworks = ["XCTest"],
268    deps = [
269        ":test_util",
270        "//tensorflow/lite/delegates/gpu/common/tasks:lstm_test_util",
271    ],
272)
273
274ios_unit_test(
275    name = "lstm_test",
276    testonly = 1,
277    minimum_os_version = "11.4",
278    runner = tflite_ios_lab_runner("IOS_LATEST"),
279    tags = tf_gpu_tests_tags() + [
280        "notap",
281        "tflite_not_portable_android",
282    ],
283    deps = [":lstm_test_lib"],
284)
285
286objc_library(
287    name = "max_unpooling_test_lib",
288    testonly = 1,
289    srcs = ["max_unpooling_test.mm"],
290    sdk_frameworks = ["XCTest"],
291    deps = [
292        ":test_util",
293        "//tensorflow/lite/delegates/gpu/common/tasks:max_unpooling_test_util",
294    ],
295)
296
297ios_unit_test(
298    name = "max_unpooling_test",
299    testonly = 1,
300    minimum_os_version = "11.4",
301    runner = tflite_ios_lab_runner("IOS_LATEST"),
302    tags = tf_gpu_tests_tags() + [
303        "notap",
304        "tflite_not_portable_android",
305    ],
306    deps = [":max_unpooling_test_lib"],
307)
308
309objc_library(
310    name = "mean_stddev_normalization_test_lib",
311    testonly = 1,
312    srcs = ["mean_stddev_normalization_test.mm"],
313    sdk_frameworks = ["XCTest"],
314    deps = [
315        ":test_util",
316        "//tensorflow/lite/delegates/gpu/common/tasks:mean_stddev_normalization_test_util",
317    ],
318)
319
320ios_unit_test(
321    name = "mean_stddev_normalization_test",
322    testonly = 1,
323    minimum_os_version = "11.4",
324    runner = tflite_ios_lab_runner("IOS_LATEST"),
325    tags = tf_gpu_tests_tags() + [
326        "notap",
327        "tflite_not_portable_android",
328    ],
329    deps = [":mean_stddev_normalization_test_lib"],
330)
331
332objc_library(
333    name = "one_hot_test_lib",
334    testonly = 1,
335    srcs = ["one_hot_test.mm"],
336    sdk_frameworks = ["XCTest"],
337    deps = [
338        ":test_util",
339        "//tensorflow/lite/delegates/gpu/common:status",
340        "//tensorflow/lite/delegates/gpu/common/tasks:one_hot_test_util",
341    ],
342)
343
344ios_unit_test(
345    name = "one_hot_test",
346    testonly = 1,
347    minimum_os_version = "11.4",
348    runner = tflite_ios_lab_runner("IOS_LATEST"),
349    tags = tf_gpu_tests_tags() + [
350        "notap",
351        "tflite_not_portable_android",
352    ],
353    deps = [":one_hot_test_lib"],
354)
355
356objc_library(
357    name = "padding_test_lib",
358    testonly = 1,
359    srcs = ["padding_test.mm"],
360    sdk_frameworks = ["XCTest"],
361    deps = [
362        ":test_util",
363        "//tensorflow/lite/delegates/gpu/common/tasks:padding_test_util",
364    ],
365)
366
367ios_unit_test(
368    name = "padding_test",
369    testonly = 1,
370    minimum_os_version = "11.4",
371    runner = tflite_ios_lab_runner("IOS_LATEST"),
372    tags = tf_gpu_tests_tags() + [
373        "notap",
374        "tflite_not_portable_android",
375    ],
376    deps = [":padding_test_lib"],
377)
378
379objc_library(
380    name = "pooling_test_lib",
381    testonly = 1,
382    srcs = ["pooling_test.mm"],
383    sdk_frameworks = ["XCTest"],
384    deps = [
385        ":test_util",
386        "//tensorflow/lite/delegates/gpu/common/tasks:pooling_test_util",
387    ],
388)
389
390ios_unit_test(
391    name = "pooling_test",
392    testonly = 1,
393    minimum_os_version = "11.4",
394    runner = tflite_ios_lab_runner("IOS_LATEST"),
395    tags = tf_gpu_tests_tags() + [
396        "notap",
397        "tflite_not_portable_android",
398    ],
399    deps = [":pooling_test_lib"],
400)
401
402objc_library(
403    name = "prelu_test_lib",
404    testonly = 1,
405    srcs = ["prelu_test.mm"],
406    sdk_frameworks = ["XCTest"],
407    deps = [
408        ":test_util",
409        "//tensorflow/lite/delegates/gpu/common/tasks:prelu_test_util",
410    ],
411)
412
413ios_unit_test(
414    name = "prelu_test",
415    testonly = 1,
416    minimum_os_version = "11.4",
417    runner = tflite_ios_lab_runner("IOS_LATEST"),
418    tags = tf_gpu_tests_tags() + [
419        "notap",
420        "tflite_not_portable_android",
421    ],
422    deps = [":prelu_test_lib"],
423)
424
425objc_library(
426    name = "quantize_and_dequantize_test_lib",
427    testonly = 1,
428    srcs = ["quantize_and_dequantize_test.mm"],
429    sdk_frameworks = ["XCTest"],
430    deps = [
431        ":test_util",
432        "//tensorflow/lite/delegates/gpu/common:operations",
433        "//tensorflow/lite/delegates/gpu/common:shape",
434        "//tensorflow/lite/delegates/gpu/common:status",
435        "//tensorflow/lite/delegates/gpu/common:tensor",
436        "//tensorflow/lite/delegates/gpu/common:util",
437        "//tensorflow/lite/delegates/gpu/common/tasks:quantize_and_dequantize_test_util",
438    ],
439)
440
441ios_unit_test(
442    name = "quantize_and_dequantize_test",
443    testonly = 1,
444    minimum_os_version = "11.4",
445    runner = tflite_ios_lab_runner("IOS_LATEST"),
446    tags = tf_gpu_tests_tags() + [
447        "notap",
448        "tflite_not_portable_android",
449    ],
450    deps = [":quantize_and_dequantize_test_lib"],
451)
452
453objc_library(
454    name = "reduce_test_lib",
455    testonly = 1,
456    srcs = ["reduce_test.mm"],
457    sdk_frameworks = ["XCTest"],
458    deps = [
459        ":test_util",
460        "//tensorflow/lite/delegates/gpu/common/tasks:reduce_test_util",
461    ],
462)
463
464ios_unit_test(
465    name = "reduce_test",
466    testonly = 1,
467    minimum_os_version = "11.4",
468    runner = tflite_ios_lab_runner("IOS_LATEST"),
469    tags = tf_gpu_tests_tags() + [
470        "notap",
471        "tflite_not_portable_android",
472    ],
473    deps = [":reduce_test_lib"],
474)
475
476objc_library(
477    name = "relu_test_lib",
478    testonly = 1,
479    srcs = ["relu_test.mm"],
480    sdk_frameworks = ["XCTest"],
481    deps = [
482        ":test_util",
483        "//tensorflow/lite/delegates/gpu/common/tasks:relu_test_util",
484    ],
485)
486
487ios_unit_test(
488    name = "relu_test",
489    testonly = 1,
490    minimum_os_version = "11.4",
491    runner = tflite_ios_lab_runner("IOS_LATEST"),
492    tags = tf_gpu_tests_tags() + [
493        "notap",
494        "tflite_not_portable_android",
495    ],
496    deps = [":relu_test_lib"],
497)
498
499objc_library(
500    name = "resampler_test_lib",
501    testonly = 1,
502    srcs = ["resampler_test.mm"],
503    sdk_frameworks = ["XCTest"],
504    deps = [
505        "//tensorflow/lite/delegates/gpu/common:shape",
506        "//tensorflow/lite/delegates/gpu/common:status",
507        "//tensorflow/lite/delegates/gpu/common/tasks:resampler_test_util",
508        "//tensorflow/lite/delegates/gpu/metal/kernels:test_util",
509    ],
510)
511
512ios_unit_test(
513    name = "resampler_test",
514    testonly = 1,
515    minimum_os_version = "11.4",
516    runner = tflite_ios_lab_runner("IOS_LATEST"),
517    tags = [
518        "no_mac",  # TODO(b/183905399)
519        "notap",
520        "tflite_mobile_test_jet",
521        "tflite_not_portable_android",
522    ],
523    deps = [":resampler_test_lib"],
524)
525
526objc_library(
527    name = "resize_test_lib",
528    testonly = 1,
529    srcs = ["resize_test.mm"],
530    sdk_frameworks = ["XCTest"],
531    deps = [
532        ":test_util",
533        "//tensorflow/lite/delegates/gpu/common/tasks:resize_test_util",
534    ],
535)
536
537ios_unit_test(
538    name = "resize_test",
539    testonly = 1,
540    minimum_os_version = "11.4",
541    runner = tflite_ios_lab_runner("IOS_LATEST"),
542    tags = tf_gpu_tests_tags() + [
543        "notap",
544        "tflite_not_portable_android",
545    ],
546    deps = [":resize_test_lib"],
547)
548
549objc_library(
550    name = "reshape_test_lib",
551    testonly = 1,
552    srcs = ["reshape_test.mm"],
553    sdk_frameworks = ["XCTest"],
554    deps = [
555        ":test_util",
556        "//tensorflow/lite/delegates/gpu/common/tasks:reshape_test_util",
557    ],
558)
559
560ios_unit_test(
561    name = "reshape_test",
562    testonly = 1,
563    minimum_os_version = "11.4",
564    runner = tflite_ios_lab_runner("IOS_LATEST"),
565    tags = tf_gpu_tests_tags() + [
566        "notap",
567        "tflite_not_portable_android",
568    ],
569    deps = [":reshape_test_lib"],
570)
571
572objc_library(
573    name = "select_v2_test_lib",
574    testonly = 1,
575    srcs = ["select_v2_test.mm"],
576    sdk_frameworks = ["XCTest"],
577    deps = [
578        ":test_util",
579        "//tensorflow/lite/delegates/gpu/common/tasks:select_v2_test_util",
580    ],
581)
582
583ios_unit_test(
584    name = "select_v2_test",
585    testonly = 1,
586    minimum_os_version = "11.4",
587    runner = tflite_ios_lab_runner("IOS_LATEST"),
588    tags = tf_gpu_tests_tags() + [
589        "notap",
590        "tflite_not_portable_android",
591    ],
592    deps = [":select_v2_test_lib"],
593)
594
595objc_library(
596    name = "slice_test_lib",
597    testonly = 1,
598    srcs = ["slice_test.mm"],
599    sdk_frameworks = ["XCTest"],
600    deps = [
601        ":test_util",
602        "//tensorflow/lite/delegates/gpu/common/tasks:strided_slice_test_util",
603    ],
604)
605
606ios_unit_test(
607    name = "slice_test",
608    testonly = 1,
609    minimum_os_version = "11.4",
610    runner = tflite_ios_lab_runner("IOS_LATEST"),
611    tags = tf_gpu_tests_tags() + [
612        "notap",
613        "tflite_not_portable_android",
614    ],
615    deps = [":slice_test_lib"],
616)
617
618objc_library(
619    name = "softmax_test_lib",
620    testonly = 1,
621    srcs = ["softmax_test.mm"],
622    sdk_frameworks = ["XCTest"],
623    deps = [
624        ":test_util",
625        "//tensorflow/lite/delegates/gpu/common/tasks:softmax_test_util",
626    ],
627)
628
629ios_unit_test(
630    name = "softmax_test",
631    testonly = 1,
632    minimum_os_version = "11.4",
633    runner = tflite_ios_lab_runner("IOS_LATEST"),
634    tags = tf_gpu_tests_tags() + [
635        "notap",
636        "tflite_not_portable_android",
637    ],
638    deps = [":softmax_test_lib"],
639)
640
641objc_library(
642    name = "space_to_depth_test_lib",
643    testonly = 1,
644    srcs = ["space_to_depth_test.mm"],
645    sdk_frameworks = ["XCTest"],
646    deps = [
647        ":test_util",
648        "//tensorflow/lite/delegates/gpu/common/tasks:space_to_depth_test_util",
649    ],
650)
651
652ios_unit_test(
653    name = "space_to_depth_test",
654    testonly = 1,
655    minimum_os_version = "11.4",
656    runner = tflite_ios_lab_runner("IOS_LATEST"),
657    tags = tf_gpu_tests_tags() + [
658        "notap",
659        "tflite_not_portable_android",
660    ],
661    deps = [":space_to_depth_test_lib"],
662)
663
664objc_library(
665    name = "split_test_lib",
666    testonly = 1,
667    srcs = ["split_test.mm"],
668    sdk_frameworks = ["XCTest"],
669    deps = [
670        ":test_util",
671        "//tensorflow/lite/delegates/gpu/common/tasks:split_test_util",
672    ],
673)
674
675ios_unit_test(
676    name = "split_test",
677    testonly = 1,
678    minimum_os_version = "11.4",
679    runner = tflite_ios_lab_runner("IOS_LATEST"),
680    tags = tf_gpu_tests_tags() + [
681        "notap",
682        "tflite_not_portable_android",
683    ],
684    deps = [":split_test_lib"],
685)
686
687objc_library(
688    name = "tile_test_lib",
689    testonly = 1,
690    srcs = ["tile_test.mm"],
691    sdk_frameworks = ["XCTest"],
692    deps = [
693        ":test_util",
694        "//tensorflow/lite/delegates/gpu/common/tasks:tile_test_util",
695    ],
696)
697
698ios_unit_test(
699    name = "tile_test",
700    testonly = 1,
701    minimum_os_version = "11.4",
702    runner = tflite_ios_lab_runner("IOS_LATEST"),
703    tags = tf_gpu_tests_tags() + [
704        "notap",
705        "tflite_not_portable_android",
706    ],
707    deps = [":tile_test_lib"],
708)
709
710objc_library(
711    name = "transpose_conv_test_lib",
712    testonly = 1,
713    srcs = ["transpose_conv_test.mm"],
714    sdk_frameworks = ["XCTest"],
715    deps = [
716        ":test_util",
717        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_3x3_test_util",
718        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_3x3_thin_test_util",
719        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_4x4_test_util",
720        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_test_util",
721        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_thin_test_util",
722    ],
723)
724
725ios_unit_test(
726    name = "transpose_conv_test",
727    testonly = 1,
728    minimum_os_version = "11.4",
729    runner = tflite_ios_lab_runner("IOS_LATEST"),
730    tags = tf_gpu_tests_tags() + [
731        "notap",
732        "tflite_not_portable_android",
733    ],
734    deps = [":transpose_conv_test_lib"],
735)
736
737objc_library(
738    name = "transpose_test_lib",
739    testonly = 1,
740    srcs = ["transpose_test.mm"],
741    sdk_frameworks = ["XCTest"],
742    deps = [
743        ":test_util",
744        "//tensorflow/lite/delegates/gpu/common/tasks:transpose_test_util",
745    ],
746)
747
748ios_unit_test(
749    name = "transpose_test",
750    testonly = 1,
751    minimum_os_version = "11.4",
752    runner = tflite_ios_lab_runner("IOS_LATEST"),
753    tags = tf_gpu_tests_tags() + [
754        "notap",
755        "tflite_not_portable_android",
756    ],
757    deps = [":transpose_test_lib"],
758)
759
760objc_library(
761    name = "test_util",
762    testonly = 1,
763    srcs = [
764        "test_util.cc",
765    ],
766    hdrs = ["test_util.h"],
767    copts = [
768        "-ObjC++",
769    ],
770    sdk_frameworks = ["Metal"],
771    deps = [
772        "//tensorflow/lite/delegates/gpu/common:convert",
773        "//tensorflow/lite/delegates/gpu/common:gpu_info",
774        "//tensorflow/lite/delegates/gpu/common:precision",
775        "//tensorflow/lite/delegates/gpu/common:shape",
776        "//tensorflow/lite/delegates/gpu/common:status",
777        "//tensorflow/lite/delegates/gpu/common:tensor",
778        "//tensorflow/lite/delegates/gpu/common:types",
779        "//tensorflow/lite/delegates/gpu/common:util",
780        "//tensorflow/lite/delegates/gpu/common/task:gpu_operation",
781        "//tensorflow/lite/delegates/gpu/common/task:testing_util",
782        "//tensorflow/lite/delegates/gpu/metal:compute_task",
783        "//tensorflow/lite/delegates/gpu/metal:metal_device",
784        "//tensorflow/lite/delegates/gpu/metal:metal_spatial_tensor",
785        "@com_google_absl//absl/strings",
786    ],
787)
788
789objc_library(
790    name = "winograd_test_lib",
791    testonly = 1,
792    srcs = ["winograd_test.mm"],
793    sdk_frameworks = ["XCTest"],
794    deps = [
795        ":test_util",
796        "//tensorflow/lite/delegates/gpu/common:winograd_util",
797        "//tensorflow/lite/delegates/gpu/common/tasks:winograd_test_util",
798    ],
799)
800
801ios_unit_test(
802    name = "winograd_test",
803    testonly = 1,
804    minimum_os_version = "11.4",
805    runner = tflite_ios_lab_runner("IOS_LATEST"),
806    tags = tf_gpu_tests_tags() + [
807        "notap",
808        "tflite_not_portable_android",
809    ],
810    deps = [":winograd_test_lib"],
811)
812
813objc_library(
814    name = "kernel_tests_lib",
815    testonly = 1,
816    srcs = [
817        "add_test.mm",
818        "cast_test.mm",
819        "concat_test.mm",
820        "conv_test.mm",
821        "conv_weights_converter_test.mm",
822        "cumsum_test.mm",
823        "depthwise_conv_test.mm",
824        "elementwise_test.mm",
825        "fully_connected_test.mm",
826        "gather_test.mm",
827        "lstm_test.mm",
828        "max_unpooling_test.mm",
829        "mean_stddev_normalization_test.mm",
830        "one_hot_test.mm",
831        "padding_test.mm",
832        "pooling_test.mm",
833        "prelu_test.mm",
834        "quantize_and_dequantize_test.mm",
835        "reduce_test.mm",
836        "relu_test.mm",
837        "resampler_test.mm",
838        "reshape_test.mm",
839        "resize_test.mm",
840        "select_v2_test.mm",
841        "slice_test.mm",
842        "softmax_test.mm",
843        "space_to_depth_test.mm",
844        "split_test.mm",
845        "tile_test.mm",
846        "transpose_conv_test.mm",
847        "transpose_test.mm",
848        "winograd_test.mm",
849    ],
850    hdrs = [
851    ],
852    sdk_frameworks = ["XCTest"],
853    deps = [
854        ":test_util",
855        "//tensorflow/lite/delegates/gpu/common:operations",
856        "//tensorflow/lite/delegates/gpu/common:shape",
857        "//tensorflow/lite/delegates/gpu/common:status",
858        "//tensorflow/lite/delegates/gpu/common:tensor",
859        "//tensorflow/lite/delegates/gpu/common:util",
860        "//tensorflow/lite/delegates/gpu/common/tasks:add_test_util",
861        "//tensorflow/lite/delegates/gpu/common/tasks:cast_test_util",
862        "//tensorflow/lite/delegates/gpu/common/tasks:concat_test_util",
863        "//tensorflow/lite/delegates/gpu/common/tasks:conv_constants_test_util",
864        "//tensorflow/lite/delegates/gpu/common/tasks:conv_generic",
865        "//tensorflow/lite/delegates/gpu/common/tasks:conv_generic_test_util",
866        "//tensorflow/lite/delegates/gpu/common/tasks:conv_metal_simd",
867        "//tensorflow/lite/delegates/gpu/common/tasks:conv_weights_converter_test_util",
868        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_3x3_test_util",
869        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_3x3_thin_test_util",
870        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_4x4_test_util",
871        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_test_util",
872        "//tensorflow/lite/delegates/gpu/common/tasks:convolution_transposed_thin_test_util",
873        "//tensorflow/lite/delegates/gpu/common/tasks:cumsum_test_util",
874        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_3x3_stride_h2_test_util",
875        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_3x3_test_util",
876        "//tensorflow/lite/delegates/gpu/common/tasks:depthwise_conv_test_util",
877        "//tensorflow/lite/delegates/gpu/common/tasks:elementwise_test_util",
878        "//tensorflow/lite/delegates/gpu/common/tasks:fully_connected_test_util",
879        "//tensorflow/lite/delegates/gpu/common/tasks:gather_test_util",
880        "//tensorflow/lite/delegates/gpu/common/tasks:lstm_test_util",
881        "//tensorflow/lite/delegates/gpu/common/tasks:max_unpooling_test_util",
882        "//tensorflow/lite/delegates/gpu/common/tasks:mean_stddev_normalization_test_util",
883        "//tensorflow/lite/delegates/gpu/common/tasks:one_hot_test_util",
884        "//tensorflow/lite/delegates/gpu/common/tasks:padding_test_util",
885        "//tensorflow/lite/delegates/gpu/common/tasks:pooling_test_util",
886        "//tensorflow/lite/delegates/gpu/common/tasks:prelu_test_util",
887        "//tensorflow/lite/delegates/gpu/common/tasks:quantize_and_dequantize_test_util",
888        "//tensorflow/lite/delegates/gpu/common/tasks:reduce_test_util",
889        "//tensorflow/lite/delegates/gpu/common/tasks:relu_test_util",
890        "//tensorflow/lite/delegates/gpu/common/tasks:resampler_test_util",
891        "//tensorflow/lite/delegates/gpu/common/tasks:reshape_test_util",
892        "//tensorflow/lite/delegates/gpu/common/tasks:resize_test_util",
893        "//tensorflow/lite/delegates/gpu/common/tasks:select_v2_test_util",
894        "//tensorflow/lite/delegates/gpu/common/tasks:softmax_test_util",
895        "//tensorflow/lite/delegates/gpu/common/tasks:space_to_depth_test_util",
896        "//tensorflow/lite/delegates/gpu/common/tasks:split_test_util",
897        "//tensorflow/lite/delegates/gpu/common/tasks:strided_slice_test_util",
898        "//tensorflow/lite/delegates/gpu/common/tasks:tile_test_util",
899        "//tensorflow/lite/delegates/gpu/common/tasks:transpose_test_util",
900        "//tensorflow/lite/delegates/gpu/common/tasks:winograd",
901        "//tensorflow/lite/delegates/gpu/common/tasks:winograd_test_util",
902        "//tensorflow/lite/delegates/gpu/metal:compute_task",
903        "//tensorflow/lite/delegates/gpu/metal:metal_spatial_tensor",
904    ],
905)
906
907tflite_portable_test_suite()
908
909tflite_ios_per_kernel_test()
910