File: xnnpack_src_defs.bzl

package info (click to toggle)
pytorch 2.6.0%2Bdfsg-8
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 161,672 kB
  • sloc: python: 1,278,832; cpp: 900,322; ansic: 82,710; asm: 7,754; java: 3,363; sh: 2,811; javascript: 2,443; makefile: 597; ruby: 195; xml: 84; objc: 68
file content (1464 lines) | stat: -rw-r--r-- 90,959 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
"""
Auto-generated by generate-wrappers.py script. Do not modify
"""

XNNPACK_SRCS = [
    "XNNPACK/src/configs/argmaxpool-config.c",
    "XNNPACK/src/configs/avgpool-config.c",
    "XNNPACK/src/configs/binary-elementwise-config.c",
    "XNNPACK/src/configs/cmul-config.c",
    "XNNPACK/src/configs/conv-hwc2chw-config.c",
    "XNNPACK/src/configs/dwconv-config.c",
    "XNNPACK/src/configs/dwconv2d-chw-config.c",
    "XNNPACK/src/configs/experiments-config.c",
    "XNNPACK/src/configs/gemm-config.c",
    "XNNPACK/src/configs/ibilinear-chw-config.c",
    "XNNPACK/src/configs/ibilinear-config.c",
    "XNNPACK/src/configs/lut32norm-config.c",
    "XNNPACK/src/configs/maxpool-config.c",
    "XNNPACK/src/configs/pavgpool-config.c",
    "XNNPACK/src/configs/pack-lh-config.c",
    "XNNPACK/src/configs/raddstoreexpminusmax-config.c",
    "XNNPACK/src/configs/reduce-config.c",
    "XNNPACK/src/configs/rmax-config.c",
    "XNNPACK/src/configs/spmm-config.c",
    "XNNPACK/src/configs/transpose-config.c",
    "XNNPACK/src/configs/unary-elementwise-config.c",
    "XNNPACK/src/configs/unpool-config.c",
    "XNNPACK/src/configs/vmulcaddc-config.c",
    "XNNPACK/src/configs/xx-fill-config.c",
    "XNNPACK/src/configs/xx-pad-config.c",
    "XNNPACK/src/configs/x8-lut-config.c",
    "XNNPACK/src/configs/zip-config.c",
    "XNNPACK/src/init.c",
    "XNNPACK/src/params.c",
]

PROD_SSE_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-avgpool/f32-avgpool-9p8x-minmax-sse-c4.c",
    "XNNPACK/src/f32-avgpool/f32-avgpool-9x-minmax-sse-c4.c",
    "XNNPACK/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x4-sse-2x2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p8c-minmax-sse.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p8c-minmax-sse.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-8f8m9l16c4s4r-minmax-sse.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p8c-minmax-sse.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p8c-minmax-sse.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-sse-2x4-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-sse-1x4-acc3.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-sse-4x4.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-sse-2x4.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x8-minmax-sse-load1.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x2c4-minmax-sse.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x8-minmax-sse-load1.c",
    "XNNPACK/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-sse-p8.c",
    "XNNPACK/src/f32-ibilinear/gen/f32-ibilinear-sse-c8.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x8-minmax-sse-load1.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x2c4-minmax-sse.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x8-minmax-sse-load1.c",
    "XNNPACK/src/f32-maxpool/f32-maxpool-9p8x-minmax-sse-c4.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9p8x-minmax-sse-c4.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9x-minmax-sse-c4.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-sse-c16.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-sse-u16-acc4.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-sse-u16-acc4.c",
    "XNNPACK/src/f32-rsum/gen/f32-rsum-sse-u16-acc4.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-32x1-minmax-sse.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-sse-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-sse-u8.c",
    "XNNPACK/src/f32-vclamp/gen/f32-vclamp-sse-u8.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-sse-u8.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-sse-u8.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-sse-u8.c",
    "XNNPACK/src/f32-vmulcaddc/gen/f32-vmulcaddc-c4-minmax-sse-2x.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-sse-rsqrt-u8.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-sse-rsqrt-u12.c",
    "XNNPACK/src/x32-transposec/x32-transposec-4x4-sse.c",
]

PROD_AVX512VNNI_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-8x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-8x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-10x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-10x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-avx512vnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-7x16c8-minmax-fp32-avx512vnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-7x16c8-minmax-avx512vnni-prfm.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-avx512vnni-u128-acc2.c",
]

PROD_RVV_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-4x-rvv-u1v.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9p8x-rvv-u1v.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9x-rvv-u1v.c",
    "XNNPACK/src/f32-avgpool/gen/f32-avgpool-9p8x-minmax-rvv-c2v.c",
    "XNNPACK/src/f32-avgpool/gen/f32-avgpool-9x-minmax-rvv-c2v.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x4v-minmax-rvv.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-7x4v-minmax-rvv.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x4v-minmax-rvv.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-7x4v-minmax-rvv.c",
    "XNNPACK/src/f32-maxpool/gen/f32-maxpool-9p8x-minmax-rvv-c2v.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9p8x-minmax-rvv-c1v.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9x-minmax-rvv-c1v.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-rvv-u2v.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-rvv-u2v.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-rvv-rr2-p6-u4v.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-rvv-u4v.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-rvv-u8v.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-rvv-u8v.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-rvv-u8v.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-rvv-u2v.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-rvv-u4v.c",
    "XNNPACK/src/f32-vrelu/gen/f32-vrelu-rvv-u4v.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-rvv-u4v.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-rvv-u4v.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-rvv-u4v.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-rvv-u4v.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-rvv-rsqrt-u4v.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-rvv-u2v.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-rvv-u2v.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-f32-rvv-u2v.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-f32-rvv-u2v.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-rvv-u2v.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-rvv-u2v.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-f32-rvv-u2v.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-f32-rvv-u2v.c",
    "XNNPACK/src/s8-vclamp/gen/s8-vclamp-rvv-u4v.c",
    "XNNPACK/src/u8-vclamp/gen/u8-vclamp-rvv-u4v.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x4v-gemm-goi-rvv-u8.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-4x4-rvv.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-8x8-rvv.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-16x8-rvv.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-32x8-rvv.c",
]

PROD_FMA_MICROKERNEL_SRCS = [
]

PROD_NEONDOTFP16ARITH_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-1x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-4x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-1x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-4x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x8c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x8c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x8c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x16c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x8c4-minmax-neondotfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c4-minmax-neondotfp16arith.c",
]

PROD_NEON_AARCH64_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-aarch64-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-aarch64-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-aarch64-neon-u8.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-aarch64-neon-sqrt-u4.c",
    "XNNPACK/src/x8-lut/gen/x8-lut-aarch64-neon-tbx128x4-u64.c",
    "XNNPACK/src/x8-packq/x8-packq-aarch64-neon-f32qp8-u2.c",
    "XNNPACK/src/x24-transposec/x24-transposec-4x4-aarch64-neon-tbl128.c",
    "XNNPACK/src/x32-transposec/x32-transposec-4x4-aarch64-neon-tbl128.c",
]

PROD_NEONFMA_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p8c-minmax-neonfma.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p8c-minmax-neonfma.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-5f5m5l8c4s4r-minmax-neonfma-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p8c-minmax-neonfma.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p8c-minmax-neonfma-acc2.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-6x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-neonfma-p8.c",
    "XNNPACK/src/f32-ibilinear/gen/f32-ibilinear-neonfma-c8.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-6x8s4-minmax-neonfma.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-neonfma-rr1-lut64-p2-u16-acc2.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-32x1-minmax-neonfma-pipelined.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-neonfma-rr1-lut16-p3-u16.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-neonfma-rr1-p6-u8.c",
    "XNNPACK/src/f32-vmulcaddc/gen/f32-vmulcaddc-c4-minmax-neonfma-2x.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-neonfma-rr1-lut64-p2-nr2recps-u16.c",
]

