1set(TARGET_LIBC_ENTRYPOINTS
2    # ctype.h entrypoints
3    libc.src.ctype.isalnum
4    libc.src.ctype.isalpha
5    libc.src.ctype.isascii
6    libc.src.ctype.isblank
7    libc.src.ctype.iscntrl
8    libc.src.ctype.isdigit
9    libc.src.ctype.isgraph
10    libc.src.ctype.islower
11    libc.src.ctype.isprint
12    libc.src.ctype.ispunct
13    libc.src.ctype.isspace
14    libc.src.ctype.isupper
15    libc.src.ctype.isxdigit
16    libc.src.ctype.toascii
17    libc.src.ctype.tolower
18    libc.src.ctype.toupper
19
20    # string.h entrypoints
21    libc.src.string.bcmp
22    libc.src.string.bzero
23    libc.src.string.memccpy
24    libc.src.string.memchr
25    libc.src.string.memcmp
26    libc.src.string.memcpy
27    libc.src.string.memmove
28    libc.src.string.mempcpy
29    libc.src.string.memrchr
30    libc.src.string.memset
31    libc.src.string.stpcpy
32    libc.src.string.stpncpy
33    libc.src.string.strcat
34    libc.src.string.strchr
35    libc.src.string.strcmp
36    libc.src.string.strcpy
37    libc.src.string.strcspn
38    libc.src.string.strlcat
39    libc.src.string.strlcpy
40    libc.src.string.strlen
41    libc.src.string.strncat
42    libc.src.string.strncmp
43    libc.src.string.strncpy
44    libc.src.string.strnlen
45    libc.src.string.strpbrk
46    libc.src.string.strrchr
47    libc.src.string.strspn
48    libc.src.string.strstr
49    libc.src.string.strtok
50    libc.src.string.strtok_r
51
52    # string.h entrypoints that depend on malloc
53    libc.src.string.strdup
54    libc.src.string.strndup
55
56    # inttypes.h entrypoints
57    libc.src.inttypes.imaxabs
58    libc.src.inttypes.imaxdiv
59    libc.src.inttypes.strtoimax
60    libc.src.inttypes.strtoumax
61
62    # stdlib.h entrypoints
63    libc.src.stdlib.abs
64    libc.src.stdlib.atoi
65    libc.src.stdlib.atof
66    libc.src.stdlib.atol
67    libc.src.stdlib.atoll
68    libc.src.stdlib.bsearch
69    libc.src.stdlib.div
70    libc.src.stdlib.labs
71    libc.src.stdlib.ldiv
72    libc.src.stdlib.llabs
73    libc.src.stdlib.lldiv
74    libc.src.stdlib.qsort
75    libc.src.stdlib.strtod
76    libc.src.stdlib.strtof
77    libc.src.stdlib.strtol
78    libc.src.stdlib.strtold
79    libc.src.stdlib.strtoll
80    libc.src.stdlib.strtoul
81    libc.src.stdlib.strtoull
82
83    # stdlib.h external entrypoints
84    libc.src.stdlib.malloc
85    libc.src.stdlib.calloc
86    libc.src.stdlib.realloc
87    libc.src.stdlib.aligned_alloc
88    libc.src.stdlib.free
89)
90
91set(TARGET_LIBM_ENTRYPOINTS
92    # fenv.h entrypoints
93    libc.src.fenv.feclearexcept
94    libc.src.fenv.fedisableexcept
95    libc.src.fenv.feenableexcept
96    libc.src.fenv.fegetenv
97    libc.src.fenv.fegetexcept
98    libc.src.fenv.fegetexceptflag
99    libc.src.fenv.fegetround
100    libc.src.fenv.feholdexcept
101    libc.src.fenv.fesetenv
102    libc.src.fenv.fesetexceptflag
103    libc.src.fenv.fesetround
104    libc.src.fenv.feraiseexcept
105    libc.src.fenv.fetestexcept
106    libc.src.fenv.feupdateenv
107
108    # math.h entrypoints
109    libc.src.math.copysign
110    libc.src.math.copysignf
111    libc.src.math.copysignl
112    libc.src.math.ceil
113    libc.src.math.ceilf
114    libc.src.math.ceill
115    libc.src.math.cos
116    libc.src.math.cosf
117    libc.src.math.expf
118    libc.src.math.exp2f
119    libc.src.math.expm1f
120    libc.src.math.fabs
121    libc.src.math.fabsf
122    libc.src.math.fabsl
123    libc.src.math.fdim
124    libc.src.math.fdimf
125    libc.src.math.fdiml
126    libc.src.math.floor
127    libc.src.math.floorf
128    libc.src.math.floorl
129    libc.src.math.fma
130    libc.src.math.fmaf
131    libc.src.math.fmin
132    libc.src.math.fminf
133    libc.src.math.fminl
134    libc.src.math.fmax
135    libc.src.math.fmaxf
136    libc.src.math.fmaxl
137    libc.src.math.fmod
138    libc.src.math.fmodf
139    libc.src.math.frexp
140    libc.src.math.frexpf
141    libc.src.math.frexpl
142    libc.src.math.hypot
143    libc.src.math.hypotf
144    libc.src.math.ilogb
145    libc.src.math.ilogbf
146    libc.src.math.ilogbl
147    libc.src.math.ldexp
148    libc.src.math.ldexpf
149    libc.src.math.ldexpl
150    libc.src.math.llrint
151    libc.src.math.llrintf
152    libc.src.math.llrintl
153    libc.src.math.llround
154    libc.src.math.llroundf
155    libc.src.math.llroundl
156    libc.src.math.log10f
157    libc.src.math.log1pf
158    libc.src.math.log2f
159    libc.src.math.logf
160    libc.src.math.logb
161    libc.src.math.logbf
162    libc.src.math.logbl
163    libc.src.math.lrint
164    libc.src.math.lrintf
165    libc.src.math.lrintl
166    libc.src.math.lround
167    libc.src.math.lroundf
168    libc.src.math.lroundl
169    libc.src.math.modf
170    libc.src.math.modff
171    libc.src.math.modfl
172    libc.src.math.nearbyint
173    libc.src.math.nearbyintf
174    libc.src.math.nearbyintl
175    libc.src.math.nextafter
176    libc.src.math.nextafterf
177    libc.src.math.nextafterl
178    libc.src.math.remainderf
179    libc.src.math.remainder
180    libc.src.math.remainderl
181    libc.src.math.remquof
182    libc.src.math.remquo
183    libc.src.math.remquol
184    libc.src.math.rint
185    libc.src.math.rintf
186    libc.src.math.rintl
187    libc.src.math.round
188    libc.src.math.roundf
189    libc.src.math.roundl
190    libc.src.math.sin
191    libc.src.math.sincosf
192    libc.src.math.sinf
193    libc.src.math.sqrt
194    libc.src.math.sqrtf
195    libc.src.math.sqrtl
196    libc.src.math.tan
197    libc.src.math.trunc
198    libc.src.math.truncf
199    libc.src.math.truncl
200)
201
202set(TARGET_LLVMLIBC_ENTRYPOINTS
203  ${TARGET_LIBC_ENTRYPOINTS}
204  ${TARGET_LIBM_ENTRYPOINTS}
205)
206
207