[Workflow] Roll back some settings since they caused more issues
[llvm-project.git] / libc / src / math / gpu / vendor / CMakeLists.txt
blob2ee74a06a02d461f8164f1f42ec80fee82b1a9c2
1 find_package(AMDDeviceLibs QUIET HINTS ${CMAKE_INSTALL_PREFIX} PATHS /opt/rocm)
2 if(AMDDeviceLibs_FOUND)
3   message(STATUS "Found the ROCm device library. Implementations falling back "
4                  "to the vendor libraries will be resolved statically.")
5   get_target_property(ocml_path ocml IMPORTED_LOCATION)
6   list(APPEND bitcode_link_flags
7        "SHELL:-Xclang -mlink-builtin-bitcode -Xclang ${ocml_path}")
8 else()
9   message(STATUS "Could not find the ROCm device library. Unimplemented "
10                  "functions will be an external reference to the vendor libraries.")
11 endif()
13 find_package(CUDAToolkit QUIET)
14 if(CUDAToolkit_FOUND)
15   set(libdevice_path ${CUDAToolkit_BIN_DIR}/../nvvm/libdevice/libdevice.10.bc)
16   if (EXISTS ${libdevice_path})
17     message(STATUS "Found the CUDA device library. Implementations falling back "
18                    "to the vendor libraries will be resolved statically.")
19     list(APPEND bitcode_link_flags
20          "SHELL:-Xclang -mlink-builtin-bitcode -Xclang ${libdevice_path}")
21   endif()
22 else()
23   message(STATUS "Could not find the ROCm device library. Unimplemented "
24                  "functions will be an external reference to the vendor libraries.")
25 endif()
27 # FIXME: We need a way to pass the library to only the NVTPX / AMDGPU build.
28 # This shouldn't cause issues because we only link in needed symbols, but it
29 # will link in identity metadata from both libraries. This silences the warning.
30 list(APPEND bitcode_link_flags "-Wno-linker-warnings")
32 add_entrypoint_object(
33   acosf
34   SRCS
35     acosf.cpp
36   HDRS
37     ../../acosf.h
38   COMPILE_OPTIONS
39     ${bitcode_link_flags}
40     -O2
43 add_entrypoint_object(
44   acoshf
45   SRCS
46     acoshf.cpp
47   HDRS
48     ../../acoshf.h
49   COMPILE_OPTIONS
50     ${bitcode_link_flags}
51     -O2
54 add_entrypoint_object(
55   asinf
56   SRCS
57     asinf.cpp
58   HDRS
59     ../../asinf.h
60   COMPILE_OPTIONS
61     ${bitcode_link_flags}
62     -O2
65 add_entrypoint_object(
66   asinhf
67   SRCS
68     asinhf.cpp
69   HDRS
70     ../../asinhf.h
71   COMPILE_OPTIONS
72     ${bitcode_link_flags}
73     -O2
76 add_entrypoint_object(
77   atanf
78   SRCS
79     atanf.cpp
80   HDRS
81     ../../atanf.h
82   COMPILE_OPTIONS
83     ${bitcode_link_flags}
84     -O2
87 add_entrypoint_object(
88   atanhf
89   SRCS
90     atanhf.cpp
91   HDRS
92     ../../atanhf.h
93   COMPILE_OPTIONS
94     ${bitcode_link_flags}
95     -O2
98 add_entrypoint_object(
99   cos
100   SRCS
101     cos.cpp
102   HDRS
103     ../../cos.h
104   COMPILE_OPTIONS
105     ${bitcode_link_flags}
106     -O2
109 add_entrypoint_object(
110   cosf
111   SRCS
112     cosf.cpp
113   HDRS
114     ../../cosf.h
115   COMPILE_OPTIONS
116     ${bitcode_link_flags}
117     -O2
120 add_entrypoint_object(
121   cosh
122   SRCS
123     cosh.cpp
124   HDRS
125     ../../cosh.h
126   COMPILE_OPTIONS
127     ${bitcode_link_flags}
128     -O2
131 add_entrypoint_object(
132   coshf
133   SRCS
134     coshf.cpp
135   HDRS
136     ../../coshf.h
137   COMPILE_OPTIONS
138     ${bitcode_link_flags}
139     -O2
142 add_entrypoint_object(
143   exp10f
144   SRCS
145     exp10f.cpp
146   HDRS
147     ../../exp10f.h
148   COMPILE_OPTIONS
149     ${bitcode_link_flags}
150     -O2
153 add_entrypoint_object(
154   exp2f
155   SRCS
156     exp2f.cpp
157   HDRS
158     ../../exp2f.h
159   COMPILE_OPTIONS
160     ${bitcode_link_flags}
161     -O2
164 add_entrypoint_object(
165   expf
166   SRCS
167     expf.cpp
168   HDRS
169     ../../expf.h
170   COMPILE_OPTIONS
171     ${bitcode_link_flags}
172     -O2
175 add_entrypoint_object(
176   expm1f
177   SRCS
178     expm1f.cpp
179   HDRS
180     ../../expm1f.h
181   COMPILE_OPTIONS
182     ${bitcode_link_flags}
183     -O2
186 add_entrypoint_object(
187   fdim
188   SRCS
189     fdim.cpp
190   HDRS
191     ../../fdim.h
192   COMPILE_OPTIONS
193     ${bitcode_link_flags}
194     -O2
197 add_entrypoint_object(
198   fdimf
199   SRCS
200     fdimf.cpp
201   HDRS
202     ../../fdimf.h
203   COMPILE_OPTIONS
204     ${bitcode_link_flags}
205     -O2
208 add_entrypoint_object(
209   hypot
210   SRCS
211     hypot.cpp
212   HDRS
213     ../../hypot.h
214   COMPILE_OPTIONS
215     ${bitcode_link_flags}
216     -O2
219 add_entrypoint_object(
220   hypotf
221   SRCS
222     hypotf.cpp
223   HDRS
224     ../../hypotf.h
225   COMPILE_OPTIONS
226     ${bitcode_link_flags}
227     -O2
230 add_entrypoint_object(
231   ilogb
232   SRCS
233     ilogb.cpp
234   HDRS
235     ../../ilogb.h
236   COMPILE_OPTIONS
237     ${bitcode_link_flags}
238     -O2
241 add_entrypoint_object(
242   ilogbf
243   SRCS
244     ilogbf.cpp
245   HDRS
246     ../../ilogbf.h
247   COMPILE_OPTIONS
248     ${bitcode_link_flags}
249     -O2
252 add_entrypoint_object(
253   ldexp
254   SRCS
255     ldexp.cpp
256   HDRS
257     ../../ldexp.h
258   COMPILE_OPTIONS
259     ${bitcode_link_flags}
260     -O2
263 add_entrypoint_object(
264   ldexpf
265   SRCS
266     ldexpf.cpp
267   HDRS
268     ../../ldexpf.h
269   COMPILE_OPTIONS
270     ${bitcode_link_flags}
271     -O2
274 add_entrypoint_object(
275   llrint
276   SRCS
277     llrint.cpp
278   HDRS
279     ../../llrint.h
280   COMPILE_OPTIONS
281     ${bitcode_link_flags}
282     -O2
285 add_entrypoint_object(
286   llrintf
287   SRCS
288     llrintf.cpp
289   HDRS
290     ../../llrintf.h
291   COMPILE_OPTIONS
292     ${bitcode_link_flags}
293     -O2
296 add_entrypoint_object(
297   remquo
298   SRCS
299     remquo.cpp
300   HDRS
301     ../../remquo.h
302   COMPILE_OPTIONS
303     ${bitcode_link_flags}
304     -O2
307 add_entrypoint_object(
308   remquof
309   SRCS
310     remquof.cpp
311   HDRS
312     ../../remquof.h
313   COMPILE_OPTIONS
314     ${bitcode_link_flags}
315     -O2
319 add_entrypoint_object(
320   llround
321   SRCS
322     llround.cpp
323   HDRS
324     ../../llround.h
325   COMPILE_OPTIONS
326     ${bitcode_link_flags}
327     -O2
330 add_entrypoint_object(
331   llroundf
332   SRCS
333     llroundf.cpp
334   HDRS
335     ../../llroundf.h
336   COMPILE_OPTIONS
337     ${bitcode_link_flags}
338     -O2
341 add_entrypoint_object(
342   scalbn
343   SRCS
344     scalbn.cpp
345   HDRS
346     ../../scalbn.h
347   COMPILE_OPTIONS
348     ${bitcode_link_flags}
349     -O2
352 add_entrypoint_object(
353   scalbnf
354   SRCS
355     scalbnf.cpp
356   HDRS
357     ../../scalbnf.h
358   COMPILE_OPTIONS
359     ${bitcode_link_flags}
360     -O2
364 add_entrypoint_object(
365   nextafter
366   SRCS
367     nextafter.cpp
368   HDRS
369     ../../nextafter.h
370   COMPILE_OPTIONS
371     ${bitcode_link_flags}
372     -O2
375 add_entrypoint_object(
376   nextafterf
377   SRCS
378     nextafterf.cpp
379   HDRS
380     ../../nextafterf.h
381   COMPILE_OPTIONS
382     ${bitcode_link_flags}
383     -O2
386 add_entrypoint_object(
387   pow
388   SRCS
389     pow.cpp
390   HDRS
391     ../../pow.h
392   COMPILE_OPTIONS
393     ${bitcode_link_flags}
394     -O2
397 add_entrypoint_object(
398   powf
399   SRCS
400     powf.cpp
401   HDRS
402     ../../powf.h
403   COMPILE_OPTIONS
404     ${bitcode_link_flags}
405     -O2
408 add_entrypoint_object(
409   sin
410   SRCS
411     sin.cpp
412   HDRS
413     ../../sin.h
414   COMPILE_OPTIONS
415     ${bitcode_link_flags}
416     -O2
419 add_entrypoint_object(
420   sinf
421   SRCS
422     sinf.cpp
423   HDRS
424     ../../sinf.h
425   COMPILE_OPTIONS
426     ${bitcode_link_flags}
427     -O2
430 add_entrypoint_object(
431   sincos
432   SRCS
433     sincos.cpp
434   HDRS
435     ../../sincos.h
436   COMPILE_OPTIONS
437     ${bitcode_link_flags}
438     -O2
441 add_entrypoint_object(
442   sincosf
443   SRCS
444     sincosf.cpp
445   HDRS
446     ../../sincosf.h
447   COMPILE_OPTIONS
448     ${bitcode_link_flags}
449     -O2
452 add_entrypoint_object(
453   sinh
454   SRCS
455     sinh.cpp
456   HDRS
457     ../../sinh.h
458   COMPILE_OPTIONS
459     ${bitcode_link_flags}
460     -O2
463 add_entrypoint_object(
464   sinhf
465   SRCS
466     sinhf.cpp
467   HDRS
468     ../../sinhf.h
469   COMPILE_OPTIONS
470     ${bitcode_link_flags}
471     -O2
474 add_entrypoint_object(
475   tan
476   SRCS
477     tan.cpp
478   HDRS
479     ../../tan.h
480   COMPILE_OPTIONS
481     ${bitcode_link_flags}
482     -O2
485 add_entrypoint_object(
486   tanf
487   SRCS
488     tanf.cpp
489   HDRS
490     ../../tanf.h
491   COMPILE_OPTIONS
492     ${bitcode_link_flags}
493     -O2
496 add_entrypoint_object(
497   tanh
498   SRCS
499     tanh.cpp
500   HDRS
501     ../../tanh.h
502   COMPILE_OPTIONS
503     ${bitcode_link_flags}
504     -O2
507 add_entrypoint_object(
508   tanhf
509   SRCS
510     tanhf.cpp
511   HDRS
512     ../../tanhf.h
513   COMPILE_OPTIONS
514     ${bitcode_link_flags}
515     -O2
518 add_entrypoint_object(
519   frexp
520   SRCS
521     frexp.cpp
522   HDRS
523     ../../frexp.h
524   COMPILE_OPTIONS
525     ${bitcode_link_flags}
526     -O2
529 add_entrypoint_object(
530   frexpf
531   SRCS
532     frexpf.cpp
533   HDRS
534     ../../frexpf.h
535   COMPILE_OPTIONS
536     ${bitcode_link_flags}
537     -O2