PROD_AVXVNNI_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-5x8c8-minmax-avxvnni-prfm.c",
    "XNNPACK/src/qs8-packw/gen/qs8-packw-x8c8-gemm-goi-avxvnni-prfm.c",
    "XNNPACK/src/qs8-packw/gen/qs8-packw-x8c8-gemm-goi-avxvnni.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-avxvnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-5x8c8-minmax-fp32-avxvnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-avxvnni-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-5x8c8-minmax-fp32-avxvnni-prfm.c",
    "XNNPACK/src/qs8-qu8-packw/gen/qs8-qu8-packw-x8c8-gemm-goi-avxvnni.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-avxvnni-u128-acc2.c",
]

PROD_AVX2_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32acc-gemm/gen/f16-f32acc-gemm-1x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f16-f32acc-gemm/gen/f16-f32acc-gemm-4x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f16-f32acc-igemm/gen/f16-f32acc-igemm-1x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f16-f32acc-igemm/gen/f16-f32acc-igemm-4x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f16-pavgpool/f16-pavgpool-9p8x-minmax-avx2-c8.c",
    "XNNPACK/src/f16-pavgpool/f16-pavgpool-9x-minmax-avx2-c8.c",
    "XNNPACK/src/f16-raddstoreexpminusmax/gen/f16-raddstoreexpminusmax-avx2-rr1-p2-u32.c",
    "XNNPACK/src/f16-velu/gen/f16-velu-avx2-rr1-p3-u16.c",
    "XNNPACK/src/f16-vsigmoid/gen/f16-vsigmoid-avx2-rr1-p2-rcp-u32.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-3x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-5x16-minmax-avx2-broadcast.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-avx2-u64.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-avx2-u64.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-avx2-rr2-p5-u32-acc2.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-avx2-rr1-lut4-p4-perm-u56.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-avx2-rational-3-3-div.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-avx2-rr1-p5-div-u40.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-3x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-1x8c8-minmax-avx2-madd-prfm.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-4x8c8-minmax-avx2-madd-prfm.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-3x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-3x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-3x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x8c8-minmax-avx2-madd-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x8c8-minmax-avx2-madd-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x8c8-minmax-avx2.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x8c8-minmax-avx2.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qs8-f16-vcvt/gen/qs8-f16-vcvt-avx2-u16.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-avx2-u16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-avx2-c64.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-avx2-u64-acc2.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-avx2-mul32-ld64-u16.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-avx2-mul32-ld64-u16.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-avx2-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-avx2-u32.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p16c-minmax-fp32-avx2-mul32.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-avx2-u16.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-3x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-3x8c8-minmax-fp32-avx2.c",
    "XNNPACK/src/qu8-rsum/gen/qu8-rsum-avx2-u64-acc2.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-avx2-mul32-ld64-u16.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-avx2-mul32-ld64-u16.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-avx2-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-avx2-u32.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-avx2-u128.c",
    "XNNPACK/src/s32-f32-vcvt/gen/s32-f32-vcvt-avx2.c",
    "XNNPACK/src/u8-vclamp/u8-vclamp-avx2-u128.c",
    "XNNPACK/src/u32-f32-vcvt/gen/u32-f32-vcvt-avx2.c",
    "XNNPACK/src/x8-lut/gen/x8-lut-avx2-u128.c",
    "XNNPACK/src/x8-transposec/gen/x8-transposec-32x32-reuse-switch-avx2.c",
    "XNNPACK/src/x16-packw/gen/x16-packw-x16-gemm-goi-avx2-u16-prfm.c",
    "XNNPACK/src/x16-transposec/gen/x16-transposec-16x16-reuse-switch-avx2.c",
]

PROD_SCALAR_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-scalar-u1.c",
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-scalar-u4.c",
    "XNNPACK/src/f16-qs8-vcvt/gen/f16-qs8-vcvt-scalar-imagic-u4.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rmax-scalar-u2-acc2.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rminmax-scalar-u2-acc2.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-4x-scalar-c1.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9p8x-scalar-c1.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9x-scalar-c1.c",
    "XNNPACK/src/f32-avgpool/f32-avgpool-9p8x-minmax-scalar-c1.c",
    "XNNPACK/src/f32-avgpool/f32-avgpool-9x-minmax-scalar-c1.c",
    "XNNPACK/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x4-scalar-1x1.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-2f2m2l4c1s1r-minmax-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p1c-minmax-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p1c-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p1c-minmax-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p1c-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p1c-minmax-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p1c-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p1c-minmax-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p1c-scalar-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-2x1-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-scalar-4x1.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-1x1-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-scalar-2x1-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-1x1-acc5.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-scalar-2x1-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-1x1-acc5.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-scalar-2x1-acc2.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-scalar-bitcast-u4.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-scalar-fabsf-u2.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x4-relu-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x4-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-2x4-minmax-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-2x4-relu-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-2x4-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x2-minmax-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x2-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x4-relu-scalar.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x4-scalar.c",
    "XNNPACK/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-scalar-p4.c",
    "XNNPACK/src/f32-ibilinear/gen/f32-ibilinear-scalar-c2.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x4-minmax-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x4-relu-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x4-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-2x4-minmax-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-2x4-relu-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-2x4-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x2-minmax-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x2-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x4-minmax-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x4-relu-scalar.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x4-scalar.c",
    "XNNPACK/src/f32-maxpool/f32-maxpool-9p8x-minmax-scalar-c1.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9p8x-minmax-scalar-c1.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9x-minmax-scalar-c1.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u1.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-imagic-u4.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-scalar-lrintf-u4.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u1.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-imagic-u4.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-scalar-lrintf-u4.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-scalar-rr2-p5-u4-acc2.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-scalar.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-scalar-u4-acc4.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-scalar-u4-acc4.c",
    "XNNPACK/src/f32-rsum/gen/f32-rsum-scalar-u4-acc4.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-8x1-minmax-scalar.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-8x2-minmax-scalar.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-8x4-minmax-scalar.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-scalar-u2.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-scalar-u2.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vprelu-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vpreluc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-scalar-u2.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrpreluc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-scalar-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-scalar-u8.c",
    "XNNPACK/src/f32-vclamp/gen/f32-vclamp-scalar-u4.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-scalar-u4.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysign-scalar.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysignc-scalar.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vrcopysignc-scalar.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u2.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-scalar-rr2-lut16-p3-u4.c",
    "XNNPACK/src/f32-vexp/gen/f32-vexp-scalar-exp.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-scalar-rational-12-10-div.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-scalar-u4.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-scalar-rational-3-3-div.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-scalar-u4.c",
    "XNNPACK/src/f32-vmulcaddc/gen/f32-vmulcaddc-c1-minmax-scalar-2x.c",
    "XNNPACK/src/f32-vrelu/gen/f32-vrelu-scalar-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u1.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-scalar-libm-u4.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u1.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-scalar-libm-u4.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u1.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-scalar-libm-u4.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u1.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-scalar-libm-u4.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u1.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-scalar-rsqrt-u4.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-scalar-rr2-lut64-p2-div-u2.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-scalar-sqrt-u1.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-scalar-rational-9-8-div.c",
    "XNNPACK/src/f32-vunary/gen/f32-vabs-scalar.c",
    "XNNPACK/src/f32-vunary/gen/f32-vneg-scalar.c",
    "XNNPACK/src/f32-vunary/gen/f32-vsqr-scalar.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x2-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-2x2-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x2-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x4-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-2x2-minmax-scalar.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x4-minmax-scalar.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u1.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-scalar-u4.c",
    "XNNPACK/src/qs8-packw/gen/qs8-packw-x16c8-gemm-goi-scalar.c",
    "XNNPACK/src/qs8-packw/gen/qs8-packw-x64c4-gemm-goi-scalar.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qs8-qu8-packw/gen/qs8-qu8-packw-x16c8-gemm-goi-scalar.c",
    "XNNPACK/src/qs8-rdsum/gen/qs8-rdsum-minmax-fp32-scalar-u1-acc1.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-scalar-u4.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u1.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-scalar-u4.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u1.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-scalar-u4.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-scalar-u1.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-scalar-u4.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-andxor-u4.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-scalar-select-u4.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-scalar-u4.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-scalar-u4.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9p8x-minmax-fp32-scalar-imagic-c1.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9x-minmax-fp32-scalar-imagic-c1.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-fmagic.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p1c-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p2c-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u1.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-scalar-u4.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-2x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-3x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-2x2-minmax-fp32-scalar-imagic.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-3x4-minmax-fp32-scalar-lrintf.c",
    "XNNPACK/src/qu8-rdsum/gen/qu8-rdsum-scalar.c",
    "XNNPACK/src/qu8-rsum/gen/qu8-rsum-scalar-u4.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u1.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-scalar-u4.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u1.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-scalar-u4.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-scalar-u1.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-scalar-u4.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-andxor-u4.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-scalar-select-u4.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-scalar-u4.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-scalar-u4.c",
    "XNNPACK/src/s8-ibilinear/gen/s8-ibilinear-scalar-c1.c",
    "XNNPACK/src/s8-maxpool/s8-maxpool-9p8x-minmax-scalar-c1.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-scalar-u4.c",
    "XNNPACK/src/s32-f32-vcvt/gen/s32-f32-vcvt-scalar.c",
    "XNNPACK/src/u8-ibilinear/gen/u8-ibilinear-scalar-c1.c",
    "XNNPACK/src/u8-lut32norm/u8-lut32norm-scalar.c",
    "XNNPACK/src/u8-maxpool/u8-maxpool-9p8x-minmax-scalar-c1.c",
    "XNNPACK/src/u8-rmax/u8-rmax-scalar-u2.c",
    "XNNPACK/src/u8-vclamp/u8-vclamp-scalar-u4.c",
    "XNNPACK/src/u32-f32-vcvt/gen/u32-f32-vcvt-scalar.c",
    "XNNPACK/src/x8-lut/gen/x8-lut-scalar-u4.c",
    "XNNPACK/src/x8-packq/x8-packq-scalar-f32qp8-u1.c",
    "XNNPACK/src/x8-packw/gen/x8-packw-x4-gemm-goi-scalar-u2.c",
    "XNNPACK/src/x8-packw/gen/x8-packw-x8-gemm-goi-scalar-u2.c",
    "XNNPACK/src/x8-packw/gen/x8-packw-x16-gemm-goi-scalar-u2.c",
    "XNNPACK/src/x8-packw/gen/x8-packw-x32-gemm-goi-scalar-u2.c",
    "XNNPACK/src/x8-transposec/gen/x8-transposec-2x4-scalar-int.c",
    "XNNPACK/src/x8-zip/x8-zip-x2-scalar.c",
    "XNNPACK/src/x8-zip/x8-zip-x3-scalar.c",
    "XNNPACK/src/x8-zip/x8-zip-x4-scalar.c",
    "XNNPACK/src/x8-zip/x8-zip-xm-scalar.c",
    "XNNPACK/src/x16-packw/gen/x16-packw-x64-gemm-goi-scalar-int-u4.c",
    "XNNPACK/src/x16-transposec/gen/x16-transposec-2x4-scalar-int.c",
    "XNNPACK/src/x24-transposec/gen/x24-transposec-1x2-scalar.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x2-gemm-goi-scalar-float-u4.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x4-gemm-goi-scalar-float-u4.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-2x4-scalar-int.c",
    "XNNPACK/src/x32-unpool/x32-unpool-scalar.c",
    "XNNPACK/src/x32-zip/x32-zip-x2-scalar.c",
    "XNNPACK/src/x32-zip/x32-zip-x3-scalar.c",
    "XNNPACK/src/x32-zip/x32-zip-x4-scalar.c",
    "XNNPACK/src/x32-zip/x32-zip-xm-scalar.c",
    "XNNPACK/src/x64-transposec/gen/x64-transposec-4x2-scalar-int.c",
    "XNNPACK/src/xx-copy/xx-copy-scalar-memcpy.c",
    "XNNPACK/src/xx-fill/xx-fill-scalar-u16.c",
    "XNNPACK/src/xx-pad/xx-pad-p4-scalar-u16.c",
    "XNNPACK/src/xx-transposev/xx-transposev-1x1-scalar-memcpy.c",
]

