[SLP][REVEC] The vectorized result for ShuffleVector may not be ShuffleVectorInst...
[llvm-project.git] / libc / config / gpu / entrypoints.txt
blob38e9f2e685caedd3d34ac79497545db5245dde53
1 set(TARGET_LIBC_ENTRYPOINTS
2     # assert.h entrypoints
3     libc.src.assert.__assert_fail
5     # ctype.h entrypoints
6     libc.src.ctype.isalnum
7     libc.src.ctype.isalnum_l
8     libc.src.ctype.isalpha
9     libc.src.ctype.isalpha_l
10     libc.src.ctype.isascii
11     libc.src.ctype.isblank
12     libc.src.ctype.isblank_l
13     libc.src.ctype.iscntrl
14     libc.src.ctype.iscntrl_l
15     libc.src.ctype.isdigit
16     libc.src.ctype.isdigit_l
17     libc.src.ctype.isgraph
18     libc.src.ctype.isgraph_l
19     libc.src.ctype.islower
20     libc.src.ctype.islower_l
21     libc.src.ctype.isprint
22     libc.src.ctype.isprint_l
23     libc.src.ctype.ispunct
24     libc.src.ctype.ispunct_l
25     libc.src.ctype.isspace
26     libc.src.ctype.isspace_l
27     libc.src.ctype.isupper
28     libc.src.ctype.isupper_l
29     libc.src.ctype.isxdigit
30     libc.src.ctype.isxdigit_l
31     libc.src.ctype.toascii
32     libc.src.ctype.tolower
33     libc.src.ctype.tolower_l
34     libc.src.ctype.toupper
35     libc.src.ctype.toupper_l
37     # string.h entrypoints
38     libc.src.string.bcmp
39     libc.src.string.bcopy
40     libc.src.string.bzero
41     libc.src.string.index
42     libc.src.string.memccpy
43     libc.src.string.memchr
44     libc.src.string.memcmp
45     libc.src.string.memcpy
46     libc.src.string.memmem
47     libc.src.string.memmove
48     libc.src.string.mempcpy
49     libc.src.string.memrchr
50     libc.src.string.memset
51     libc.src.string.rindex
52     libc.src.string.stpcpy
53     libc.src.string.stpncpy
54     libc.src.string.strcasecmp
55     libc.src.string.strcasestr
56     libc.src.string.strcat
57     libc.src.string.strchr
58     libc.src.string.strchrnul
59     libc.src.string.strcmp
60     libc.src.string.strcoll
61     libc.src.string.strcoll_l
62     libc.src.string.strcpy
63     libc.src.string.strcspn
64     libc.src.string.strdup
65     libc.src.string.strerror
66     libc.src.string.strlcat
67     libc.src.string.strlcpy
68     libc.src.string.strlen
69     libc.src.string.strncasecmp
70     libc.src.string.strncat
71     libc.src.string.strncmp
72     libc.src.string.strncpy
73     libc.src.string.strndup
74     libc.src.string.strnlen
75     libc.src.string.strpbrk
76     libc.src.string.strrchr
77     libc.src.string.strsep
78     libc.src.string.strspn
79     libc.src.string.strstr
80     libc.src.string.strtok
81     libc.src.string.strtok_r
82     libc.src.string.strxfrm
83     libc.src.string.strxfrm_l
85     # stdbit.h entrypoints
86     libc.src.stdbit.stdc_bit_ceil_uc
87     libc.src.stdbit.stdc_bit_ceil_ui
88     libc.src.stdbit.stdc_bit_ceil_ul
89     libc.src.stdbit.stdc_bit_ceil_ull
90     libc.src.stdbit.stdc_bit_ceil_us
91     libc.src.stdbit.stdc_bit_floor_uc
92     libc.src.stdbit.stdc_bit_floor_ui
93     libc.src.stdbit.stdc_bit_floor_ul
94     libc.src.stdbit.stdc_bit_floor_ull
95     libc.src.stdbit.stdc_bit_floor_us
96     libc.src.stdbit.stdc_bit_width_uc
97     libc.src.stdbit.stdc_bit_width_ui
98     libc.src.stdbit.stdc_bit_width_ul
99     libc.src.stdbit.stdc_bit_width_ull
100     libc.src.stdbit.stdc_bit_width_us
101     libc.src.stdbit.stdc_count_ones_uc
102     libc.src.stdbit.stdc_count_ones_ui
103     libc.src.stdbit.stdc_count_ones_ul
104     libc.src.stdbit.stdc_count_ones_ull
105     libc.src.stdbit.stdc_count_ones_us
106     libc.src.stdbit.stdc_count_zeros_uc
107     libc.src.stdbit.stdc_count_zeros_ui
108     libc.src.stdbit.stdc_count_zeros_ul
109     libc.src.stdbit.stdc_count_zeros_ull
110     libc.src.stdbit.stdc_count_zeros_us
111     libc.src.stdbit.stdc_first_leading_one_uc
112     libc.src.stdbit.stdc_first_leading_one_ui
113     libc.src.stdbit.stdc_first_leading_one_ul
114     libc.src.stdbit.stdc_first_leading_one_ull
115     libc.src.stdbit.stdc_first_leading_one_us
116     libc.src.stdbit.stdc_first_leading_zero_uc
117     libc.src.stdbit.stdc_first_leading_zero_ui
118     libc.src.stdbit.stdc_first_leading_zero_ul
119     libc.src.stdbit.stdc_first_leading_zero_ull
120     libc.src.stdbit.stdc_first_leading_zero_us
121     libc.src.stdbit.stdc_first_trailing_one_uc
122     libc.src.stdbit.stdc_first_trailing_one_ui
123     libc.src.stdbit.stdc_first_trailing_one_ul
124     libc.src.stdbit.stdc_first_trailing_one_ull
125     libc.src.stdbit.stdc_first_trailing_one_us
126     libc.src.stdbit.stdc_first_trailing_zero_uc
127     libc.src.stdbit.stdc_first_trailing_zero_ui
128     libc.src.stdbit.stdc_first_trailing_zero_ul
129     libc.src.stdbit.stdc_first_trailing_zero_ull
130     libc.src.stdbit.stdc_first_trailing_zero_us
131     libc.src.stdbit.stdc_has_single_bit_uc
132     libc.src.stdbit.stdc_has_single_bit_ui
133     libc.src.stdbit.stdc_has_single_bit_ul
134     libc.src.stdbit.stdc_has_single_bit_ull
135     libc.src.stdbit.stdc_has_single_bit_us
136     libc.src.stdbit.stdc_leading_ones_uc
137     libc.src.stdbit.stdc_leading_ones_ui
138     libc.src.stdbit.stdc_leading_ones_ul
139     libc.src.stdbit.stdc_leading_ones_ull
140     libc.src.stdbit.stdc_leading_ones_us
141     libc.src.stdbit.stdc_leading_zeros_uc
142     libc.src.stdbit.stdc_leading_zeros_ui
143     libc.src.stdbit.stdc_leading_zeros_ul
144     libc.src.stdbit.stdc_leading_zeros_ull
145     libc.src.stdbit.stdc_leading_zeros_us
146     libc.src.stdbit.stdc_trailing_ones_uc
147     libc.src.stdbit.stdc_trailing_ones_ui
148     libc.src.stdbit.stdc_trailing_ones_ul
149     libc.src.stdbit.stdc_trailing_ones_ull
150     libc.src.stdbit.stdc_trailing_ones_us
151     libc.src.stdbit.stdc_trailing_zeros_uc
152     libc.src.stdbit.stdc_trailing_zeros_ui
153     libc.src.stdbit.stdc_trailing_zeros_ul
154     libc.src.stdbit.stdc_trailing_zeros_ull
155     libc.src.stdbit.stdc_trailing_zeros_us
157     # stdlib.h entrypoints
158     libc.src.stdlib._Exit
159     libc.src.stdlib.abort
160     libc.src.stdlib.abs
161     libc.src.stdlib.atexit
162     libc.src.stdlib.atof
163     libc.src.stdlib.atoi
164     libc.src.stdlib.atol
165     libc.src.stdlib.atoll
166     libc.src.stdlib.bsearch
167     libc.src.stdlib.div
168     libc.src.stdlib.exit
169     libc.src.stdlib.labs
170     libc.src.stdlib.ldiv
171     libc.src.stdlib.llabs
172     libc.src.stdlib.lldiv
173     libc.src.stdlib.qsort
174     libc.src.stdlib.qsort_r
175     libc.src.stdlib.rand
176     libc.src.stdlib.srand
177     libc.src.stdlib.strtod
178     libc.src.stdlib.strtod_l
179     libc.src.stdlib.strtof
180     libc.src.stdlib.strtof_l
181     libc.src.stdlib.strtol
182     libc.src.stdlib.strtol_l
183     libc.src.stdlib.strtold
184     libc.src.stdlib.strtold_l
185     libc.src.stdlib.strtoll
186     libc.src.stdlib.strtoll_l
187     libc.src.stdlib.strtoul
188     libc.src.stdlib.strtoul_l
189     libc.src.stdlib.strtoull
190     libc.src.stdlib.strtoull_l
191     libc.src.stdlib.at_quick_exit
192     libc.src.stdlib.quick_exit
193     libc.src.stdlib.getenv
194     libc.src.stdlib.system
196     # TODO: Implement these correctly
197     libc.src.stdlib.aligned_alloc
198     libc.src.stdlib.calloc
199     libc.src.stdlib.free
200     libc.src.stdlib.malloc
201     libc.src.stdlib.realloc
203     # errno.h entrypoints
204     libc.src.errno.errno
206     # stdio.h entrypoints
207     libc.src.stdio.clearerr
208     libc.src.stdio.fclose
209     libc.src.stdio.printf
210     libc.src.stdio.vprintf
211     libc.src.stdio.fprintf
212     libc.src.stdio.vfprintf
213     libc.src.stdio.snprintf
214     libc.src.stdio.sprintf
215     libc.src.stdio.vsnprintf
216     libc.src.stdio.vsprintf
217     libc.src.stdio.asprintf
218     libc.src.stdio.vasprintf
219     libc.src.stdio.scanf
220     libc.src.stdio.vscanf
221     libc.src.stdio.fscanf
222     libc.src.stdio.vfscanf
223     libc.src.stdio.sscanf
224     libc.src.stdio.vsscanf
225     libc.src.stdio.feof
226     libc.src.stdio.ferror
227     libc.src.stdio.fflush
228     libc.src.stdio.fgetc
229     libc.src.stdio.fgets
230     libc.src.stdio.fopen
231     libc.src.stdio.fputc
232     libc.src.stdio.fputs
233     libc.src.stdio.fread
234     libc.src.stdio.fseek
235     libc.src.stdio.ftell
236     libc.src.stdio.fwrite
237     libc.src.stdio.getc
238     libc.src.stdio.getchar
239     libc.src.stdio.putc
240     libc.src.stdio.putchar
241     libc.src.stdio.puts
242     libc.src.stdio.remove
243     libc.src.stdio.rename
244     libc.src.stdio.stderr
245     libc.src.stdio.stdin
246     libc.src.stdio.stdout
247     libc.src.stdio.ungetc
249     # inttypes.h entrypoints
250     libc.src.inttypes.imaxabs
251     libc.src.inttypes.imaxdiv
252     libc.src.inttypes.strtoimax
253     libc.src.inttypes.strtoumax
255     # time.h entrypoints
256     libc.src.time.clock
257     libc.src.time.clock_gettime
258     libc.src.time.nanosleep
260     # wchar.h entrypoints
261     libc.src.wchar.wctob
263     # locale.h entrypoints
264     libc.src.locale.localeconv
265     libc.src.locale.duplocale
266     libc.src.locale.freelocale
267     libc.src.locale.localeconv
268     libc.src.locale.newlocale
269     libc.src.locale.setlocale
270     libc.src.locale.uselocale
272     # gpu/rpc.h entrypoints
273     libc.src.gpu.rpc_host_call
276 set(TARGET_LIBM_ENTRYPOINTS
277     # math.h entrypoints
278     libc.src.math.acos
279     libc.src.math.acosf
280     libc.src.math.acosh
281     libc.src.math.acoshf
282     libc.src.math.asin
283     libc.src.math.asinf
284     libc.src.math.asinh
285     libc.src.math.asinhf
286     libc.src.math.atan
287     libc.src.math.atan2
288     libc.src.math.atan2f
289     libc.src.math.atan2l
290     libc.src.math.atanf
291     libc.src.math.atanh
292     libc.src.math.atanhf
293     libc.src.math.canonicalize
294     libc.src.math.canonicalizef
295     libc.src.math.canonicalizel
296     libc.src.math.cbrt
297     libc.src.math.cbrtf
298     libc.src.math.ceil
299     libc.src.math.ceilf
300     libc.src.math.ceill
301     libc.src.math.copysign
302     libc.src.math.copysignf
303     libc.src.math.copysignl
304     libc.src.math.cos
305     libc.src.math.cosf
306     libc.src.math.cosh
307     libc.src.math.coshf
308     libc.src.math.cospif
309     libc.src.math.ddivl
310     libc.src.math.dfmal
311     libc.src.math.dmull
312     libc.src.math.dsqrtl
313     libc.src.math.erf
314     libc.src.math.erff
315     libc.src.math.exp
316     libc.src.math.exp10
317     libc.src.math.exp10f
318     libc.src.math.exp2
319     libc.src.math.exp2f
320     libc.src.math.exp2m1f
321     libc.src.math.expf
322     libc.src.math.expm1
323     libc.src.math.expm1f
324     libc.src.math.fabs
325     libc.src.math.fabsf
326     libc.src.math.fabsl
327     libc.src.math.fadd
328     libc.src.math.faddl
329     libc.src.math.fdim
330     libc.src.math.fdimf
331     libc.src.math.fdiml
332     libc.src.math.fdiv
333     libc.src.math.fdivl
334     libc.src.math.ffma
335     libc.src.math.ffmal
336     libc.src.math.floor
337     libc.src.math.floorf
338     libc.src.math.floorl
339     libc.src.math.fma
340     libc.src.math.fmaf
341     libc.src.math.fmax
342     libc.src.math.fmaxf
343     libc.src.math.fmaximum
344     libc.src.math.fmaximumf
345     libc.src.math.fmaximuml
346     libc.src.math.fmaximum_mag
347     libc.src.math.fmaximum_magf
348     libc.src.math.fmaximum_magl
349     libc.src.math.fmaximum_mag_num
350     libc.src.math.fmaximum_mag_numf
351     libc.src.math.fmaximum_mag_numl
352     libc.src.math.fmaximum_num
353     libc.src.math.fmaximum_numf
354     libc.src.math.fmaximum_numl
355     libc.src.math.fmaxl
356     libc.src.math.fmin
357     libc.src.math.fminf
358     libc.src.math.fminimum
359     libc.src.math.fminimumf
360     libc.src.math.fminimuml
361     libc.src.math.fminimum_mag
362     libc.src.math.fminimum_magf
363     libc.src.math.fminimum_magl
364     libc.src.math.fminimum_mag_num
365     libc.src.math.fminimum_mag_numf
366     libc.src.math.fminimum_mag_numl
367     libc.src.math.fminimum_num
368     libc.src.math.fminimum_numf
369     libc.src.math.fminimum_numl
370     libc.src.math.fminl
371     libc.src.math.fmod
372     libc.src.math.fmodf
373     libc.src.math.fmodl
374     libc.src.math.fmul
375     libc.src.math.fmull
376     libc.src.math.frexp
377     libc.src.math.frexpf
378     libc.src.math.frexpl
379     # FIXME: Broken on NVPTX.
380     # libc.src.math.fromfp
381     # libc.src.math.fromfpf
382     # libc.src.math.fromfpl
383     # libc.src.math.fromfpx
384     # libc.src.math.fromfpxf
385     # libc.src.math.fromfpxl
386     libc.src.math.fsqrt
387     libc.src.math.fsqrtl
388     libc.src.math.fsub
389     libc.src.math.fsubl
390     libc.src.math.getpayload
391     libc.src.math.getpayloadf
392     libc.src.math.getpayloadl
393     libc.src.math.hypot
394     libc.src.math.hypotf
395     libc.src.math.ilogb
396     libc.src.math.ilogbf
397     libc.src.math.ilogbl
398     libc.src.math.isnan
399     libc.src.math.isnanf
400     libc.src.math.isnanl
401     libc.src.math.ldexp
402     libc.src.math.ldexpf
403     libc.src.math.ldexpl
404     libc.src.math.lgamma
405     libc.src.math.lgamma_r
406     libc.src.math.llogb
407     libc.src.math.llogbf
408     libc.src.math.llogbl
409     libc.src.math.llrint
410     libc.src.math.llrintf
411     libc.src.math.llrintl
412     libc.src.math.llround
413     libc.src.math.llroundf
414     libc.src.math.llroundl
415     libc.src.math.log
416     libc.src.math.log10
417     libc.src.math.log10f
418     libc.src.math.log1p
419     libc.src.math.log1pf
420     libc.src.math.log2
421     libc.src.math.log2f
422     libc.src.math.logb
423     libc.src.math.logbf
424     libc.src.math.logbl
425     libc.src.math.logf
426     libc.src.math.lrint
427     libc.src.math.lrintf
428     libc.src.math.lrintl
429     libc.src.math.lround
430     libc.src.math.lroundf
431     libc.src.math.lroundl
432     libc.src.math.modf
433     libc.src.math.modff
434     libc.src.math.modfl
435     libc.src.math.nan
436     libc.src.math.nanf
437     libc.src.math.nanl
438     libc.src.math.nearbyint
439     libc.src.math.nearbyintf
440     libc.src.math.nearbyintl
441     libc.src.math.nextafter
442     libc.src.math.nextafterf
443     libc.src.math.nextafterl
444     libc.src.math.nextdown
445     libc.src.math.nextdownf
446     libc.src.math.nextdownl
447     libc.src.math.nexttoward
448     libc.src.math.nexttowardf
449     libc.src.math.nexttowardl
450     libc.src.math.nextup
451     libc.src.math.nextupf
452     libc.src.math.nextupl
453     libc.src.math.pow
454     libc.src.math.powf
455     libc.src.math.powi
456     libc.src.math.powif
457     libc.src.math.remainder
458     libc.src.math.remainderf
459     libc.src.math.remainderl
460     libc.src.math.remquo
461     libc.src.math.remquof
462     libc.src.math.remquol
463     libc.src.math.rint
464     libc.src.math.rintf
465     libc.src.math.rintl
466     libc.src.math.roundeven
467     libc.src.math.roundevenf
468     libc.src.math.roundevenl
469     libc.src.math.round
470     libc.src.math.roundf
471     libc.src.math.roundl
472     libc.src.math.scalbln
473     libc.src.math.scalblnf
474     libc.src.math.scalblnl
475     libc.src.math.scalbn
476     libc.src.math.scalbnf
477     libc.src.math.scalbnl
478     libc.src.math.setpayload
479     libc.src.math.setpayloadf
480     libc.src.math.setpayloadl
481     libc.src.math.setpayloadsig
482     libc.src.math.setpayloadsigf
483     libc.src.math.setpayloadsigl
484     libc.src.math.sin
485     libc.src.math.sincos
486     libc.src.math.sincosf
487     libc.src.math.sinf
488     libc.src.math.sinh
489     libc.src.math.sinhf
490     libc.src.math.sinpif
491     libc.src.math.sqrt
492     libc.src.math.sqrtf
493     libc.src.math.sqrtl
494     libc.src.math.tan
495     libc.src.math.tanf
496     libc.src.math.tanh
497     libc.src.math.tanhf
498     libc.src.math.tgamma
499     libc.src.math.tgammaf
500     libc.src.math.totalorder
501     libc.src.math.totalorderf
502     libc.src.math.totalorderl
503     libc.src.math.totalordermag
504     libc.src.math.totalordermagf
505     libc.src.math.totalordermagl
506     libc.src.math.trunc
507     libc.src.math.truncf
508     libc.src.math.truncl
509     # FIXME: Broken on NVPTX.
510     # libc.src.math.ufromfp
511     # libc.src.math.ufromfpf
512     # libc.src.math.ufromfpl
513     # libc.src.math.ufromfpx
514     # libc.src.math.ufromfpxf
515     # libc.src.math.ufromfpxl
518 if(LIBC_TYPES_HAS_FLOAT16)
519   list(APPEND TARGET_LIBM_ENTRYPOINTS
520     # math.h C23 _Float16 entrypoints
521     libc.src.math.canonicalizef16
522     libc.src.math.ceilf16
523     libc.src.math.copysignf16
524     libc.src.math.coshf16
525     libc.src.math.exp10f16
526     libc.src.math.exp10m1f16
527     libc.src.math.exp2f16
528     libc.src.math.expf16
529     libc.src.math.f16add
530     libc.src.math.f16addf
531     libc.src.math.f16addl
532     libc.src.math.f16div
533     libc.src.math.f16divf
534     libc.src.math.f16divl
535     libc.src.math.f16fma
536     libc.src.math.f16fmaf
537     libc.src.math.f16fmal
538     libc.src.math.f16mul
539     libc.src.math.f16mulf
540     libc.src.math.f16mull
541     libc.src.math.f16sqrt
542     libc.src.math.f16sqrtf
543     libc.src.math.f16sqrtl
544     libc.src.math.f16sub
545     libc.src.math.f16subf
546     libc.src.math.f16subl
547     libc.src.math.fabsf16
548     libc.src.math.fdimf16
549     libc.src.math.floorf16
550     libc.src.math.fmaxf16
551     libc.src.math.fmaximum_mag_numf16
552     libc.src.math.fmaximum_magf16
553     libc.src.math.fmaximum_numf16
554     libc.src.math.fmaximumf16
555     libc.src.math.fminf16
556     libc.src.math.fminimum_mag_numf16
557     libc.src.math.fminimum_magf16
558     libc.src.math.fminimum_numf16
559     libc.src.math.fminimumf16
560     libc.src.math.fmodf16
561     libc.src.math.frexpf16
562     libc.src.math.fromfpf16
563     libc.src.math.fromfpxf16
564     libc.src.math.getpayloadf16
565     libc.src.math.ilogbf16
566     libc.src.math.ldexpf16
567     libc.src.math.llogbf16
568     libc.src.math.llrintf16
569     libc.src.math.llroundf16
570     libc.src.math.log10f16
571     libc.src.math.log2f16
572     libc.src.math.logbf16
573     libc.src.math.logf16
574     libc.src.math.lrintf16
575     libc.src.math.lroundf16
576     libc.src.math.modff16
577     libc.src.math.nanf16
578     libc.src.math.nearbyintf16
579     libc.src.math.nextafterf16
580     libc.src.math.nextdownf16
581     libc.src.math.nexttowardf16
582     libc.src.math.nextupf16
583     libc.src.math.remainderf16
584     libc.src.math.remquof16
585     libc.src.math.rintf16
586     libc.src.math.roundevenf16
587     libc.src.math.roundf16
588     libc.src.math.scalblnf16
589     libc.src.math.scalbnf16
590     libc.src.math.setpayloadf16
591     libc.src.math.setpayloadsigf16
592     libc.src.math.sinhf16
593     libc.src.math.sqrtf16
594     libc.src.math.tanhf16
595     libc.src.math.totalorderf16
596     libc.src.math.totalordermagf16
597     libc.src.math.truncf16
598     libc.src.math.ufromfpf16
599     libc.src.math.ufromfpxf16
600   )
601 endif()
603 set(TARGET_LLVMLIBC_ENTRYPOINTS
604   ${TARGET_LIBC_ENTRYPOINTS}
605   ${TARGET_LIBM_ENTRYPOINTS}