xref: /llvm-project/libc/test/src/math/CMakeLists.txt (revision db6b7a84e6e4949569e756f46357d9f54ad16a03)
1add_custom_target(libc-math-unittests)
2
3add_fp_unittest(
4  cosf_test
5  NEED_MPFR
6  SUITE
7    libc-math-unittests
8  SRCS
9    cosf_test.cpp
10  HDRS
11    sdcomp26094.h
12  DEPENDS
13    libc.src.errno.errno
14    libc.src.math.cosf
15    libc.src.__support.CPP.array
16    libc.src.__support.FPUtil.fp_bits
17)
18
19add_fp_unittest(
20  cos_test
21  NEED_MPFR
22  SUITE
23    libc-math-unittests
24  SRCS
25    cos_test.cpp
26  DEPENDS
27    libc.src.math.cos
28    libc.src.__support.FPUtil.fp_bits
29)
30
31add_fp_unittest(
32  cosf16_test
33  NEED_MPFR
34  SUITE
35    libc-math-unittests
36  SRCS
37    cosf16_test.cpp
38  DEPENDS
39    libc.src.math.cosf16
40)
41
42add_fp_unittest(
43  cospif_test
44  NEED_MPFR
45  SUITE
46    libc-math-unittests
47  SRCS
48    cospif_test.cpp
49  HDRS
50    sdcomp26094.h
51  DEPENDS
52    libc.src.errno.errno
53    libc.src.math.cospif
54    libc.src.__support.CPP.array
55    libc.src.__support.FPUtil.fp_bits
56)
57
58
59add_fp_unittest(
60  cospif16_test
61  NEED_MPFR
62  SUITE
63    libc-math-unittests
64  SRCS
65    cospif16_test.cpp
66  DEPENDS
67    libc.src.math.cospif16
68)
69
70add_fp_unittest(
71  daddl_test
72  NEED_MPFR
73  SUITE
74    libc-math-unittests
75  SRCS
76    daddl_test.cpp
77  HDRS
78    AddTest.h
79  DEPENDS
80    libc.src.math.daddl
81)
82
83add_fp_unittest(
84  sinf_test
85  NEED_MPFR
86  SUITE
87    libc-math-unittests
88  SRCS
89    sinf_test.cpp
90  HDRS
91    sdcomp26094.h
92  DEPENDS
93    libc.src.errno.errno
94    libc.src.math.sinf
95    libc.src.__support.CPP.array
96    libc.src.__support.FPUtil.fp_bits
97)
98
99add_fp_unittest(
100  sinf16_test
101  NEED_MPFR
102  SUITE
103    libc-math-unittests
104  SRCS
105    sinf16_test.cpp
106  DEPENDS
107    libc.src.math.sinf16
108)
109
110add_fp_unittest(
111  sinpif_test
112  NEED_MPFR
113  SUITE
114    libc-math-unittests
115  SRCS
116    sinpif_test.cpp
117  HDRS
118    sdcomp26094.h
119  DEPENDS
120    libc.src.errno.errno
121    libc.src.math.sinpif
122    libc.src.__support.CPP.array
123    libc.src.__support.FPUtil.fp_bits
124)
125
126add_fp_unittest(
127  sinpif16_test
128  NEED_MPFR
129  SUITE
130    libc-math-unittests
131  SRCS
132    sinpif16_test.cpp
133  DEPENDS
134    libc.src.math.sinpif16
135)
136
137add_fp_unittest(
138  sin_test
139  NEED_MPFR
140  SUITE
141    libc-math-unittests
142  SRCS
143    sin_test.cpp
144  DEPENDS
145    libc.src.math.sin
146    libc.src.__support.FPUtil.fp_bits
147)
148
149add_fp_unittest(
150  sincosf_test
151  NEED_MPFR
152  SUITE
153    libc-math-unittests
154  SRCS
155    sincosf_test.cpp
156  HDRS
157    sdcomp26094.h
158  DEPENDS
159    libc.src.errno.errno
160    libc.src.math.sincosf
161    libc.src.__support.CPP.array
162    libc.src.__support.FPUtil.fp_bits
163)
164
165add_fp_unittest(
166  sincos_test
167  NEED_MPFR
168  SUITE
169    libc-math-unittests
170  SRCS
171    sincos_test.cpp
172  DEPENDS
173    libc.src.math.sincos
174    libc.src.__support.FPUtil.fp_bits
175)
176
177add_fp_unittest(
178  tanf_test
179  NEED_MPFR
180  SUITE
181    libc-math-unittests
182  SRCS
183    tanf_test.cpp
184  HDRS
185    sdcomp26094.h
186  DEPENDS
187    libc.src.errno.errno
188    libc.src.math.tanf
189    libc.src.__support.CPP.array
190    libc.src.__support.FPUtil.fp_bits
191)
192
193add_fp_unittest(
194  tanf16_test
195  NEED_MPFR
196  SUITE
197    libc-math-unittests
198  SRCS
199    tanf16_test.cpp
200  DEPENDS
201    libc.src.math.tanf16
202)
203
204add_fp_unittest(
205  tanpif16_test
206  NEED_MPFR
207  SUITE
208    libc-math-unittests
209  SRCS
210    tanpif16_test.cpp
211  DEPENDS
212    libc.src.math.tanpif16
213)
214
215add_fp_unittest(
216  fabs_test
217  NEED_MPFR
218  SUITE
219    libc-math-unittests
220  SRCS
221    fabs_test.cpp
222  HDRS
223    FAbsTest.h
224  DEPENDS
225    libc.src.math.fabs
226    libc.src.__support.FPUtil.fp_bits
227)
228
229add_fp_unittest(
230  fabsf_test
231  NEED_MPFR
232  SUITE
233    libc-math-unittests
234  SRCS
235    fabsf_test.cpp
236  HDRS
237    FAbsTest.h
238  DEPENDS
239    libc.src.math.fabsf
240    libc.src.__support.FPUtil.fp_bits
241)
242
243add_fp_unittest(
244  fabsl_test
245  NEED_MPFR
246  SUITE
247    libc-math-unittests
248  SRCS
249    fabsl_test.cpp
250  HDRS
251    FAbsTest.h
252  DEPENDS
253    libc.src.math.fabsl
254    libc.src.__support.FPUtil.fp_bits
255)
256
257add_fp_unittest(
258  fadd_test
259  NEED_MPFR
260  SUITE
261    libc-math-unittests
262  SRCS
263    fadd_test.cpp
264  HDRS
265    AddTest.h
266  DEPENDS
267    libc.src.math.fadd
268    libc.src.__support.FPUtil.basic_operations
269)
270
271add_fp_unittest(
272  faddl_test
273  NEED_MPFR
274  SUITE
275    libc-math-unittests
276  SRCS
277    faddl_test.cpp
278  HDRS
279    AddTest.h
280  DEPENDS
281    libc.src.math.faddl
282)
283
284add_fp_unittest(
285  trunc_test
286  NEED_MPFR
287  SUITE
288    libc-math-unittests
289  SRCS
290    trunc_test.cpp
291  HDRS
292    TruncTest.h
293  DEPENDS
294    libc.src.math.trunc
295    libc.src.__support.CPP.algorithm
296    libc.src.__support.FPUtil.fp_bits
297)
298
299add_fp_unittest(
300  truncf_test
301  NEED_MPFR
302  SUITE
303    libc-math-unittests
304  SRCS
305    truncf_test.cpp
306  HDRS
307    TruncTest.h
308  DEPENDS
309    libc.src.math.truncf
310    libc.src.__support.CPP.algorithm
311    libc.src.__support.FPUtil.fp_bits
312)
313
314add_fp_unittest(
315  truncl_test
316  NEED_MPFR
317  SUITE
318    libc-math-unittests
319  SRCS
320    truncl_test.cpp
321  HDRS
322    TruncTest.h
323  DEPENDS
324    libc.src.math.truncl
325    libc.src.__support.CPP.algorithm
326    libc.src.__support.FPUtil.fp_bits
327)
328
329add_fp_unittest(
330  truncf16_test
331  NEED_MPFR
332  SUITE
333    libc-math-unittests
334  SRCS
335    truncf16_test.cpp
336  HDRS
337    TruncTest.h
338  DEPENDS
339    libc.src.math.truncf16
340    libc.src.__support.CPP.algorithm
341    libc.src.__support.FPUtil.fp_bits
342)
343
344add_fp_unittest(
345  ceil_test
346  NEED_MPFR
347  SUITE
348    libc-math-unittests
349  SRCS
350    ceil_test.cpp
351  HDRS
352    CeilTest.h
353  DEPENDS
354    libc.src.math.ceil
355    libc.src.__support.CPP.algorithm
356    libc.src.__support.FPUtil.fp_bits
357)
358
359add_fp_unittest(
360  ceilf_test
361  NEED_MPFR
362  SUITE
363    libc-math-unittests
364  SRCS
365    ceilf_test.cpp
366  HDRS
367    CeilTest.h
368  DEPENDS
369    libc.src.math.ceilf
370    libc.src.__support.CPP.algorithm
371    libc.src.__support.FPUtil.fp_bits
372)
373
374add_fp_unittest(
375  ceill_test
376  NEED_MPFR
377  SUITE
378    libc-math-unittests
379  SRCS
380    ceill_test.cpp
381  HDRS
382    CeilTest.h
383  DEPENDS
384    libc.src.math.ceill
385    libc.src.__support.CPP.algorithm
386    libc.src.__support.FPUtil.fp_bits
387)
388
389add_fp_unittest(
390  ceilf16_test
391  NEED_MPFR
392  SUITE
393    libc-math-unittests
394  SRCS
395    ceilf16_test.cpp
396  HDRS
397    CeilTest.h
398  DEPENDS
399    libc.src.math.ceilf16
400    libc.src.__support.CPP.algorithm
401    libc.src.__support.FPUtil.fp_bits
402)
403
404add_fp_unittest(
405  floor_test
406  NEED_MPFR
407  SUITE
408    libc-math-unittests
409  SRCS
410    floor_test.cpp
411  HDRS
412    FloorTest.h
413  DEPENDS
414    libc.src.math.floor
415    libc.src.__support.CPP.algorithm
416    libc.src.__support.FPUtil.fp_bits
417)
418
419add_fp_unittest(
420  floorf_test
421  NEED_MPFR
422  SUITE
423    libc-math-unittests
424  SRCS
425    floorf_test.cpp
426  HDRS
427    FloorTest.h
428  DEPENDS
429    libc.src.math.floorf
430    libc.src.__support.CPP.algorithm
431    libc.src.__support.FPUtil.fp_bits
432)
433
434add_fp_unittest(
435  floorl_test
436  NEED_MPFR
437  SUITE
438    libc-math-unittests
439  SRCS
440    floorl_test.cpp
441  HDRS
442    FloorTest.h
443  DEPENDS
444    libc.src.math.floorl
445    libc.src.__support.CPP.algorithm
446    libc.src.__support.FPUtil.fp_bits
447)
448
449add_fp_unittest(
450  floorf16_test
451  NEED_MPFR
452  SUITE
453    libc-math-unittests
454  SRCS
455    floorf16_test.cpp
456  HDRS
457    FloorTest.h
458  DEPENDS
459    libc.src.math.floorf16
460    libc.src.__support.CPP.algorithm
461    libc.src.__support.FPUtil.fp_bits
462)
463
464add_fp_unittest(
465  round_test
466  NEED_MPFR
467  SUITE
468    libc-math-unittests
469  SRCS
470    round_test.cpp
471  HDRS
472    RoundTest.h
473  DEPENDS
474    libc.src.math.round
475    libc.src.__support.CPP.algorithm
476    libc.src.__support.FPUtil.fp_bits
477)
478
479add_fp_unittest(
480  roundf_test
481  NEED_MPFR
482  SUITE
483    libc-math-unittests
484  SRCS
485    roundf_test.cpp
486  HDRS
487    RoundTest.h
488  DEPENDS
489    libc.src.math.roundf
490    libc.src.__support.CPP.algorithm
491    libc.src.__support.FPUtil.fp_bits
492)
493
494add_fp_unittest(
495  roundl_test
496  NEED_MPFR
497  SUITE
498    libc-math-unittests
499  SRCS
500    roundl_test.cpp
501  HDRS
502    RoundTest.h
503  DEPENDS
504    libc.src.math.roundl
505    libc.src.__support.CPP.algorithm
506    libc.src.__support.FPUtil.fp_bits
507)
508
509add_fp_unittest(
510  roundf16_test
511  NEED_MPFR
512  SUITE
513    libc-math-unittests
514  SRCS
515    roundf16_test.cpp
516  HDRS
517    RoundTest.h
518  DEPENDS
519    libc.src.math.roundf16
520    libc.src.__support.CPP.algorithm
521    libc.src.__support.FPUtil.fp_bits
522)
523
524add_fp_unittest(
525  roundeven_test
526  NEED_MPFR
527  SUITE
528    libc-math-unittests
529  SRCS
530    roundeven_test.cpp
531  HDRS
532  RoundEvenTest.h
533  DEPENDS
534    libc.src.math.roundeven
535    libc.src.__support.CPP.algorithm
536    libc.src.__support.FPUtil.fp_bits
537)
538
539add_fp_unittest(
540  roundevenf_test
541  NEED_MPFR
542  SUITE
543    libc-math-unittests
544  SRCS
545    roundevenf_test.cpp
546  HDRS
547  RoundEvenTest.h
548  DEPENDS
549    libc.src.math.roundevenf
550    libc.src.__support.CPP.algorithm
551    libc.src.__support.FPUtil.fp_bits
552)
553
554add_fp_unittest(
555  roundevenl_test
556  NEED_MPFR
557  SUITE
558    libc-math-unittests
559  SRCS
560    roundevenl_test.cpp
561  HDRS
562  RoundEvenTest.h
563  DEPENDS
564    libc.src.math.roundevenl
565    libc.src.__support.CPP.algorithm
566    libc.src.__support.FPUtil.fp_bits
567)
568
569add_fp_unittest(
570  roundevenf16_test
571  NEED_MPFR
572  SUITE
573    libc-math-unittests
574  SRCS
575    roundevenf16_test.cpp
576  HDRS
577  RoundEvenTest.h
578  DEPENDS
579    libc.src.math.roundevenf16
580    libc.src.__support.CPP.algorithm
581    libc.src.__support.FPUtil.fp_bits
582)
583
584add_fp_unittest(
585  lround_test
586  NEED_MPFR
587  SUITE
588    libc-math-unittests
589  SRCS
590    lround_test.cpp
591  HDRS
592    RoundToIntegerTest.h
593  DEPENDS
594    libc.hdr.fenv_macros
595    libc.src.errno.errno
596    libc.src.math.lround
597    libc.src.__support.CPP.algorithm
598    libc.src.__support.FPUtil.fenv_impl
599    libc.src.__support.FPUtil.fp_bits
600)
601
602add_fp_unittest(
603  lroundf_test
604  NEED_MPFR
605  SUITE
606    libc-math-unittests
607  SRCS
608    lroundf_test.cpp
609  HDRS
610    RoundToIntegerTest.h
611  DEPENDS
612    libc.hdr.fenv_macros
613    libc.src.errno.errno
614    libc.src.math.lroundf
615    libc.src.__support.CPP.algorithm
616    libc.src.__support.FPUtil.fenv_impl
617    libc.src.__support.FPUtil.fp_bits
618)
619
620add_fp_unittest(
621  lroundl_test
622  NEED_MPFR
623  SUITE
624    libc-math-unittests
625  SRCS
626    lroundl_test.cpp
627  HDRS
628    RoundToIntegerTest.h
629  DEPENDS
630    libc.hdr.fenv_macros
631    libc.src.errno.errno
632    libc.src.math.lroundl
633    libc.src.__support.CPP.algorithm
634    libc.src.__support.FPUtil.fenv_impl
635    libc.src.__support.FPUtil.fp_bits
636)
637
638add_fp_unittest(
639  lroundf16_test
640  NEED_MPFR
641  SUITE
642    libc-math-unittests
643  SRCS
644    lroundf16_test.cpp
645  HDRS
646    RoundToIntegerTest.h
647  DEPENDS
648    libc.hdr.fenv_macros
649    libc.src.errno.errno
650    libc.src.math.lroundf16
651    libc.src.__support.CPP.algorithm
652    libc.src.__support.FPUtil.fenv_impl
653    libc.src.__support.FPUtil.fp_bits
654)
655
656add_fp_unittest(
657  llround_test
658  NEED_MPFR
659  SUITE
660    libc-math-unittests
661  SRCS
662    llround_test.cpp
663  HDRS
664    RoundToIntegerTest.h
665  DEPENDS
666    libc.hdr.fenv_macros
667    libc.src.errno.errno
668    libc.src.math.llround
669    libc.src.__support.CPP.algorithm
670    libc.src.__support.FPUtil.fenv_impl
671    libc.src.__support.FPUtil.fp_bits
672)
673
674add_fp_unittest(
675  llroundf_test
676  NEED_MPFR
677  SUITE
678    libc-math-unittests
679  SRCS
680    llroundf_test.cpp
681  HDRS
682    RoundToIntegerTest.h
683  DEPENDS
684    libc.hdr.fenv_macros
685    libc.src.errno.errno
686    libc.src.math.llroundf
687    libc.src.__support.CPP.algorithm
688    libc.src.__support.FPUtil.fenv_impl
689    libc.src.__support.FPUtil.fp_bits
690)
691
692add_fp_unittest(
693  llroundl_test
694  NEED_MPFR
695  SUITE
696    libc-math-unittests
697  SRCS
698    llroundl_test.cpp
699  HDRS
700    RoundToIntegerTest.h
701  DEPENDS
702    libc.hdr.fenv_macros
703    libc.src.errno.errno
704    libc.src.math.llroundl
705    libc.src.__support.CPP.algorithm
706    libc.src.__support.FPUtil.fenv_impl
707    libc.src.__support.FPUtil.fp_bits
708)
709
710add_fp_unittest(
711  llroundf16_test
712  NEED_MPFR
713  SUITE
714    libc-math-unittests
715  SRCS
716    llroundf16_test.cpp
717  HDRS
718    RoundToIntegerTest.h
719  DEPENDS
720    libc.hdr.fenv_macros
721    libc.src.errno.errno
722    libc.src.math.llroundf16
723    libc.src.__support.CPP.algorithm
724    libc.src.__support.FPUtil.fenv_impl
725    libc.src.__support.FPUtil.fp_bits
726)
727
728add_fp_unittest(
729  nearbyint_test
730  NEED_MPFR
731  SUITE
732    libc-math-unittests
733  SRCS
734    nearbyint_test.cpp
735  HDRS
736    NearbyIntTest.h
737  DEPENDS
738    libc.src.math.nearbyint
739    libc.src.__support.CPP.algorithm
740    libc.src.__support.CPP.array
741)
742
743add_fp_unittest(
744  nearbyintf_test
745  NEED_MPFR
746  SUITE
747    libc-math-unittests
748  SRCS
749    nearbyintf_test.cpp
750  HDRS
751    NearbyIntTest.h
752  DEPENDS
753    libc.src.math.nearbyintf
754    libc.src.__support.CPP.algorithm
755    libc.src.__support.CPP.array
756)
757
758add_fp_unittest(
759  nearbyintl_test
760  NEED_MPFR
761  SUITE
762    libc-math-unittests
763  SRCS
764    nearbyintl_test.cpp
765  HDRS
766    NearbyIntTest.h
767  DEPENDS
768    libc.src.math.nearbyintl
769    libc.src.__support.CPP.algorithm
770    libc.src.__support.CPP.array
771)
772
773add_fp_unittest(
774  nearbyintf16_test
775  NEED_MPFR
776  SUITE
777    libc-math-unittests
778  SRCS
779    nearbyintf16_test.cpp
780  HDRS
781    NearbyIntTest.h
782  DEPENDS
783    libc.src.math.nearbyintf16
784    libc.src.__support.CPP.algorithm
785    libc.src.__support.CPP.array
786)
787
788add_fp_unittest(
789  rint_test
790  NEED_MPFR
791  SUITE
792    libc-math-unittests
793  SRCS
794    rint_test.cpp
795  HDRS
796    RIntTest.h
797  DEPENDS
798    libc.hdr.fenv_macros
799    libc.src.math.rint
800    libc.src.__support.CPP.algorithm
801    libc.src.__support.FPUtil.fenv_impl
802    libc.src.__support.FPUtil.fp_bits
803)
804
805add_fp_unittest(
806  rintf_test
807  NEED_MPFR
808  SUITE
809    libc-math-unittests
810  SRCS
811    rintf_test.cpp
812  HDRS
813    RIntTest.h
814  DEPENDS
815    libc.hdr.fenv_macros
816    libc.src.math.rintf
817    libc.src.__support.CPP.algorithm
818    libc.src.__support.FPUtil.fenv_impl
819    libc.src.__support.FPUtil.fp_bits
820)
821
822add_fp_unittest(
823  rintl_test
824  NEED_MPFR
825  SUITE
826    libc-math-unittests
827  SRCS
828    rintl_test.cpp
829  HDRS
830    RIntTest.h
831  DEPENDS
832    libc.hdr.fenv_macros
833    libc.src.math.rintl
834    libc.src.__support.CPP.algorithm
835    libc.src.__support.FPUtil.fenv_impl
836    libc.src.__support.FPUtil.fp_bits
837)
838
839add_fp_unittest(
840  rintf16_test
841  NEED_MPFR
842  SUITE
843    libc-math-unittests
844  SRCS
845    rintf16_test.cpp
846  HDRS
847    RIntTest.h
848  DEPENDS
849    libc.hdr.fenv_macros
850    libc.src.math.rintf16
851    libc.src.__support.CPP.algorithm
852    libc.src.__support.FPUtil.fenv_impl
853    libc.src.__support.FPUtil.fp_bits
854)
855
856add_fp_unittest(
857  lrint_test
858  NEED_MPFR
859  SUITE
860    libc-math-unittests
861  SRCS
862    lrint_test.cpp
863  HDRS
864    RoundToIntegerTest.h
865  DEPENDS
866    libc.src.math.lrint
867    libc.src.__support.CPP.algorithm
868    libc.src.__support.FPUtil.fenv_impl
869    libc.src.__support.FPUtil.fp_bits
870)
871
872add_fp_unittest(
873  lrintf_test
874  NEED_MPFR
875  SUITE
876    libc-math-unittests
877  SRCS
878    lrintf_test.cpp
879  HDRS
880    RoundToIntegerTest.h
881  DEPENDS
882    libc.src.math.lrintf
883    libc.src.__support.CPP.algorithm
884    libc.src.__support.FPUtil.fenv_impl
885    libc.src.__support.FPUtil.fp_bits
886)
887
888add_fp_unittest(
889  lrintl_test
890  NEED_MPFR
891  SUITE
892    libc-math-unittests
893  SRCS
894    lrintl_test.cpp
895  HDRS
896    RoundToIntegerTest.h
897  DEPENDS
898    libc.src.math.lrintl
899    libc.src.__support.CPP.algorithm
900    libc.src.__support.FPUtil.fenv_impl
901    libc.src.__support.FPUtil.fp_bits
902)
903
904add_fp_unittest(
905  lrintf16_test
906  NEED_MPFR
907  SUITE
908    libc-math-unittests
909  SRCS
910    lrintf16_test.cpp
911  HDRS
912    RoundToIntegerTest.h
913  DEPENDS
914    libc.src.math.lrintf16
915    libc.src.__support.CPP.algorithm
916    libc.src.__support.FPUtil.fenv_impl
917    libc.src.__support.FPUtil.fp_bits
918)
919
920add_fp_unittest(
921  llrint_test
922  NEED_MPFR
923  SUITE
924    libc-math-unittests
925  SRCS
926    llrint_test.cpp
927  HDRS
928    RoundToIntegerTest.h
929  DEPENDS
930    libc.src.math.llrint
931    libc.src.__support.CPP.algorithm
932    libc.src.__support.FPUtil.fenv_impl
933    libc.src.__support.FPUtil.fp_bits
934)
935
936add_fp_unittest(
937  llrintf_test
938  NEED_MPFR
939  SUITE
940    libc-math-unittests
941  SRCS
942    llrintf_test.cpp
943  HDRS
944    RoundToIntegerTest.h
945  DEPENDS
946    libc.src.math.llrintf
947    libc.src.__support.CPP.algorithm
948    libc.src.__support.FPUtil.fenv_impl
949    libc.src.__support.FPUtil.fp_bits
950)
951
952add_fp_unittest(
953  llrintl_test
954  NEED_MPFR
955  SUITE
956    libc-math-unittests
957  SRCS
958    llrintl_test.cpp
959  HDRS
960    RoundToIntegerTest.h
961  DEPENDS
962    libc.src.math.llrintl
963    libc.src.__support.CPP.algorithm
964    libc.src.__support.FPUtil.fenv_impl
965    libc.src.__support.FPUtil.fp_bits
966)
967
968add_fp_unittest(
969  llrintf16_test
970  NEED_MPFR
971  SUITE
972    libc-math-unittests
973  SRCS
974    llrintf16_test.cpp
975  HDRS
976    RoundToIntegerTest.h
977  DEPENDS
978    libc.src.math.llrintf16
979    libc.src.__support.CPP.algorithm
980    libc.src.__support.FPUtil.fenv_impl
981    libc.src.__support.FPUtil.fp_bits
982)
983
984add_fp_unittest(
985  exp_test
986  NEED_MPFR
987  SUITE
988    libc-math-unittests
989  SRCS
990    exp_test.cpp
991  DEPENDS
992    libc.src.errno.errno
993    libc.src.math.exp
994    libc.src.__support.FPUtil.fp_bits
995)
996
997add_fp_unittest(
998  expf_test
999  NEED_MPFR
1000  SUITE
1001    libc-math-unittests
1002  SRCS
1003    expf_test.cpp
1004  DEPENDS
1005    libc.src.errno.errno
1006    libc.src.math.expf
1007    libc.src.__support.FPUtil.fp_bits
1008)
1009
1010add_fp_unittest(
1011  expf16_test
1012  NEED_MPFR
1013  SUITE
1014    libc-math-unittests
1015  SRCS
1016    expf16_test.cpp
1017  DEPENDS
1018    libc.src.math.expf16
1019)
1020
1021add_fp_unittest(
1022  exp2_test
1023  NEED_MPFR
1024  SUITE
1025    libc-math-unittests
1026  SRCS
1027    exp2_test.cpp
1028  DEPENDS
1029    libc.src.errno.errno
1030    libc.src.math.exp2
1031    libc.src.__support.FPUtil.fp_bits
1032)
1033
1034add_fp_unittest(
1035  exp2f_test
1036  NEED_MPFR
1037  SUITE
1038    libc-math-unittests
1039  SRCS
1040    exp2f_test.cpp
1041  DEPENDS
1042    libc.src.errno.errno
1043    libc.src.math.exp2f
1044    libc.src.__support.FPUtil.fp_bits
1045)
1046
1047add_fp_unittest(
1048  exp2f16_test
1049  NEED_MPFR
1050  SUITE
1051    libc-math-unittests
1052  SRCS
1053    exp2f16_test.cpp
1054  DEPENDS
1055    libc.src.math.exp2f16
1056)
1057
1058add_fp_unittest(
1059  exp2m1f_test
1060  NEED_MPFR
1061  SUITE
1062    libc-math-unittests
1063  SRCS
1064    exp2m1f_test.cpp
1065  DEPENDS
1066    libc.src.errno.errno
1067    libc.src.math.exp2m1f
1068    libc.src.__support.CPP.array
1069    libc.src.__support.FPUtil.fp_bits
1070)
1071
1072add_fp_unittest(
1073  exp2m1f16_test
1074  NEED_MPFR
1075  SUITE
1076    libc-math-unittests
1077  SRCS
1078    exp2m1f16_test.cpp
1079  DEPENDS
1080    libc.src.math.exp2m1f16
1081)
1082
1083add_fp_unittest(
1084  exp10_test
1085  NEED_MPFR
1086  SUITE
1087    libc-math-unittests
1088  SRCS
1089    exp10_test.cpp
1090  DEPENDS
1091    libc.src.errno.errno
1092    libc.src.math.exp10
1093    libc.src.__support.FPUtil.fp_bits
1094)
1095
1096add_fp_unittest(
1097  exp10f_test
1098  NEED_MPFR
1099  SUITE
1100    libc-math-unittests
1101  SRCS
1102    exp10f_test.cpp
1103  DEPENDS
1104    libc.src.errno.errno
1105    libc.src.math.exp10f
1106    libc.src.__support.FPUtil.fp_bits
1107)
1108
1109add_fp_unittest(
1110  exp10f16_test
1111  NEED_MPFR
1112  SUITE
1113    libc-math-unittests
1114  SRCS
1115    exp10f16_test.cpp
1116  DEPENDS
1117    libc.src.math.exp10f16
1118)
1119
1120add_fp_unittest(
1121  exp10m1f16_test
1122  NEED_MPFR
1123  SUITE
1124    libc-math-unittests
1125  SRCS
1126    exp10m1f16_test.cpp
1127  DEPENDS
1128    libc.src.math.exp10m1f16
1129)
1130
1131add_fp_unittest(
1132  exp10m1f_test
1133  NEED_MPFR
1134  SUITE
1135    libc-math-unittests
1136  SRCS
1137    exp10m1f_test.cpp
1138  DEPENDS
1139    libc.hdr.math_macros
1140    libc.src.errno.errno
1141    libc.src.math.exp10m1f
1142    libc.src.__support.CPP.array
1143    libc.src.__support.FPUtil.fp_bits
1144)
1145
1146add_fp_unittest(
1147  copysign_test
1148  SUITE
1149    libc-math-unittests
1150  SRCS
1151    copysign_test.cpp
1152  HDRS
1153    CopySignTest.h
1154  DEPENDS
1155    libc.src.math.copysign
1156    libc.src.__support.FPUtil.fp_bits
1157  # FIXME: Currently fails on the GPU build.
1158  UNIT_TEST_ONLY
1159)
1160
1161add_fp_unittest(
1162  copysignf_test
1163  SUITE
1164    libc-math-unittests
1165  SRCS
1166    copysignf_test.cpp
1167  HDRS
1168    CopySignTest.h
1169  DEPENDS
1170    libc.src.math.copysignf
1171    libc.src.__support.FPUtil.fp_bits
1172  # FIXME: Currently fails on the GPU build.
1173  UNIT_TEST_ONLY
1174)
1175
1176add_fp_unittest(
1177  copysignl_test
1178  SUITE
1179    libc-math-unittests
1180  SRCS
1181    copysignl_test.cpp
1182  HDRS
1183    CopySignTest.h
1184  DEPENDS
1185    libc.src.math.copysignl
1186    libc.src.__support.FPUtil.fp_bits
1187  # FIXME: Currently fails on the GPU build.
1188  UNIT_TEST_ONLY
1189)
1190
1191add_fp_unittest(
1192  frexp_test
1193  NEED_MPFR
1194  SUITE
1195    libc-math-unittests
1196  SRCS
1197    frexp_test.cpp
1198  HDRS
1199    FrexpTest.h
1200  DEPENDS
1201    libc.src.math.frexp
1202    libc.src.__support.FPUtil.basic_operations
1203)
1204
1205add_fp_unittest(
1206  frexpf_test
1207  NEED_MPFR
1208  SUITE
1209    libc-math-unittests
1210  SRCS
1211    frexpf_test.cpp
1212  HDRS
1213    FrexpTest.h
1214  DEPENDS
1215    libc.src.math.frexpf
1216    libc.src.__support.FPUtil.basic_operations
1217)
1218
1219add_fp_unittest(
1220  frexpl_test
1221  NEED_MPFR
1222  SUITE
1223    libc-math-unittests
1224  SRCS
1225    frexpl_test.cpp
1226  HDRS
1227    FrexpTest.h
1228  DEPENDS
1229    libc.src.math.frexpl
1230    libc.src.__support.FPUtil.basic_operations
1231)
1232
1233add_fp_unittest(
1234  ilogb_test
1235  SUITE
1236    libc-math-unittests
1237  SRCS
1238    ilogb_test.cpp
1239  HDRS
1240    ILogbTest.h
1241  DEPENDS
1242    libc.src.math.ilogb
1243    libc.src.__support.CPP.limits
1244    libc.src.__support.FPUtil.fp_bits
1245    libc.src.__support.FPUtil.manipulation_functions
1246)
1247
1248add_fp_unittest(
1249  ilogbf_test
1250  SUITE
1251    libc-math-unittests
1252  SRCS
1253    ilogbf_test.cpp
1254  HDRS
1255    ILogbTest.h
1256  DEPENDS
1257    libc.src.math.ilogbf
1258    libc.src.__support.CPP.limits
1259    libc.src.__support.FPUtil.fp_bits
1260    libc.src.__support.FPUtil.manipulation_functions
1261)
1262
1263add_fp_unittest(
1264  ilogbl_test
1265  SUITE
1266    libc-math-unittests
1267  SRCS
1268    ilogbl_test.cpp
1269  HDRS
1270    ILogbTest.h
1271  DEPENDS
1272    libc.src.math.ilogbl
1273    libc.src.__support.CPP.limits
1274    libc.src.__support.FPUtil.fp_bits
1275    libc.src.__support.FPUtil.manipulation_functions
1276)
1277
1278add_fp_unittest(
1279  ldexp_test
1280  SUITE
1281    libc-math-unittests
1282  SRCS
1283    ldexp_test.cpp
1284  HDRS
1285    LdExpTest.h
1286  DEPENDS
1287    libc.src.math.ldexp
1288    libc.src.__support.CPP.limits
1289    libc.src.__support.FPUtil.fp_bits
1290    libc.src.__support.FPUtil.normal_float
1291)
1292
1293add_fp_unittest(
1294  ldexpf_test
1295  SUITE
1296    libc-math-unittests
1297  SRCS
1298    ldexpf_test.cpp
1299  HDRS
1300    LdExpTest.h
1301  DEPENDS
1302    libc.src.math.ldexpf
1303    libc.src.__support.CPP.limits
1304    libc.src.__support.FPUtil.fp_bits
1305    libc.src.__support.FPUtil.normal_float
1306)
1307
1308add_fp_unittest(
1309  ldexpl_test
1310  SUITE
1311    libc-math-unittests
1312  SRCS
1313    ldexpl_test.cpp
1314  HDRS
1315    LdExpTest.h
1316  DEPENDS
1317    libc.src.math.ldexpl
1318    libc.src.__support.CPP.limits
1319    libc.src.__support.FPUtil.fp_bits
1320    libc.src.__support.FPUtil.normal_float
1321)
1322
1323add_fp_unittest(
1324  logb_test
1325  SUITE
1326    libc-math-unittests
1327  SRCS
1328    logb_test.cpp
1329  DEPENDS
1330    libc.src.math.logb
1331    libc.src.__support.FPUtil.manipulation_functions
1332)
1333
1334add_fp_unittest(
1335  logbf_test
1336  SUITE
1337    libc-math-unittests
1338  SRCS
1339    logbf_test.cpp
1340  DEPENDS
1341    libc.src.math.logbf
1342    libc.src.__support.FPUtil.manipulation_functions
1343)
1344
1345add_fp_unittest(
1346  logbl_test
1347  SUITE
1348    libc-math-unittests
1349  SRCS
1350    logbl_test.cpp
1351  HDRS
1352    LogbTest.h
1353  DEPENDS
1354    libc.src.math.logbl
1355    libc.src.__support.FPUtil.manipulation_functions
1356)
1357
1358add_fp_unittest(
1359  modf_test
1360  SUITE
1361    libc-math-unittests
1362  SRCS
1363    modf_test.cpp
1364  HDRS
1365    ModfTest.h
1366  DEPENDS
1367    libc.src.math.modf
1368    libc.src.__support.FPUtil.basic_operations
1369    libc.src.__support.FPUtil.nearest_integer_operations
1370  # Requires C++ limits.
1371  UNIT_TEST_ONLY
1372)
1373
1374add_fp_unittest(
1375  modff_test
1376  SUITE
1377    libc-math-unittests
1378  SRCS
1379    modff_test.cpp
1380  HDRS
1381    ModfTest.h
1382  DEPENDS
1383    libc.src.math.modff
1384    libc.src.__support.FPUtil.basic_operations
1385    libc.src.__support.FPUtil.nearest_integer_operations
1386  # Requires C++ limits.
1387  UNIT_TEST_ONLY
1388)
1389
1390add_fp_unittest(
1391  modfl_test
1392  SUITE
1393    libc-math-unittests
1394  SRCS
1395    modfl_test.cpp
1396  HDRS
1397    ModfTest.h
1398  DEPENDS
1399    libc.src.math.modfl
1400    libc.src.__support.FPUtil.basic_operations
1401    libc.src.__support.FPUtil.nearest_integer_operations
1402)
1403
1404add_fp_unittest(
1405  fdimf_test
1406  SUITE
1407    libc-math-unittests
1408  SRCS
1409    fdimf_test.cpp
1410  HDRS
1411    FDimTest.h
1412  DEPENDS
1413    libc.src.math.fdimf
1414    libc.src.__support.FPUtil.basic_operations
1415    libc.src.__support.FPUtil.fp_bits
1416)
1417
1418add_fp_unittest(
1419  fdim_test
1420  SUITE
1421    libc-math-unittests
1422  SRCS
1423    fdim_test.cpp
1424  HDRS
1425    FDimTest.h
1426  DEPENDS
1427    libc.src.math.fdim
1428    libc.src.__support.FPUtil.basic_operations
1429    libc.src.__support.FPUtil.fp_bits
1430)
1431
1432add_fp_unittest(
1433  fdiml_test
1434  SUITE
1435    libc-math-unittests
1436  SRCS
1437    fdiml_test.cpp
1438  HDRS
1439    FDimTest.h
1440  DEPENDS
1441    libc.src.math.fdiml
1442    libc.src.__support.FPUtil.basic_operations
1443    libc.src.__support.FPUtil.fp_bits
1444)
1445
1446add_fp_unittest(
1447  fminf_test
1448  SUITE
1449    libc-math-unittests
1450  SRCS
1451    fminf_test.cpp
1452  HDRS
1453    FMinTest.h
1454  DEPENDS
1455    libc.src.math.fminf
1456    libc.src.__support.FPUtil.fp_bits
1457)
1458
1459add_fp_unittest(
1460  fmin_test
1461  SUITE
1462    libc-math-unittests
1463  SRCS
1464    fmin_test.cpp
1465  HDRS
1466    FMinTest.h
1467  DEPENDS
1468    libc.src.math.fmin
1469    libc.src.__support.FPUtil.fp_bits
1470)
1471
1472add_fp_unittest(
1473  fminl_test
1474  SUITE
1475    libc-math-unittests
1476  SRCS
1477    fminl_test.cpp
1478  HDRS
1479    FMinTest.h
1480  DEPENDS
1481    libc.src.math.fminl
1482    libc.src.__support.FPUtil.fp_bits
1483)
1484
1485add_fp_unittest(
1486  fmaxf_test
1487  SUITE
1488    libc-math-unittests
1489  SRCS
1490    fmaxf_test.cpp
1491  HDRS
1492    FMaxTest.h
1493  DEPENDS
1494    libc.src.math.fmaxf
1495    libc.src.__support.FPUtil.fp_bits
1496)
1497
1498add_fp_unittest(
1499  fmax_test
1500  SUITE
1501    libc-math-unittests
1502  SRCS
1503    fmax_test.cpp
1504  HDRS
1505    FMaxTest.h
1506  DEPENDS
1507    libc.src.math.fmax
1508    libc.src.__support.FPUtil.fp_bits
1509)
1510
1511add_fp_unittest(
1512  fmaxl_test
1513  SUITE
1514    libc-math-unittests
1515  SRCS
1516    fmaxl_test.cpp
1517  HDRS
1518    FMaxTest.h
1519  DEPENDS
1520    libc.src.math.fmaxl
1521    libc.src.__support.FPUtil.fp_bits
1522)
1523
1524add_fp_unittest(
1525  sqrtf_test
1526  NEED_MPFR
1527  SUITE
1528    libc-math-unittests
1529  SRCS
1530    sqrtf_test.cpp
1531  HDRS
1532    SqrtTest.h
1533  DEPENDS
1534    libc.src.math.sqrtf
1535)
1536
1537add_fp_unittest(
1538  sqrt_test
1539  NEED_MPFR
1540  SUITE
1541    libc-math-unittests
1542  SRCS
1543    sqrt_test.cpp
1544  HDRS
1545    SqrtTest.h
1546  DEPENDS
1547    libc.src.math.sqrt
1548)
1549
1550add_fp_unittest(
1551  sqrtl_test
1552  NEED_MPFR
1553  SUITE
1554    libc-math-unittests
1555  SRCS
1556    sqrtl_test.cpp
1557  HDRS
1558    SqrtTest.h
1559  DEPENDS
1560    libc.src.math.sqrtl
1561)
1562
1563add_fp_unittest(
1564  sqrtf16_test
1565  NEED_MPFR
1566  SUITE
1567    libc-math-unittests
1568  SRCS
1569    sqrtf16_test.cpp
1570  DEPENDS
1571    libc.src.math.sqrtf16
1572)
1573
1574add_fp_unittest(
1575  sqrtf128_test
1576  NEED_MPFR
1577  SUITE
1578    libc-math-unittests
1579  SRCS
1580    sqrtf128_test.cpp
1581  HDRS
1582    SqrtTest.h
1583  DEPENDS
1584    libc.src.math.sqrtf128
1585)
1586
1587add_fp_unittest(
1588  generic_sqrtf_test
1589  NEED_MPFR
1590  SUITE
1591    libc-math-unittests
1592  SRCS
1593    generic_sqrtf_test.cpp
1594  HDRS
1595    SqrtTest.h
1596  DEPENDS
1597    libc.src.math.sqrtf
1598    libc.src.__support.FPUtil.generic.sqrt
1599  COMPILE_OPTIONS
1600    -O3
1601)
1602
1603add_fp_unittest(
1604  generic_sqrt_test
1605  NEED_MPFR
1606  SUITE
1607    libc-math-unittests
1608  SRCS
1609    generic_sqrt_test.cpp
1610  HDRS
1611    SqrtTest.h
1612  DEPENDS
1613    libc.src.math.sqrt
1614    libc.src.__support.FPUtil.generic.sqrt
1615  COMPILE_OPTIONS
1616    -O3
1617)
1618
1619add_fp_unittest(
1620  generic_sqrtl_test
1621  NEED_MPFR
1622  SUITE
1623    libc-math-unittests
1624  SRCS
1625    generic_sqrtl_test.cpp
1626  HDRS
1627    SqrtTest.h
1628  DEPENDS
1629    libc.src.math.sqrtl
1630    libc.src.__support.FPUtil.generic.sqrt
1631  COMPILE_OPTIONS
1632    -O3
1633)
1634
1635add_fp_unittest(
1636  remquof_test
1637  NEED_MPFR
1638  SUITE
1639    libc-math-unittests
1640  SRCS
1641    remquof_test.cpp
1642  HDRS
1643    RemQuoTest.h
1644  DEPENDS
1645    libc.src.math.remquof
1646    libc.src.__support.FPUtil.basic_operations
1647    libc.src.__support.FPUtil.fp_bits
1648)
1649
1650add_fp_unittest(
1651  remquo_test
1652  NEED_MPFR
1653  SUITE
1654    libc-math-unittests
1655  SRCS
1656    remquo_test.cpp
1657  HDRS
1658    RemQuoTest.h
1659  DEPENDS
1660    libc.src.math.remquo
1661    libc.src.__support.FPUtil.basic_operations
1662    libc.src.__support.FPUtil.fp_bits
1663)
1664
1665add_fp_unittest(
1666  remquol_test
1667  NEED_MPFR
1668  SUITE
1669    libc-math-unittests
1670  SRCS
1671    remquol_test.cpp
1672  HDRS
1673    RemQuoTest.h
1674  DEPENDS
1675    libc.src.math.remquol
1676    libc.src.__support.FPUtil.basic_operations
1677    libc.src.__support.FPUtil.fp_bits
1678)
1679
1680add_fp_unittest(
1681  hypotf_test
1682  NEED_MPFR
1683  SUITE
1684    libc-math-unittests
1685  SRCS
1686    hypotf_test.cpp
1687  DEPENDS
1688    libc.src.math.hypotf
1689    libc.src.__support.FPUtil.fp_bits
1690)
1691
1692add_fp_unittest(
1693  hypot_test
1694  NEED_MPFR
1695  SUITE
1696    libc-math-unittests
1697  SRCS
1698    hypot_test.cpp
1699  DEPENDS
1700    libc.src.math.hypot
1701    libc.src.__support.FPUtil.fp_bits
1702)
1703
1704add_fp_unittest(
1705  nextafter_test
1706  SUITE
1707    libc-math-unittests
1708  SRCS
1709    nextafter_test.cpp
1710  HDRS
1711    NextAfterTest.h
1712  DEPENDS
1713    libc.src.math.nextafter
1714    libc.src.__support.FPUtil.basic_operations
1715    libc.src.__support.FPUtil.fp_bits
1716)
1717
1718add_fp_unittest(
1719  nextafterf_test
1720  SUITE
1721    libc-math-unittests
1722  SRCS
1723    nextafterf_test.cpp
1724  HDRS
1725    NextAfterTest.h
1726  DEPENDS
1727    libc.src.math.nextafterf
1728    libc.src.__support.FPUtil.basic_operations
1729    libc.src.__support.FPUtil.fp_bits
1730)
1731
1732add_fp_unittest(
1733  nextafterl_test
1734  SUITE
1735    libc-math-unittests
1736  SRCS
1737    nextafterl_test.cpp
1738  HDRS
1739    NextAfterTest.h
1740  DEPENDS
1741    libc.src.math.nextafterl
1742    libc.src.__support.FPUtil.basic_operations
1743    libc.src.__support.FPUtil.fp_bits
1744)
1745
1746add_fp_unittest(
1747  nextafterf128_test
1748  SUITE
1749    libc-math-unittests
1750  SRCS
1751    nextafterf128_test.cpp
1752  HDRS
1753    NextAfterTest.h
1754  DEPENDS
1755    libc.src.math.nextafterf128
1756    libc.src.__support.FPUtil.basic_operations
1757    libc.src.__support.FPUtil.fp_bits
1758)
1759
1760# TODO(lntue): The current implementation of fputil::general::fma<float> is only
1761# correctly rounded for the default rounding mode round-to-nearest tie-to-even.
1762add_fp_unittest(
1763  fmaf_test
1764  NEED_MPFR
1765  SUITE
1766    libc-math-unittests
1767  SRCS
1768    fmaf_test.cpp
1769  HDRS
1770    FmaTest.h
1771  DEPENDS
1772    libc.src.math.fmaf
1773    libc.src.stdlib.rand
1774    libc.src.stdlib.srand
1775  FLAGS
1776    FMA_OPT__ONLY
1777)
1778
1779add_fp_unittest(
1780  fma_test
1781  NEED_MPFR
1782  SUITE
1783    libc-math-unittests
1784  SRCS
1785    fma_test.cpp
1786  HDRS
1787    FmaTest.h
1788  DEPENDS
1789    libc.src.math.fma
1790    libc.src.stdlib.rand
1791    libc.src.stdlib.srand
1792)
1793
1794add_fp_unittest(
1795  tan_test
1796  NEED_MPFR
1797  SUITE
1798    libc-math-unittests
1799  SRCS
1800    tan_test.cpp
1801  DEPENDS
1802    libc.src.math.tan
1803    libc.src.__support.FPUtil.fp_bits
1804)
1805
1806add_fp_unittest(
1807  expm1_test
1808  NEED_MPFR
1809  SUITE
1810    libc-math-unittests
1811  SRCS
1812    expm1_test.cpp
1813  DEPENDS
1814    libc.src.errno.errno
1815    libc.src.math.expm1
1816    libc.src.__support.FPUtil.fp_bits
1817)
1818
1819add_fp_unittest(
1820  expm1f_test
1821  NEED_MPFR
1822  SUITE
1823    libc-math-unittests
1824  SRCS
1825    expm1f_test.cpp
1826  DEPENDS
1827    libc.src.errno.errno
1828    libc.src.math.expm1f
1829    libc.src.__support.FPUtil.fp_bits
1830)
1831
1832add_fp_unittest(
1833  expm1f16_test
1834  NEED_MPFR
1835  SUITE
1836    libc-math-unittests
1837  SRCS
1838    expm1f16_test.cpp
1839  DEPENDS
1840    libc.src.math.expm1f16
1841)
1842
1843add_fp_unittest(
1844 log_test
1845 NEED_MPFR
1846 SUITE
1847   libc-math-unittests
1848 SRCS
1849   log_test.cpp
1850 DEPENDS
1851   libc.src.errno.errno
1852   libc.src.math.log
1853   libc.src.__support.FPUtil.fp_bits
1854)
1855
1856add_fp_unittest(
1857  logf_test
1858  NEED_MPFR
1859  SUITE
1860    libc-math-unittests
1861  SRCS
1862    logf_test.cpp
1863  DEPENDS
1864    libc.src.errno.errno
1865    libc.src.math.logf
1866    libc.src.__support.FPUtil.fp_bits
1867)
1868
1869add_fp_unittest(
1870  logf16_test
1871  NEED_MPFR
1872  SUITE
1873    libc-math-unittests
1874  SRCS
1875    logf16_test.cpp
1876  DEPENDS
1877    libc.src.math.logf16
1878)
1879
1880add_fp_unittest(
1881log2_test
1882 NEED_MPFR
1883 SUITE
1884   libc-math-unittests
1885 SRCS
1886   log2_test.cpp
1887 DEPENDS
1888   libc.src.errno.errno
1889   libc.src.math.log2
1890   libc.src.__support.FPUtil.fp_bits
1891)
1892
1893add_fp_unittest(
1894  log2f_test
1895  NEED_MPFR
1896  SUITE
1897    libc-math-unittests
1898  SRCS
1899    log2f_test.cpp
1900  DEPENDS
1901    libc.src.errno.errno
1902    libc.src.math.log2f
1903    libc.src.__support.FPUtil.fp_bits
1904)
1905
1906add_fp_unittest(
1907  log2f16_test
1908  NEED_MPFR
1909  SUITE
1910    libc-math-unittests
1911  SRCS
1912    log2f16_test.cpp
1913  DEPENDS
1914    libc.src.math.log2f16
1915)
1916
1917add_fp_unittest(
1918 log10_test
1919 NEED_MPFR
1920 SUITE
1921   libc-math-unittests
1922 SRCS
1923   log10_test.cpp
1924 DEPENDS
1925   libc.src.errno.errno
1926   libc.src.math.log10
1927   libc.src.__support.FPUtil.fp_bits
1928)
1929
1930add_fp_unittest(
1931  log10f_test
1932  NEED_MPFR
1933  SUITE
1934    libc-math-unittests
1935  SRCS
1936    log10f_test.cpp
1937  DEPENDS
1938    libc.src.errno.errno
1939    libc.src.math.log10f
1940    libc.src.__support.FPUtil.fp_bits
1941)
1942
1943add_fp_unittest(
1944  log10f16_test
1945  NEED_MPFR
1946  SUITE
1947    libc-math-unittests
1948  SRCS
1949    log10f16_test.cpp
1950  DEPENDS
1951    libc.src.math.log10f16
1952)
1953
1954add_fp_unittest(
1955log1p_test
1956 NEED_MPFR
1957 SUITE
1958   libc-math-unittests
1959 SRCS
1960   log1p_test.cpp
1961 DEPENDS
1962   libc.src.errno.errno
1963   libc.src.math.log1p
1964   libc.src.__support.FPUtil.fp_bits
1965)
1966
1967add_fp_unittest(
1968  log1pf_test
1969  NEED_MPFR
1970  SUITE
1971    libc-math-unittests
1972  SRCS
1973    log1pf_test.cpp
1974  DEPENDS
1975    libc.src.errno.errno
1976    libc.src.math.log1pf
1977    libc.src.__support.FPUtil.fp_bits
1978)
1979
1980add_fp_unittest(
1981  fmodf_test
1982  SUITE
1983    libc-math-unittests
1984  SRCS
1985    fmodf_test.cpp
1986  HDRS
1987    FModTest.h
1988  DEPENDS
1989    libc.src.errno.errno
1990    libc.src.math.fmodf
1991    libc.src.__support.FPUtil.basic_operations
1992    libc.src.__support.FPUtil.nearest_integer_operations
1993  # FIXME: Currently fails on the GPU build.
1994  UNIT_TEST_ONLY
1995)
1996
1997add_fp_unittest(
1998  fmod_test
1999  SUITE
2000    libc-math-unittests
2001  SRCS
2002    fmod_test.cpp
2003  HDRS
2004    FModTest.h
2005  DEPENDS
2006    libc.src.errno.errno
2007    libc.src.math.fmod
2008    libc.src.__support.FPUtil.basic_operations
2009    libc.src.__support.FPUtil.nearest_integer_operations
2010  # FIXME: Currently fails on the GPU build.
2011  UNIT_TEST_ONLY
2012)
2013
2014add_fp_unittest(
2015  explogxf_test
2016  NEED_MPFR
2017  SUITE
2018    libc-math-unittests
2019  HDRS
2020    in_float_range_test_helper.h
2021  SRCS
2022    explogxf_test.cpp
2023  DEPENDS
2024    libc.src.math.generic.explogxf
2025    libc.src.math.fabs
2026    libc.src.math.fabsf
2027    libc.src.__support.FPUtil.fp_bits
2028)
2029
2030add_fp_unittest(
2031  coshf_test
2032  NEED_MPFR
2033  SUITE
2034    libc-math-unittests
2035  SRCS
2036    coshf_test.cpp
2037  HDRS
2038    sdcomp26094.h
2039  DEPENDS
2040    libc.src.errno.errno
2041    libc.src.math.coshf
2042    libc.src.__support.CPP.array
2043    libc.src.__support.FPUtil.fp_bits
2044)
2045
2046add_fp_unittest(
2047  coshf16_test
2048  NEED_MPFR
2049  SUITE
2050    libc-math-unittests
2051  SRCS
2052    coshf16_test.cpp
2053  DEPENDS
2054    libc.src.math.coshf16
2055)
2056
2057add_fp_unittest(
2058  sinhf_test
2059  NEED_MPFR
2060  SUITE
2061    libc-math-unittests
2062  SRCS
2063    sinhf_test.cpp
2064  HDRS
2065    sdcomp26094.h
2066  DEPENDS
2067    libc.src.errno.errno
2068    libc.src.math.sinhf
2069    libc.src.__support.CPP.array
2070    libc.src.__support.FPUtil.fp_bits
2071)
2072
2073add_fp_unittest(
2074  sinhf16_test
2075  NEED_MPFR
2076  SUITE
2077    libc-math-unittests
2078  SRCS
2079    sinhf16_test.cpp
2080  DEPENDS
2081    libc.src.math.sinhf16
2082)
2083
2084add_fp_unittest(
2085  tanhf_test
2086  NEED_MPFR
2087  SUITE
2088    libc-math-unittests
2089  SRCS
2090    tanhf_test.cpp
2091  DEPENDS
2092    libc.src.math.tanhf
2093    libc.src.__support.FPUtil.fp_bits
2094)
2095
2096add_fp_unittest(
2097  tanhf16_test
2098  NEED_MPFR
2099  SUITE
2100    libc-math-unittests
2101  SRCS
2102    tanhf16_test.cpp
2103  DEPENDS
2104    libc.src.math.tanhf16
2105)
2106
2107add_fp_unittest(
2108  atanhf_test
2109  NEED_MPFR
2110  SUITE
2111    libc-math-unittests
2112  SRCS
2113    atanhf_test.cpp
2114  DEPENDS
2115    libc.src.errno.errno
2116    libc.src.math.atanhf
2117    libc.src.__support.FPUtil.fp_bits
2118)
2119
2120add_fp_unittest(
2121  fmul_test
2122  NEED_MPFR
2123  SUITE
2124    libc-math-unittests
2125  SRCS
2126    fmul_test.cpp
2127  HDRS
2128    MulTest.h
2129  DEPENDS
2130    libc.src.math.fmul
2131    libc.src.stdlib.rand
2132    libc.src.stdlib.srand
2133)
2134
2135add_fp_unittest(
2136  fmull_test
2137  NEED_MPFR
2138  SUITE
2139    libc-math-unittests
2140  SRCS
2141    fmull_test.cpp
2142  HDRS
2143    MulTest.h
2144  DEPENDS
2145    libc.src.math.fmull
2146    libc.src.stdlib.rand
2147    libc.src.stdlib.srand
2148)
2149
2150add_fp_unittest(
2151  asinhf_test
2152  NEED_MPFR
2153  SUITE
2154    libc-math-unittests
2155  SRCS
2156    asinhf_test.cpp
2157  DEPENDS
2158    libc.src.errno.errno
2159    libc.src.math.asinhf
2160    libc.src.__support.FPUtil.fp_bits
2161)
2162
2163add_fp_unittest(
2164  acoshf_test
2165  NEED_MPFR
2166  SUITE
2167    libc-math-unittests
2168  SRCS
2169    acoshf_test.cpp
2170  DEPENDS
2171    libc.src.errno.errno
2172    libc.src.math.acoshf
2173    libc.src.__support.FPUtil.fp_bits
2174)
2175
2176add_fp_unittest(
2177  asinf_test
2178  NEED_MPFR
2179  SUITE
2180    libc-math-unittests
2181  SRCS
2182    asinf_test.cpp
2183  DEPENDS
2184    libc.src.errno.errno
2185    libc.src.math.asinf
2186    libc.src.__support.FPUtil.fp_bits
2187)
2188
2189add_fp_unittest(
2190  acosf_test
2191  NEED_MPFR
2192  SUITE
2193    libc-math-unittests
2194  SRCS
2195    acosf_test.cpp
2196  DEPENDS
2197    libc.src.errno.errno
2198    libc.src.math.acosf
2199    libc.src.__support.FPUtil.fp_bits
2200)
2201
2202add_fp_unittest(
2203  atanf_test
2204  NEED_MPFR
2205  SUITE
2206    libc-math-unittests
2207  SRCS
2208    atanf_test.cpp
2209  DEPENDS
2210    libc.src.errno.errno
2211    libc.src.math.atanf
2212    libc.src.__support.FPUtil.fp_bits
2213)
2214
2215add_fp_unittest(
2216  scalbn_test
2217  NEED_MPFR
2218  SUITE
2219    libc-math-unittests
2220  SRCS
2221    scalbn_test.cpp
2222  HDRS
2223    ScalbnTest.h
2224  DEPENDS
2225    libc.src.math.scalbn
2226    libc.src.__support.FPUtil.fp_bits
2227    libc.src.__support.FPUtil.normal_float
2228)
2229
2230add_fp_unittest(
2231  scalbnf_test
2232  NEED_MPFR
2233  SUITE
2234    libc-math-unittests
2235  SRCS
2236    scalbnf_test.cpp
2237  HDRS
2238    ScalbnTest.h
2239  DEPENDS
2240    libc.src.math.scalbnf
2241    libc.src.__support.FPUtil.fp_bits
2242    libc.src.__support.FPUtil.normal_float
2243)
2244
2245add_fp_unittest(
2246  scalbnl_test
2247  NEED_MPFR
2248  SUITE
2249    libc-math-unittests
2250  SRCS
2251    scalbnl_test.cpp
2252  HDRS
2253    ScalbnTest.h
2254  DEPENDS
2255    libc.src.math.scalbnl
2256    libc.src.__support.FPUtil.fp_bits
2257    libc.src.__support.FPUtil.normal_float
2258)
2259
2260add_fp_unittest(
2261  scalbnf128_test
2262  NEED_MPFR
2263  SUITE
2264    libc-math-unittests
2265  SRCS
2266    scalbnf128_test.cpp
2267  HDRS
2268    ScalbnTest.h
2269  DEPENDS
2270    libc.src.math.scalbnf128
2271    libc.src.__support.FPUtil.fp_bits
2272    libc.src.__support.FPUtil.normal_float
2273)
2274
2275add_fp_unittest(
2276  erff_test
2277  NEED_MPFR
2278  SUITE
2279    libc-math-unittests
2280  SRCS
2281    erff_test.cpp
2282  DEPENDS
2283    libc.src.math.erff
2284    libc.src.__support.FPUtil.fp_bits
2285)
2286
2287add_fp_unittest(
2288  pow_test
2289  NEED_MPFR
2290  SUITE
2291    libc-math-unittests
2292  SRCS
2293    pow_test.cpp
2294  DEPENDS
2295    libc.src.math.pow
2296)
2297
2298add_fp_unittest(
2299  powf_test
2300  NEED_MPFR
2301  SUITE
2302    libc-math-unittests
2303  SRCS
2304    powf_test.cpp
2305  DEPENDS
2306    libc.src.math.powf
2307    libc.src.__support.FPUtil.fp_bits
2308)
2309
2310add_fp_unittest(
2311  atan2f_test
2312  NEED_MPFR
2313  SUITE
2314    libc-math-unittests
2315  SRCS
2316    atan2f_test.cpp
2317  DEPENDS
2318    libc.src.math.atan2f
2319    libc.src.__support.FPUtil.fp_bits
2320)
2321
2322add_fp_unittest(
2323  atan2_test
2324  NEED_MPFR
2325  SUITE
2326    libc-math-unittests
2327  SRCS
2328    atan2_test.cpp
2329  DEPENDS
2330    libc.src.math.atan2
2331    libc.src.__support.FPUtil.fp_bits
2332)
2333
2334add_fp_unittest(
2335  f16add_test
2336  NEED_MPFR
2337  SUITE
2338    libc-math-unittests
2339  SRCS
2340    f16add_test.cpp
2341  HDRS
2342    AddTest.h
2343  DEPENDS
2344    libc.src.math.f16add
2345)
2346
2347add_fp_unittest(
2348  f16addf_test
2349  NEED_MPFR
2350  SUITE
2351    libc-math-unittests
2352  SRCS
2353    f16addf_test.cpp
2354  HDRS
2355    AddTest.h
2356  DEPENDS
2357    libc.src.math.f16addf
2358)
2359
2360add_fp_unittest(
2361  f16addl_test
2362  NEED_MPFR
2363  SUITE
2364    libc-math-unittests
2365  SRCS
2366    f16addl_test.cpp
2367  HDRS
2368    AddTest.h
2369  DEPENDS
2370    libc.src.math.f16addl
2371)
2372
2373add_fp_unittest(
2374  f16sub_test
2375  NEED_MPFR
2376  SUITE
2377    libc-math-unittests
2378  SRCS
2379    f16sub_test.cpp
2380  HDRS
2381    SubTest.h
2382  DEPENDS
2383    libc.src.math.f16sub
2384)
2385
2386add_fp_unittest(
2387  f16subf_test
2388  NEED_MPFR
2389  SUITE
2390    libc-math-unittests
2391  SRCS
2392    f16subf_test.cpp
2393  HDRS
2394    SubTest.h
2395  DEPENDS
2396    libc.src.math.f16subf
2397)
2398
2399add_fp_unittest(
2400  f16subl_test
2401  NEED_MPFR
2402  SUITE
2403    libc-math-unittests
2404  SRCS
2405    f16subl_test.cpp
2406  HDRS
2407    SubTest.h
2408  DEPENDS
2409    libc.src.math.f16subl
2410)
2411
2412add_fp_unittest(
2413  f16div_test
2414  NEED_MPFR
2415  SUITE
2416    libc-math-unittests
2417  SRCS
2418    f16div_test.cpp
2419  HDRS
2420    DivTest.h
2421  DEPENDS
2422    libc.src.math.f16div
2423)
2424
2425add_fp_unittest(
2426  f16divf_test
2427  NEED_MPFR
2428  SUITE
2429    libc-math-unittests
2430  SRCS
2431    f16divf_test.cpp
2432  HDRS
2433    DivTest.h
2434  DEPENDS
2435    libc.src.math.f16divf
2436)
2437
2438add_fp_unittest(
2439  f16divl_test
2440  NEED_MPFR
2441  SUITE
2442    libc-math-unittests
2443  SRCS
2444    f16divl_test.cpp
2445  HDRS
2446    DivTest.h
2447  DEPENDS
2448    libc.src.math.f16divl
2449)
2450
2451add_fp_unittest(
2452  f16fma_test
2453  NEED_MPFR
2454  SUITE
2455    libc-math-unittests
2456  SRCS
2457    f16fma_test.cpp
2458  HDRS
2459    FmaTest.h
2460  DEPENDS
2461    libc.src.math.f16fma
2462    libc.src.stdlib.rand
2463    libc.src.stdlib.srand
2464)
2465
2466add_fp_unittest(
2467  f16fmaf_test
2468  NEED_MPFR
2469  SUITE
2470    libc-math-unittests
2471  SRCS
2472    f16fmaf_test.cpp
2473  HDRS
2474    FmaTest.h
2475  DEPENDS
2476    libc.src.math.f16fmaf
2477    libc.src.stdlib.rand
2478    libc.src.stdlib.srand
2479)
2480
2481add_fp_unittest(
2482  f16fmal_test
2483  NEED_MPFR
2484  SUITE
2485    libc-math-unittests
2486  SRCS
2487    f16fmal_test.cpp
2488  HDRS
2489    FmaTest.h
2490  DEPENDS
2491    libc.src.math.f16fmal
2492    libc.src.stdlib.rand
2493    libc.src.stdlib.srand
2494)
2495
2496add_fp_unittest(
2497  f16sqrt_test
2498  NEED_MPFR
2499  SUITE
2500    libc-math-unittests
2501  SRCS
2502    f16sqrt_test.cpp
2503  HDRS
2504    SqrtTest.h
2505  DEPENDS
2506    libc.src.math.f16sqrt
2507)
2508
2509add_fp_unittest(
2510  f16sqrtf_test
2511  NEED_MPFR
2512  SUITE
2513    libc-math-unittests
2514  SRCS
2515    f16sqrtf_test.cpp
2516  HDRS
2517    SqrtTest.h
2518  DEPENDS
2519    libc.src.math.f16sqrtf
2520)
2521
2522add_fp_unittest(
2523  f16sqrtl_test
2524  NEED_MPFR
2525  SUITE
2526    libc-math-unittests
2527  SRCS
2528    f16sqrtl_test.cpp
2529  HDRS
2530    SqrtTest.h
2531  DEPENDS
2532    libc.src.math.f16sqrtl
2533)
2534
2535add_fp_unittest(
2536  fsqrt_test
2537  NEED_MPFR
2538  SUITE
2539    libc-math-unittests
2540  SRCS
2541    fsqrt_test.cpp
2542  HDRS
2543    SqrtTest.h
2544  DEPENDS
2545    libc.src.math.fsqrt
2546)
2547
2548add_fp_unittest(
2549  fsqrtl_test
2550  NEED_MPFR
2551  SUITE
2552    libc-math-unittests
2553  SRCS
2554    fsqrtl_test.cpp
2555  HDRS
2556    SqrtTest.h
2557  DEPENDS
2558    libc.src.math.fsqrtl
2559)
2560
2561add_fp_unittest(
2562  fsub_test
2563  NEED_MPFR
2564  SUITE
2565    libc-math-unittests
2566  SRCS
2567    fsub_test.cpp
2568  HDRS
2569    SubTest.h
2570  DEPENDS
2571    libc.src.math.fsub
2572)
2573
2574add_fp_unittest(
2575  fsubl_test
2576  NEED_MPFR
2577  SUITE
2578    libc-math-unittests
2579  SRCS
2580    fsubl_test.cpp
2581  HDRS
2582    SubTest.h
2583  DEPENDS
2584    libc.src.math.fsubl
2585)
2586
2587add_fp_unittest(
2588  dsqrtl_test
2589  NEED_MPFR
2590  SUITE
2591    libc-math-unittests
2592  SRCS
2593    dsqrtl_test.cpp
2594  HDRS
2595    SqrtTest.h
2596  DEPENDS
2597    libc.src.math.dsqrtl
2598)
2599
2600add_fp_unittest(
2601  cbrtf_test
2602  NEED_MPFR
2603  SUITE
2604    libc-math-unittests
2605  SRCS
2606    cbrtf_test.cpp
2607  DEPENDS
2608    libc.src.math.cbrtf
2609    libc.src.__support.FPUtil.fp_bits
2610)
2611
2612add_fp_unittest(
2613  cbrt_test
2614  NEED_MPFR
2615  SUITE
2616    libc-math-unittests
2617  SRCS
2618    cbrt_test.cpp
2619  DEPENDS
2620    libc.src.math.cbrt
2621    libc.src.__support.FPUtil.fp_bits
2622)
2623
2624add_fp_unittest(
2625  dmull_test
2626  NEED_MPFR
2627  SUITE
2628    libc-math-unittests
2629  SRCS
2630    dmull_test.cpp
2631  HDRS
2632    MulTest.h
2633  DEPENDS
2634    libc.src.math.dmull
2635    libc.src.stdlib.rand
2636    libc.src.stdlib.srand
2637)
2638
2639add_fp_unittest(
2640  f16mul_test
2641  NEED_MPFR
2642  SUITE
2643    libc-math-unittests
2644  SRCS
2645    f16mul_test.cpp
2646  HDRS
2647    MulTest.h
2648  DEPENDS
2649    libc.src.math.f16mul
2650    libc.src.stdlib.rand
2651    libc.src.stdlib.srand
2652)
2653
2654add_fp_unittest(
2655  f16mulf_test
2656  NEED_MPFR
2657  SUITE
2658    libc-math-unittests
2659  SRCS
2660    f16mulf_test.cpp
2661  HDRS
2662    MulTest.h
2663  DEPENDS
2664    libc.src.math.f16mulf
2665    libc.src.stdlib.rand
2666    libc.src.stdlib.srand
2667)
2668
2669add_fp_unittest(
2670  f16mull_test
2671  NEED_MPFR
2672  SUITE
2673    libc-math-unittests
2674  SRCS
2675    f16mull_test.cpp
2676  HDRS
2677    MulTest.h
2678  DEPENDS
2679    libc.src.math.f16mull
2680    libc.src.stdlib.rand
2681    libc.src.stdlib.srand
2682)
2683
2684add_fp_unittest(
2685  ddivl_test
2686  NEED_MPFR
2687  SUITE
2688    libc-math-unittests
2689  SRCS
2690    ddivl_test.cpp
2691  HDRS
2692    DivTest.h
2693  DEPENDS
2694    libc.src.math.ddivl
2695)
2696
2697add_fp_unittest(
2698  dfmal_test
2699  NEED_MPFR
2700  SUITE
2701    libc-math-unittests
2702  SRCS
2703    dfmal_test.cpp
2704  HDRS
2705    FmaTest.h
2706  DEPENDS
2707    libc.src.math.dfmal
2708    libc.src.stdlib.rand
2709    libc.src.stdlib.srand
2710)
2711
2712add_fp_unittest(
2713  dsubl_test
2714  NEED_MPFR
2715  SUITE
2716    libc-math-unittests
2717  SRCS
2718    dsubl_test.cpp
2719  HDRS
2720    SubTest.h
2721  DEPENDS
2722    libc.src.math.dsubl
2723)
2724
2725add_fp_unittest(
2726  fdiv_test
2727  NEED_MPFR
2728  SUITE
2729    libc-math-unittests
2730  SRCS
2731    fdiv_test.cpp
2732  HDRS
2733    DivTest.h
2734  DEPENDS
2735    libc.src.math.fdiv
2736)
2737
2738add_fp_unittest(
2739  fdivl_test
2740  NEED_MPFR
2741  SUITE
2742    libc-math-unittests
2743  SRCS
2744    fdivl_test.cpp
2745  HDRS
2746    DivTest.h
2747  DEPENDS
2748    libc.src.math.fdivl
2749)
2750
2751add_fp_unittest(
2752  ffma_test
2753  NEED_MPFR
2754  SUITE
2755    libc-math-unittests
2756  SRCS
2757    ffma_test.cpp
2758  HDRS
2759    FmaTest.h
2760  DEPENDS
2761    libc.src.math.ffma
2762    libc.src.stdlib.rand
2763    libc.src.stdlib.srand
2764)
2765
2766add_fp_unittest(
2767  ffmal_test
2768  NEED_MPFR
2769  SUITE
2770    libc-math-unittests
2771  SRCS
2772    ffmal_test.cpp
2773  HDRS
2774    FmaTest.h
2775  DEPENDS
2776    libc.src.math.ffmal
2777    libc.src.stdlib.rand
2778    libc.src.stdlib.srand
2779)
2780
2781
2782add_subdirectory(generic)
2783add_subdirectory(smoke)
2784
2785if(NOT LLVM_LIBC_FULL_BUILD)
2786  add_subdirectory(exhaustive)
2787  add_subdirectory(performance_testing)
2788endif()
2789