PROD_FMA3_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-3p16c-minmax-fma3.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-4p16c-minmax-fma3.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-9p16c-minmax-fma3.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-25p8c-minmax-fma3-acc2.c",
    "XNNPACK/src/f16-ibilinear/gen/f16-ibilinear-fma3-c8.c",
    "XNNPACK/src/f16-vmulcaddc/gen/f16-vmulcaddc-c8-minmax-fma3-2x.c",
    "XNNPACK/src/f16-vtanh/gen/f16-vtanh-fma3-polynomial-p19h9t2-u32.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p16c-minmax-fma3.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p16c-minmax-fma3.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-5f5m5l8c8s4r-minmax-fma3.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p16c-minmax-fma3.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p8c-minmax-fma3.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x16s4-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x16s4-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-5x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x16s4-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x16s4-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-5x16-minmax-fma3-broadcast-prfm.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-3x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-5x16-minmax-fma3-broadcast.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-fma3-u16.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-fma3-rational-12-10-div.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-fma3-u16.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-fma3-rational-3-3-div.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-fma3-rsqrt-u16.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-fma3-rsqrt-u16.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-fma3-rational-9-8-div.c",
]

TABLE_SRCS = [
    "XNNPACK/src/tables/exp2-k-over-64.c",
    "XNNPACK/src/tables/exp2-k-over-2048.c",
    "XNNPACK/src/tables/exp2minus-k-over-4.c",
    "XNNPACK/src/tables/exp2minus-k-over-8.c",
    "XNNPACK/src/tables/exp2minus-k-over-16.c",
    "XNNPACK/src/tables/exp2minus-k-over-32.c",
    "XNNPACK/src/tables/exp2minus-k-over-64.c",
    "XNNPACK/src/tables/exp2minus-k-over-2048.c",
    "XNNPACK/src/tables/vlog.c",
]

PROD_SSE2_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-sse2-int16-u32.c",
    "XNNPACK/src/f16-vunary/gen/f16-vabs-sse2-u16.c",
    "XNNPACK/src/f16-vunary/gen/f16-vneg-sse2-u16.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-4x-sse2-c4.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9p8x-sse2-c4.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9x-sse2-c4.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-sse2-u16.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-sse2-u32.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-sse2-u32.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-sse2-rr2-p5-u16-acc2.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vprelu-sse2-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vpreluc-sse2-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrpreluc-sse2-u8.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysign-sse2.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysignc-sse2.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vrcopysignc-sse2.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-sse2-rr2-lut16-p3-u12.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-sse2-rational-12-10-div.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-sse2-rational-3-3-div.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-sse2-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-sse2-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-sse2-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-sse2-u8.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-sse2-rr2-lut64-p2-div-u8.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-sse2-rational-9-8-div.c",
    "XNNPACK/src/f32-vunary/gen/f32-vabs-sse2.c",
    "XNNPACK/src/f32-vunary/gen/f32-vneg-sse2.c",
    "XNNPACK/src/f32-vunary/gen/f32-vsqr-sse2.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4c8-minmax-sse2-ld128.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x4c8-minmax-sse2-ld128.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x4c8-minmax-sse2-ld128.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x4c8-minmax-sse2-ld128.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x4c8-minmax-sse2-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x4c8-minmax-sse2-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x4c8-minmax-sse2-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x4c8-minmax-sse2-ld64.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p8c-minmax-fp32-sse2-mul16-add16.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p8c-minmax-fp32-sse2-mul16-add16.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-sse2-u32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p8c-minmax-fp32-sse2-mul16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p8c-minmax-fp32-sse2-mul16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-sse2-mul16.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-sse2-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-sse2-u32.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9p8x-minmax-fp32-sse2-c8.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9x-minmax-fp32-sse2-c8.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p8c-minmax-fp32-sse2-mul16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-fp32-sse2-mul16.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-sse2-u32.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-3x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-3x4c8-minmax-fp32-sse2-ld64.c",
    "XNNPACK/src/qu8-rsum/gen/qu8-rsum-sse2-u32-acc2.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-sse2-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-sse2-u32.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-sse2-mul16-ld64-u8.c",
    "XNNPACK/src/s8-ibilinear/gen/s8-ibilinear-sse2-c8.c",
    "XNNPACK/src/s8-maxpool/s8-maxpool-9p8x-minmax-sse2-c16.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-sse2-u64.c",
    "XNNPACK/src/u8-ibilinear/gen/u8-ibilinear-sse2-c8.c",
    "XNNPACK/src/u8-maxpool/u8-maxpool-9p8x-minmax-sse2-c16.c",
    "XNNPACK/src/u8-rmax/u8-rmax-sse2-u16.c",
    "XNNPACK/src/u8-vclamp/u8-vclamp-sse2-u64.c",
    "XNNPACK/src/x8-transposec/gen/x8-transposec-16x16-reuse-mov-sse2.c",
    "XNNPACK/src/x8-zip/x8-zip-x2-sse2.c",
    "XNNPACK/src/x8-zip/x8-zip-x3-sse2.c",
    "XNNPACK/src/x8-zip/x8-zip-x4-sse2.c",
    "XNNPACK/src/x8-zip/x8-zip-xm-sse2.c",
    "XNNPACK/src/x16-transposec/gen/x16-transposec-8x8-reuse-multi-sse2.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x2c4-gemm-goi-sse2-u4.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x8-gemm-goi-sse2-u4.c",
    "XNNPACK/src/x32-unpool/x32-unpool-sse2.c",
    "XNNPACK/src/x32-zip/x32-zip-x2-sse2.c",
    "XNNPACK/src/x32-zip/x32-zip-x3-sse2.c",
    "XNNPACK/src/x32-zip/x32-zip-x4-sse2.c",
    "XNNPACK/src/x32-zip/x32-zip-xm-sse2.c",
    "XNNPACK/src/x64-transposec/gen/x64-transposec-2x2-multi-mov-sse2.c",
    "XNNPACK/src/xx-fill/xx-fill-sse2-u64.c",
    "XNNPACK/src/xx-pad/xx-pad-p16-sse2-u16.c",
]

PROD_XOP_MICROKERNEL_SRCS = [
]

PROD_NEONI8MM_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c8-minmax-neoni8mm.c",
    "XNNPACK/src/qp8-f32-qb4w-gemm/qp8-f32-qb4w-gemm-minmax-16x4c16s2-mstep4-neoni8mm.c",
    "XNNPACK/src/qp8-f32-qc4w-gemm/qp8-f32-qc4w-gemm-minmax-8x8c16s2-mstep2-neoni8mm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-neoni8mm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c8-minmax-fp32-neoni8mm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-neoni8mm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c8-minmax-fp32-neoni8mm.c",
]

AARCH64_ASM_MICROKERNEL_SRCS = [
]

PROD_NEONFP16_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-neonfp16-u16.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-neonfp16-u16.c",
]

PROD_AVX_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-avx-int16-u16.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p16c-minmax-avx.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p16c-minmax-avx.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-6f6m7l8c8s4r-minmax-avx.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p16c-minmax-avx.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p8c-minmax-avx.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-avx-u24.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-5x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-5x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-3x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-5x16-minmax-avx-broadcast.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-avx-u32.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-avx-u32.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-avx-c32.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-avx-u32-acc4.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-avx-u32-acc4.c",
    "XNNPACK/src/f32-rsum/gen/f32-rsum-avx-u32-acc4.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vprelu-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vpreluc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrpreluc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-avx-u16.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-avx-u16.c",
    "XNNPACK/src/f32-vclamp/gen/f32-vclamp-avx-u16.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysign-avx.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysignc-avx.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vrcopysignc-avx.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-avx-rr2-lut4-p4-perm-u32.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-avx-rational-12-10-div.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-avx-u16.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-avx-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-avx-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-avx-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-avx-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-avx-u16.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-avx-rsqrt-u16.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-avx-rr2-p5-nr2-u40.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-avx-rsqrt-u16.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-avx-rational-9-8-div.c",
    "XNNPACK/src/f32-vunary/gen/f32-vabs-avx.c",
    "XNNPACK/src/f32-vunary/gen/f32-vneg-avx.c",
    "XNNPACK/src/f32-vunary/gen/f32-vsqr-avx.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4c8-minmax-avx-ld128.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x4c8-minmax-avx-ld128.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p16c-minmax-fp32-avx-mul16-add16.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p16c-minmax-fp32-avx-mul16-add16.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-avx-u32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-avx-mul16-add16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-avx-mul16-add16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-avx-mul16-add16.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-avx-mul32-ld32-u8.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-avx-mul32-ld32-u8.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-avx-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-avx-u32.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-avx-mul16-ld64-u16.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-avx-mul16-ld64-u16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-fp32-avx-mul16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p16c-minmax-fp32-avx-mul16.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-avx-u32.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-2x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-2x4c8-minmax-fp32-avx-ld128.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-avx-mul32-ld32-u8.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-avx-mul32-ld32-u8.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-avx-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-avx-u32.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-avx-mul16-ld64-u16.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-avx-mul16-ld64-u16.c",
    "XNNPACK/src/x8-lut/gen/x8-lut-avx-u64.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x16-gemm-goi-avx-u4.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x16s4-gemm-goi-avx-u4.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-8x8-reuse-multi-avx.c",
    "XNNPACK/src/x64-transposec/gen/x64-transposec-4x4-reuse-multi-avx.c",
]

PROD_F16C_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-avgpool/f16-avgpool-9p8x-minmax-f16c-c8.c",
    "XNNPACK/src/f16-avgpool/f16-avgpool-9x-minmax-f16c-c8.c",
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-f16c-u16.c",
    "XNNPACK/src/f16-f32acc-rdsum/gen/f16-f32acc-rdsum-7p7x-f16c-c32.c",
    "XNNPACK/src/f16-f32acc-rsum/gen/f16-f32acc-rsum-f16c-u32-acc4.c",
    "XNNPACK/src/f16-maxpool/f16-maxpool-9p8x-minmax-f16c-c8.c",
    "XNNPACK/src/f16-rminmax/f16-rmax-f16c-u32.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vadd-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vaddc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vdiv-f16c-u8.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vdivc-f16c-u8.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmax-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmaxc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmin-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vminc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmul-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmulc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vprelu-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vpreluc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrdivc-f16c-u8.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrpreluc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrsubc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsqrdiff-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsqrdiffc-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsub-f16c-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsubc-f16c-u16.c",
    "XNNPACK/src/f16-vclamp/gen/f16-vclamp-f16c-u16.c",
    "XNNPACK/src/f16-vhswish/gen/f16-vhswish-f16c-u16.c",
    "XNNPACK/src/f16-vlrelu/gen/f16-vlrelu-f16c-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndd-f16c-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndne-f16c-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndu-f16c-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndz-f16c-u16.c",
    "XNNPACK/src/f16-vrsqrt/gen/f16-vrsqrt-f16c-rsqrt-u32.c",
    "XNNPACK/src/f16-vsqrt/gen/f16-vsqrt-f16c-rsqrt-u32.c",
    "XNNPACK/src/f16-vtanh/gen/f16-vtanh-f16c-expm1minus-rr1-p3h2ts-rcp-u72.c",
    "XNNPACK/src/f16-vunary/gen/f16-vsqr-f16c-u16.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-f16c-u16.c",
]

PROD_AVX512SKX_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-avx512skx-u16.c",
    "XNNPACK/src/f16-f32acc-rdsum/gen/f16-f32acc-rdsum-7p7x-avx512skx-c64.c",
    "XNNPACK/src/f16-f32acc-rsum/gen/f16-f32acc-rsum-avx512skx-u64-acc4.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rmax-avx512skx-u64-acc4.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rminmax-avx512skx-u64-acc4.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-avx512skx-u16.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc4w-gemm-1x32-minmax-avx512skx-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc4w-gemm-7x32-minmax-avx512skx-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x32-minmax-avx512skx-broadcast.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-7x32-minmax-avx512skx-broadcast.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-avx512skx-u128.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-avx512skx-u128.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16c8-minmax-avx512skx-madd-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-8x16c8-minmax-avx512skx-madd-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x16c8-minmax-avx512skx-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-8x16c8-minmax-avx512skx-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x16c8-minmax-avx512skx-prfm.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-8x16c8-minmax-avx512skx-prfm.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-avx512skx-u32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-7x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-7x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-avx512skx-c64.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-avx512skx-u128-acc2.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-avx512skx-mul32-ld128-u16.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-avx512skx-mul32-ld128-u16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p32c-minmax-fp32-avx512skx-mul32.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-avx512skx-u32.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-7x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-7x16c8-minmax-fp32-avx512skx-prfm.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-avx512skx-mul32-ld128-u16.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-avx512skx-mul32-ld128-u16.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-avx512skx-u256.c",
    "XNNPACK/src/u8-vclamp/u8-vclamp-avx512skx-u256.c",
    "XNNPACK/src/x8-lut/gen/x8-lut-avx512skx-vpshufb-u64.c",
]

PROD_NEONFP16ARITH_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-avgpool/f16-avgpool-9p8x-minmax-neonfp16arith-c8.c",
    "XNNPACK/src/f16-avgpool/f16-avgpool-9x-minmax-neonfp16arith-c8.c",
    "XNNPACK/src/f16-conv-hwc2chw/f16-conv-hwc2chw-3x3s2p1c3x4-neonfp16arith-2x2.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-3p16c-minmax-neonfp16arith.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-4p16c-minmax-neonfp16arith.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-9p8c-minmax-neonfp16arith.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-9p16c-minmax-neonfp16arith.c",
    "XNNPACK/src/f16-dwconv/gen/f16-dwconv-25p8c-minmax-neonfp16arith-acc2.c",
    "XNNPACK/src/f16-dwconv2d-chw/gen/f16-dwconv2d-chw-3x3p1-minmax-neonfp16arith-2x8.c",
    "XNNPACK/src/f16-dwconv2d-chw/gen/f16-dwconv2d-chw-3x3s2p1-minmax-neonfp16arith-1x8.c",
    "XNNPACK/src/f16-dwconv2d-chw/gen/f16-dwconv2d-chw-5x5p2-minmax-neonfp16arith-1x8.c",
    "XNNPACK/src/f16-dwconv2d-chw/gen/f16-dwconv2d-chw-5x5s2p2-minmax-neonfp16arith-1x8.c",
    "XNNPACK/src/f16-f32acc-rdsum/gen/f16-f32acc-rdsum-7p7x-minmax-neonfp16arith-c16.c",
    "XNNPACK/src/f16-f32acc-rsum/gen/f16-f32acc-rsum-neonfp16arith-u32-acc4.c",
    "XNNPACK/src/f16-gemm/gen/f16-gemm-1x8-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-gemm/gen/f16-gemm-1x16-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-gemm/gen/f16-gemm-6x8-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-gemm/gen/f16-gemm-6x16-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-ibilinear-chw/gen/f16-ibilinear-chw-neonfp16arith-p8.c",
    "XNNPACK/src/f16-ibilinear/gen/f16-ibilinear-neonfp16arith-c8.c",
    "XNNPACK/src/f16-igemm/gen/f16-igemm-1x8-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-igemm/gen/f16-igemm-1x16-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-igemm/gen/f16-igemm-6x8-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-igemm/gen/f16-igemm-6x16-minmax-neonfp16arith-ld64.c",
    "XNNPACK/src/f16-maxpool/f16-maxpool-9p8x-minmax-neonfp16arith-c8.c",
    "XNNPACK/src/f16-pavgpool/f16-pavgpool-9p8x-minmax-neonfp16arith-c8.c",
    "XNNPACK/src/f16-pavgpool/f16-pavgpool-9x-minmax-neonfp16arith-c8.c",
    "XNNPACK/src/f16-qs8-vcvt/gen/f16-qs8-vcvt-neonfp16arith-u32.c",
    "XNNPACK/src/f16-raddstoreexpminusmax/gen/f16-raddstoreexpminusmax-neonfp16arith-rr2-p2-u32.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rmax-neonfp16arith-u32-acc4.c",
    "XNNPACK/src/f16-rminmax/gen/f16-rminmax-neonfp16arith-u32-acc4.c",
    "XNNPACK/src/f16-spmm/gen/f16-spmm-32x1-minmax-neonfp16arith-pipelined.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vadd-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vaddc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmax-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmaxc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmin-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vminc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmul-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vmulc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vprelu-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vpreluc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrpreluc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrsubc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsqrdiff-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsqrdiffc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsub-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vsubc-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vclamp/gen/f16-vclamp-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vcmul/gen/f16-vcmul-neonfp16arith-u16.c",
    "XNNPACK/src/f16-velu/gen/f16-velu-neonfp16arith-rr1-p3-u16.c",
    "XNNPACK/src/f16-vhswish/gen/f16-vhswish-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vlrelu/gen/f16-vlrelu-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vmulcaddc/gen/f16-vmulcaddc-c8-minmax-neonfp16arith-2x.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndd-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndne-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndu-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vrnd/gen/f16-vrndz-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vrsqrt/gen/f16-vrsqrt-neonfp16arith-rsqrt-u16.c",
    "XNNPACK/src/f16-vsigmoid/gen/f16-vsigmoid-neonfp16arith-rr2-p2-nr1fma-u40.c",
    "XNNPACK/src/f16-vsigmoid/gen/f16-vsigmoid-neonfp16arith-rr2-p2-nr1recps-u16.c",
    "XNNPACK/src/f16-vsqrt/gen/f16-vsqrt-neonfp16arith-nr1fma1adj-u8.c",
    "XNNPACK/src/f16-vtanh/gen/f16-vtanh-neonfp16arith-expm1minus-rr1-p3h2ts-nr1fma-u32.c",
    "XNNPACK/src/f16-vunary/gen/f16-vabs-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vunary/gen/f16-vneg-neonfp16arith-u16.c",
    "XNNPACK/src/f16-vunary/gen/f16-vsqr-neonfp16arith-u16.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-1x16-minmax-neonfp16arith-mlal-lane.c",
    "XNNPACK/src/qd8-f16-qb4w-gemm/gen/qd8-f16-qb4w-gemm-6x16-minmax-neonfp16arith-mlal-lane.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-1x16-minmax-neonfp16arith-mlal-lane.c",
    "XNNPACK/src/qd8-f16-qc4w-gemm/gen/qd8-f16-qc4w-gemm-6x16-minmax-neonfp16arith-mlal-lane.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-1x8c2s4-minmax-neonfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-gemm/gen/qd8-f16-qc8w-gemm-2x8c2s4-minmax-neonfp16arith.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-1x8c2s4-minmax-neonfp16arith-mlal.c",
    "XNNPACK/src/qd8-f16-qc8w-igemm/gen/qd8-f16-qc8w-igemm-2x8c2s4-minmax-neonfp16arith-mlal.c",
    "XNNPACK/src/qs8-f16-vcvt/gen/qs8-f16-vcvt-neonfp16arith-u32.c",
]

PROD_SSSE3_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-ssse3-2x4-acc2.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x4c8-minmax-ssse3-madd.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x4c8-minmax-ssse3-madd.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-ssse3-u32-acc2.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-ssse3-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-ssse3-u32.c",
    "XNNPACK/src/qu8-rdsum/gen/qu8-rdsum-7p7x-ssse3-c64.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-ssse3-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-ssse3-u32.c",
    "XNNPACK/src/x24-transposec/x24-transposec-4x4-ssse3.c",
]

LOGGING_SRCS = [
    "XNNPACK/src/enums/allocation-type.c",
    "XNNPACK/src/enums/datatype-strings.c",
    "XNNPACK/src/enums/microkernel-type.c",
    "XNNPACK/src/enums/node-type.c",
    "XNNPACK/src/enums/operator-type.c",
    "XNNPACK/src/log.c",
]

PROD_NEONDOT_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-4x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-4x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x8c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x8c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x8c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x16c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x8c4-minmax-neondot.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x16c4-minmax-neondot.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x8c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-4x16c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x8c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-4x16c4-minmax-fp32-neondot.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-neondot-u32-acc2.c",
]

PROD_SSE41_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-sse41-int16-u16.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-sse41-u8.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-sse41-dup.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-sse41-dup.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-sse41-dup.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-sse41-dup.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-sse41-u32.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-sse41-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-sse41-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-sse41-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-sse41-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-sse41-u8.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-sse41-rr2-lut64-p2-div-u8.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x4c8-minmax-sse41-ld128.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-3x4c8-minmax-sse41-ld128.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x4c8-minmax-sse41-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-4x4c8-minmax-sse41-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x4c8-minmax-sse41-ld64.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-4x4c8-minmax-sse41-ld64.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p8c-minmax-fp32-sse41-mul16-add16.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p8c-minmax-fp32-sse41-mul16-add16.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-sse41-u16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p8c-minmax-fp32-sse41-mul16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p8c-minmax-fp32-sse41-mul16.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-sse41-mul16.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-3x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-3x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-sse41-c64.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-sse41-mul16-ld64-u8.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-sse41-mul16-ld64-u8.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-sse41-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-sse41-u32.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-fp32-sse41-mul16-ld64-u16.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-fp32-sse41-mul16-ld64-u16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p8c-minmax-fp32-sse41-mul16.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-fp32-sse41-mul16.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-sse41-u16.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-3x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-3x4c8-minmax-fp32-sse41-ld64.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-sse41-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-sse41-mul16-ld64-u8.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-sse41-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-sse41-u32.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-fp32-sse41-mul16-ld64-u16.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-fp32-sse41-mul16-ld64-u16.c",
    "XNNPACK/src/s8-ibilinear/gen/s8-ibilinear-sse41-c16.c",
    "XNNPACK/src/s8-maxpool/s8-maxpool-9p8x-minmax-sse41-c16.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-sse41-u64.c",
    "XNNPACK/src/u8-ibilinear/gen/u8-ibilinear-sse41-c16.c",
]

SUBGRAPH_SRCS = [
    "XNNPACK/src/memory-planner.c",
    "XNNPACK/src/runtime.c",
    "XNNPACK/src/subgraph.c",
    "XNNPACK/src/subgraph/argmax-pooling-2d.c",
    "XNNPACK/src/subgraph/average-pooling-2d.c",
    "XNNPACK/src/subgraph/batch-matrix-multiply.c",
    "XNNPACK/src/subgraph/binary.c",
    "XNNPACK/src/subgraph/concatenate.c",
    "XNNPACK/src/subgraph/convolution-2d.c",
    "XNNPACK/src/subgraph/copy.c",
    "XNNPACK/src/subgraph/deconvolution-2d.c",
    "XNNPACK/src/subgraph/deprecated.c",
    "XNNPACK/src/subgraph/depth-to-space-2d.c",
    "XNNPACK/src/subgraph/depthwise-convolution-2d.c",
    "XNNPACK/src/subgraph/even-split.c",
    "XNNPACK/src/subgraph/fully-connected-sparse.c",
    "XNNPACK/src/subgraph/fully-connected.c",
    "XNNPACK/src/subgraph/max-pooling-2d.c",
    "XNNPACK/src/subgraph/pack-lh.c",
    "XNNPACK/src/subgraph/reshape-helpers.c",
    "XNNPACK/src/subgraph/scaled-dot-product-attention.c",
    "XNNPACK/src/subgraph/softmax.c",
    "XNNPACK/src/subgraph/space-to-depth-2d.c",
    "XNNPACK/src/subgraph/static-constant-pad.c",
    "XNNPACK/src/subgraph/static-reduce.c",
    "XNNPACK/src/subgraph/static-resize-bilinear-2d.c",
    "XNNPACK/src/subgraph/static-slice.c",
    "XNNPACK/src/subgraph/static-transpose.c",
    "XNNPACK/src/subgraph/unpooling-2d.c",
    "XNNPACK/src/subgraph/unary.c",
    "XNNPACK/src/subgraph/validation.c",
    "XNNPACK/src/tensor.c",
]

PROD_NEON_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-f32-vcvt/gen/f16-f32-vcvt-neon-int16-u16.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-4x-neon-c4.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9p8x-neon-c4.c",
    "XNNPACK/src/f32-argmaxpool/f32-argmaxpool-9x-neon-c4.c",
    "XNNPACK/src/f32-avgpool/f32-avgpool-9p8x-minmax-neon-c4.c",
    "XNNPACK/src/f32-avgpool/f32-avgpool-9x-minmax-neon-c4.c",
    "XNNPACK/src/f32-conv-hwc2chw/f32-conv-hwc2chw-3x3s2p1c3x4-neon-2x2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p8c-minmax-neon.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p8c-minmax-neon.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-8f8m9l4c4s4r-minmax-neon-acc2.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p8c-minmax-neon.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p8c-minmax-neon-acc2.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3p1-minmax-neon-2x4.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-3x3s2p1-minmax-neon-1x4.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5p2-minmax-neon-1x4.c",
    "XNNPACK/src/f32-dwconv2d-chw/gen/f32-dwconv2d-chw-5x5s2p2-minmax-neon-1x4.c",
    "XNNPACK/src/f32-f16-vcvt/gen/f32-f16-vcvt-neon-u8.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x2-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-4x8-minmax-neon-lane-ld128.c",
    "XNNPACK/src/f32-ibilinear-chw/gen/f32-ibilinear-chw-neon-p8.c",
    "XNNPACK/src/f32-ibilinear/gen/f32-ibilinear-neon-c8.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x2-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-4x8-minmax-neon-lane-ld128.c",
    "XNNPACK/src/f32-maxpool/f32-maxpool-9p8x-minmax-neon-c4.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9p8x-minmax-neon-c4.c",
    "XNNPACK/src/f32-pavgpool/f32-pavgpool-9x-minmax-neon-c4.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-1x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-qc4w-gemm/gen/f32-qc4w-gemm-4x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-1x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-qc8w-gemm/gen/f32-qc8w-gemm-4x8-minmax-neon-lane-ld64.c",
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-neon-u32.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-neon-u32.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-neon-c16.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-neon-u16-acc4.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-neon-u16-acc4.c",
    "XNNPACK/src/f32-rsum/gen/f32-rsum-neon-u16-acc4.c",
    "XNNPACK/src/f32-spmm/gen/f32-spmm-32x1-minmax-neon.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vprelu-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vpreluc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrpreluc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-neon-u8.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-neon-u8.c",
    "XNNPACK/src/f32-vclamp/gen/f32-vclamp-neon-u16.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-neon-u8.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysign-neon.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysignc-neon.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vrcopysignc-neon.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-neon-rr2-lut16-p3-u8.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-neon-rational-12-10-div.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-neon-u16.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-neon-rational-3-3-div.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-neon-u8.c",
    "XNNPACK/src/f32-vmulcaddc/gen/f32-vmulcaddc-c4-minmax-neon-2x.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-neon-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-neon-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-neon-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-neon-u8.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-neon-rsqrt-u16.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-neon-rr2-lut64-p2-nr2recps-u8.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-neon-rational-9-8-div.c",
    "XNNPACK/src/f32-vunary/gen/f32-vabs-neon.c",
    "XNNPACK/src/f32-vunary/gen/f32-vneg-neon.c",
    "XNNPACK/src/f32-vunary/gen/f32-vsqr-neon.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x16-minmax-neon-mlal-lane.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-6x16-minmax-neon-mlal-lane.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16-minmax-neon-mlal-lane.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-6x16-minmax-neon-mlal-lane.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-1x8c2s4-minmax-neon-mlal.c",
    "XNNPACK/src/qd8-f32-qc8w-gemm/gen/qd8-f32-qc8w-gemm-2x8c2s4-minmax-neon-mlal.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-1x8c2s4-minmax-neon-mlal.c",
    "XNNPACK/src/qd8-f32-qc8w-igemm/gen/qd8-f32-qc8w-igemm-2x8c2s4-minmax-neon-mlal.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-9p16c-minmax-rndnu-neon-mla8-ld64.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p8c-minmax-rndnu-neon-mla8-ld64.c",
    "XNNPACK/src/qs8-dwconv/gen/qs8-dwconv-25p16c-minmax-rndnu-neon-mla8-ld64.c",
    "XNNPACK/src/qs8-f32-vcvt/gen/qs8-f32-vcvt-neon-u32.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neon-mla8-ld128.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neon-mla8-ld64.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neon-mla8-ld64.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neon-mlal.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neon-mlal.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neon-mlal.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neon-mlal.c",
    "XNNPACK/src/qs8-rdsum/gen/qs8-rdsum-7p7x-minmax-fp32-neon-c32.c",
    "XNNPACK/src/qs8-rsum/gen/qs8-rsum-neon-u32-acc2.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u16.c",
    "XNNPACK/src/qs8-vadd/gen/qs8-vadd-minmax-neon-ld64-u32.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u16.c",
    "XNNPACK/src/qs8-vaddc/gen/qs8-vaddc-minmax-neon-ld64-u32.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-neon-u32.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c",
    "XNNPACK/src/qs8-vmul/gen/qs8-vmul-minmax-rndnu-neon-ld64-u16.c",
    "XNNPACK/src/qs8-vmulc/gen/qs8-vmulc-minmax-rndnu-neon-ld64-u16.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9p8x-minmax-fp32-neon-c8.c",
    "XNNPACK/src/qu8-avgpool/qu8-avgpool-9x-minmax-fp32-neon-c8.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-9p16c-minmax-rndnu-neon-mul8.c",
    "XNNPACK/src/qu8-dwconv/gen/qu8-dwconv-25p8c-minmax-rndnu-neon-mul8.c",
    "XNNPACK/src/qu8-f32-vcvt/gen/qu8-f32-vcvt-neon-u32.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x8-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x16-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-3x8-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-4x16-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x8-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x16-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-3x8-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-4x16-minmax-rndnu-neon-mlal-lane.c",
    "XNNPACK/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u16.c",
    "XNNPACK/src/qu8-rdsum/gen/qu8-rdsum-7p7x-neon-u32.c",
    "XNNPACK/src/qu8-rsum/gen/qu8-rsum-neon-u32-acc2.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u16.c",
    "XNNPACK/src/qu8-vadd/gen/qu8-vadd-minmax-neon-ld64-u32.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u16.c",
    "XNNPACK/src/qu8-vaddc/gen/qu8-vaddc-minmax-neon-ld64-u32.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-neon-u32.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c",
    "XNNPACK/src/qu8-vmul/gen/qu8-vmul-minmax-rndnu-neon-ld64-u16.c",
    "XNNPACK/src/qu8-vmulc/gen/qu8-vmulc-minmax-rndnu-neon-ld64-u16.c",
    "XNNPACK/src/s8-ibilinear/gen/s8-ibilinear-neon-c8.c",
    "XNNPACK/src/s8-ibilinear/gen/s8-ibilinear-neon-c16.c",
    "XNNPACK/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c",
    "XNNPACK/src/s8-vclamp/s8-vclamp-neon-u64.c",
    "XNNPACK/src/s32-f32-vcvt/gen/s32-f32-vcvt-neon.c",
    "XNNPACK/src/u8-ibilinear/gen/u8-ibilinear-neon-c8.c",
    "XNNPACK/src/u8-ibilinear/gen/u8-ibilinear-neon-c16.c",
    "XNNPACK/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c",
    "XNNPACK/src/u8-rmax/u8-rmax-neon-u16.c",
    "XNNPACK/src/u8-vclamp/u8-vclamp-neon-u64.c",
    "XNNPACK/src/u32-f32-vcvt/gen/u32-f32-vcvt-neon.c",
    "XNNPACK/src/x8-transposec/gen/x8-transposec-16x16-reuse-dec-zip-neon.c",
    "XNNPACK/src/x8-zip/x8-zip-x2-neon.c",
    "XNNPACK/src/x8-zip/x8-zip-x3-neon.c",
    "XNNPACK/src/x8-zip/x8-zip-x4-neon.c",
    "XNNPACK/src/x8-zip/x8-zip-xm-neon.c",
    "XNNPACK/src/x16-packw/gen/x16-packw-x8-gemm-goi-neon-ld4lane-u8-prfm.c",
    "XNNPACK/src/x16-packw/gen/x16-packw-x16-gemm-goi-neon-ld4lane-u8-prfm.c",
    "XNNPACK/src/x16-transposec/gen/x16-transposec-8x8-reuse-dec-zip-neon.c",
    "XNNPACK/src/x24-transposec/x24-transposec-2x2-neon-tbl64.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x2-gemm-goi-neon-ld2lane-u2-prfm.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x8-gemm-goi-neon-ld4lane-u4-prfm.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c",
    "XNNPACK/src/x32-transposec/gen/x32-transposec-4x4-reuse-dec-zip-neon.c",
    "XNNPACK/src/x32-unpool/x32-unpool-neon.c",
    "XNNPACK/src/x32-zip/x32-zip-x2-neon.c",
    "XNNPACK/src/x32-zip/x32-zip-x3-neon.c",
    "XNNPACK/src/x32-zip/x32-zip-x4-neon.c",
    "XNNPACK/src/x32-zip/x32-zip-xm-neon.c",
    "XNNPACK/src/x64-transposec/gen/x64-transposec-2x2-multi-dec-zip-neon.c",
    "XNNPACK/src/x64-transposec/gen/x64-transposec-2x2-reuse-dec-zip-neon.c",
    "XNNPACK/src/xx-fill/xx-fill-neon-u64.c",
    "XNNPACK/src/xx-pad/xx-pad-p16-neon-u16.c",
]

PROD_NEONV8_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-qs8-vcvt/gen/f32-qs8-vcvt-neonv8-u32.c",
    "XNNPACK/src/f32-qu8-vcvt/gen/f32-qu8-vcvt-neonv8-u32.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-neonv8-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-neonv8-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-neonv8-u8.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-neonv8-u8.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-3p16c-minmax-fp32-neonv8-mla8-ld128.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-9p16c-minmax-fp32-neonv8-mla8-ld64.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p8c-minmax-fp32-neonv8-mla8-ld64.c",
    "XNNPACK/src/qs8-qc8w-dwconv/gen/qs8-qc8w-dwconv-25p16c-minmax-fp32-neonv8-mla8-ld64.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x8c2s4-minmax-fp32-neonv8-mlal.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x16-minmax-fp32-neonv8-mlal-lane.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x8c2s4-minmax-fp32-neonv8-mlal.c",
]

PROD_AVX512VNNIGFNI_MICROKERNEL_SRCS = [
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-1x16c8-minmax-avx512vnnigfni-prfm.c",
    "XNNPACK/src/qd8-f32-qb4w-gemm/gen/qd8-f32-qb4w-gemm-14x16c8-minmax-avx512vnnigfni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-1x16c8-minmax-avx512vnnigfni-prfm.c",
    "XNNPACK/src/qd8-f32-qc4w-gemm/gen/qd8-f32-qc4w-gemm-14x16c8-minmax-avx512vnnigfni-prfm.c",
]

PROD_NEONDOTFP16ARITH_AARCH64_MICROKERNEL_SRCS = [
]

PROD_ARMSIMD32_MICROKERNEL_SRCS = [
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-2x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-1x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qs8-qc8w-igemm/gen/qs8-qc8w-igemm-2x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qs8-vcvt/gen/qs8-vcvt-armsimd32-u8.c",
    "XNNPACK/src/qs8-vlrelu/gen/qs8-vlrelu-armsimd32-u4.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-1x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qu8-gemm/gen/qu8-gemm-2x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-1x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qu8-igemm/gen/qu8-igemm-2x2c4-minmax-fp32-armsimd32.c",
    "XNNPACK/src/qu8-vcvt/gen/qu8-vcvt-armsimd32-u8.c",
    "XNNPACK/src/qu8-vlrelu/gen/qu8-vlrelu-armsimd32-u4.c",
]

PROD_AVX512VBMI_MICROKERNEL_SRCS = [
    "XNNPACK/src/x8-lut/gen/x8-lut-avx512vbmi-vpermx2b-u128.c",
]

PROD_AVX512F_MICROKERNEL_SRCS = [
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-3p16c-minmax-avx512f.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-4p16c-minmax-avx512f.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-5f5m5l32c16s1r-minmax-avx512f.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-9p16c-minmax-avx512f.c",
    "XNNPACK/src/f32-dwconv/gen/f32-dwconv-25p16c-minmax-avx512f.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-1x16-minmax-avx512f-broadcast.c",
    "XNNPACK/src/f32-gemm/gen/f32-gemm-7x16-minmax-avx512f-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-1x16-minmax-avx512f-broadcast.c",
    "XNNPACK/src/f32-igemm/gen/f32-igemm-7x16-minmax-avx512f-broadcast.c",
    "XNNPACK/src/f32-raddstoreexpminusmax/gen/f32-raddstoreexpminusmax-avx512f-rr2-p5-u64-acc2.c",
    "XNNPACK/src/f32-rdsum/gen/f32-rdsum-7p7x-minmax-avx512f-c64.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rmax-avx512f-u64-acc4.c",
    "XNNPACK/src/f32-rminmax/gen/f32-rminmax-avx512f-u64-acc4.c",
    "XNNPACK/src/f32-rsum/gen/f32-rsum-avx512f-u64-acc4.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vadd-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vaddc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdiv-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vdivc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmax-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmaxc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmin-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vminc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmul-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vmulc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vprelu-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vpreluc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrdivc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrpreluc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vrsubc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiff-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsqrdiffc-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsub-avx512f-u32.c",
    "XNNPACK/src/f32-vbinary/gen/f32-vsubc-avx512f-u32.c",
    "XNNPACK/src/f32-vclamp/gen/f32-vclamp-avx512f-u16.c",
    "XNNPACK/src/f32-vcmul/gen/f32-vcmul-avx512f-u32.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysign-avx512f.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vcopysignc-avx512f.c",
    "XNNPACK/src/f32-vcopysign/gen/f32-vrcopysignc-avx512f.c",
    "XNNPACK/src/f32-velu/gen/f32-velu-avx512f-rr1-p6-u128.c",
    "XNNPACK/src/f32-vgelu/gen/f32-vgelu-avx512f-rational-12-10-nr.c",
    "XNNPACK/src/f32-vhswish/gen/f32-vhswish-avx512f-u16.c",
    "XNNPACK/src/f32-vlog/gen/f32-vlog-avx512f-rational-3-3-div.c",
    "XNNPACK/src/f32-vlrelu/gen/f32-vlrelu-avx512f-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndd-avx512f-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndne-avx512f-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndu-avx512f-u16.c",
    "XNNPACK/src/f32-vrnd/gen/f32-vrndz-avx512f-u16.c",
    "XNNPACK/src/f32-vrsqrt/gen/f32-vrsqrt-avx512f-rsqrt-u32.c",
    "XNNPACK/src/f32-vsigmoid/gen/f32-vsigmoid-avx512f-rr2-lut32-p2-perm2-scalef-div-u64.c",
    "XNNPACK/src/f32-vsqrt/gen/f32-vsqrt-avx512f-rsqrt-u16.c",
    "XNNPACK/src/f32-vtanh/gen/f32-vtanh-avx512f-rational-9-8-nr.c",
    "XNNPACK/src/f32-vunary/gen/f32-vabs-avx512f.c",
    "XNNPACK/src/f32-vunary/gen/f32-vneg-avx512f.c",
    "XNNPACK/src/f32-vunary/gen/f32-vsqr-avx512f.c",
    "XNNPACK/src/s32-f32-vcvt/gen/s32-f32-vcvt-avx512f.c",
    "XNNPACK/src/u32-f32-vcvt/gen/u32-f32-vcvt-avx512f.c",
    "XNNPACK/src/x32-packw/gen/x32-packw-x16-gemm-goi-avx512f-u4-prfm.c",
]

PROD_NEONDOT_AARCH64_MICROKERNEL_SRCS = [
    "XNNPACK/src/qp8-f32-qb4w-gemm/qp8-f32-qb4w-gemm-minmax-1x4c16s2-aarch64-neondot.c",
    "XNNPACK/src/qp8-f32-qb4w-gemm/qp8-f32-qb4w-gemm-minmax-1x8c16s2-aarch64-neondot.c",
    "XNNPACK/src/qp8-f32-qc4w-gemm/qp8-f32-qc4w-gemm-minmax-1x8c16s2-aarch64-neondot.c",
]

JIT_SRCS = [
]

PROD_NEONFP16ARITH_AARCH64_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-vbinary/gen/f16-vdiv-aarch64-neonfp16arith-u8.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vdivc-aarch64-neonfp16arith-u8.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrdivc-aarch64-neonfp16arith-u8.c",
    "XNNPACK/src/f16-vsqrt/gen/f16-vsqrt-aarch64-neonfp16arith-sqrt-u8.c",
    "XNNPACK/src/f16-vtanh/gen/f16-vtanh-aarch64-neonfp16arith-expm1minus-rr1-p3h2ts-div-u32.c",
]

PROD_FP16ARITH_MICROKERNEL_SRCS = [
    "XNNPACK/src/f16-vbinary/gen/f16-vdiv-fp16arith-u2.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vdivc-fp16arith-u2.c",
    "XNNPACK/src/f16-vbinary/gen/f16-vrdivc-fp16arith-u2.c",
]

OPERATOR_SRCS = [
    "XNNPACK/src/operator-delete.c",
    "XNNPACK/src/operators/argmax-pooling-nhwc.c",
    "XNNPACK/src/operators/average-pooling-nhwc.c",
    "XNNPACK/src/operators/batch-matrix-multiply-nc.c",
    "XNNPACK/src/operators/binary-elementwise-nd.c",
    "XNNPACK/src/operators/channel-shuffle-nc.c",
    "XNNPACK/src/operators/constant-pad-nd.c",
    "XNNPACK/src/operators/convolution-nchw.c",
    "XNNPACK/src/operators/convolution-nhwc.c",
    "XNNPACK/src/operators/deconvolution-nhwc.c",
    "XNNPACK/src/operators/dynamic-fully-connected-nc.c",
    "XNNPACK/src/operators/fully-connected-nc.c",
    "XNNPACK/src/operators/max-pooling-nhwc.c",
    "XNNPACK/src/operators/pack-lh.c",
    "XNNPACK/src/operators/reduce-nd.c",
    "XNNPACK/src/operators/resize-bilinear-nchw.c",
    "XNNPACK/src/operators/resize-bilinear-nhwc.c",
    "XNNPACK/src/operators/rope-nthc.c",
    "XNNPACK/src/operators/scaled-dot-product-attention-nhtc.c",
    "XNNPACK/src/operators/slice-nd.c",
    "XNNPACK/src/operators/softmax-nc.c",
    "XNNPACK/src/operators/transpose-nd.c",
    "XNNPACK/src/operators/unary-elementwise-nc.c",
    "XNNPACK/src/operators/unpooling-nhwc.c",
]

AARCH32_ASM_MICROKERNEL_SRCS = [
]