151 TLI.setUnavailable(LibFunc_getc_unlocked);
152 TLI.setUnavailable(LibFunc_getchar_unlocked);
153 TLI.setUnavailable(LibFunc_putc_unlocked);
154 TLI.setUnavailable(LibFunc_putchar_unlocked);
155 TLI.setUnavailable(LibFunc_fputc_unlocked);
156 TLI.setUnavailable(LibFunc_fgetc_unlocked);
157 TLI.setUnavailable(LibFunc_fread_unlocked);
158 TLI.setUnavailable(LibFunc_fwrite_unlocked);
159 TLI.setUnavailable(LibFunc_fputs_unlocked);
160 TLI.setUnavailable(LibFunc_fgets_unlocked);
164 TLI.disableAllFunctions();
172 TLI.disableAllFunctions();
180 TLI.setAvailable(LibFunc_getc_unlocked);
181 TLI.setAvailable(LibFunc_getchar_unlocked);
182 TLI.setAvailable(LibFunc_putc_unlocked);
183 TLI.setAvailable(LibFunc_putchar_unlocked);
184 TLI.setUnavailable(LibFunc_memrchr);
186 if (
T.isMacOSXVersionLT(10, 5)) {
187 TLI.setUnavailable(LibFunc_memset_pattern4);
188 TLI.setUnavailable(LibFunc_memset_pattern8);
189 TLI.setUnavailable(LibFunc_memset_pattern16);
191 }
else if (
T.isiOS()) {
192 if (
T.isOSVersionLT(3, 0)) {
193 TLI.setUnavailable(LibFunc_memset_pattern4);
194 TLI.setUnavailable(LibFunc_memset_pattern8);
195 TLI.setUnavailable(LibFunc_memset_pattern16);
197 }
else if (!
T.isWatchOS()) {
198 TLI.setUnavailable(LibFunc_memset_pattern4);
199 TLI.setUnavailable(LibFunc_memset_pattern8);
200 TLI.setUnavailable(LibFunc_memset_pattern16);
204 TLI.setUnavailable(LibFunc_sinpi);
205 TLI.setUnavailable(LibFunc_sinpif);
206 TLI.setUnavailable(LibFunc_cospi);
207 TLI.setUnavailable(LibFunc_cospif);
208 TLI.setUnavailable(LibFunc_sincos_stret);
209 TLI.setUnavailable(LibFunc_sincosf_stret);
210 TLI.setUnavailable(LibFunc_sincospi_stret);
211 TLI.setUnavailable(LibFunc_sincospif_stret);
215 TLI.setUnavailable(LibFunc_bcmp);
218 !
T.isMacOSXVersionLT(10, 7)) {
224 TLI.setAvailableWithName(LibFunc_fwrite,
"fwrite$UNIX2003");
225 TLI.setAvailableWithName(LibFunc_fputs,
"fputs$UNIX2003");
231 TLI.setUnavailable(LibFunc_iprintf);
232 TLI.setUnavailable(LibFunc_siprintf);
233 TLI.setUnavailable(LibFunc_fiprintf);
238 TLI.setUnavailable(LibFunc_small_printf);
239 TLI.setUnavailable(LibFunc_small_sprintf);
240 TLI.setUnavailable(LibFunc_small_fprintf);
243 if (
T.isOSWindows() && !
T.isOSCygMing()) {
249 bool hasPartialC99 =
true;
250 if (
T.isKnownWindowsMSVCEnvironment()) {
252 hasPartialC99 = (Version.getMajor() == 0 || Version.getMajor() >= 19);
258 bool hasPartialFloat = (isARM ||
262 if (!hasPartialFloat) {
263 TLI.setUnavailable(LibFunc_acosf);
264 TLI.setUnavailable(LibFunc_asinf);
265 TLI.setUnavailable(LibFunc_atan2f);
266 TLI.setUnavailable(LibFunc_atanf);
267 TLI.setUnavailable(LibFunc_ceilf);
268 TLI.setUnavailable(LibFunc_cosf);
269 TLI.setUnavailable(LibFunc_coshf);
270 TLI.setUnavailable(LibFunc_expf);
271 TLI.setUnavailable(LibFunc_floorf);
272 TLI.setUnavailable(LibFunc_fmodf);
273 TLI.setUnavailable(LibFunc_hypotf);
274 TLI.setUnavailable(LibFunc_log10f);
275 TLI.setUnavailable(LibFunc_logf);
276 TLI.setUnavailable(LibFunc_modff);
277 TLI.setUnavailable(LibFunc_powf);
278 TLI.setUnavailable(LibFunc_remainderf);
279 TLI.setUnavailable(LibFunc_remquof);
280 TLI.setUnavailable(LibFunc_fdimf);
281 TLI.setUnavailable(LibFunc_sinf);
282 TLI.setUnavailable(LibFunc_sinhf);
283 TLI.setUnavailable(LibFunc_sqrtf);
284 TLI.setUnavailable(LibFunc_tanf);
285 TLI.setUnavailable(LibFunc_tanhf);
288 TLI.setUnavailable(LibFunc_fabsf);
289 TLI.setUnavailable(LibFunc_frexpf);
290 TLI.setUnavailable(LibFunc_ldexpf);
293 TLI.setUnavailable(LibFunc_acosl);
294 TLI.setUnavailable(LibFunc_asinl);
295 TLI.setUnavailable(LibFunc_atan2l);
296 TLI.setUnavailable(LibFunc_atanl);
297 TLI.setUnavailable(LibFunc_ceill);
298 TLI.setUnavailable(LibFunc_cosl);
299 TLI.setUnavailable(LibFunc_coshl);
300 TLI.setUnavailable(LibFunc_expl);
301 TLI.setUnavailable(LibFunc_fabsl);
302 TLI.setUnavailable(LibFunc_floorl);
303 TLI.setUnavailable(LibFunc_fmodl);
304 TLI.setUnavailable(LibFunc_frexpl);
305 TLI.setUnavailable(LibFunc_hypotl);
306 TLI.setUnavailable(LibFunc_ldexpl);
307 TLI.setUnavailable(LibFunc_log10l);
308 TLI.setUnavailable(LibFunc_logl);
309 TLI.setUnavailable(LibFunc_modfl);
310 TLI.setUnavailable(LibFunc_powl);
311 TLI.setUnavailable(LibFunc_remainderl);
312 TLI.setUnavailable(LibFunc_remquol);
313 TLI.setUnavailable(LibFunc_fdiml);
314 TLI.setUnavailable(LibFunc_sinl);
315 TLI.setUnavailable(LibFunc_sinhl);
316 TLI.setUnavailable(LibFunc_sqrtl);
317 TLI.setUnavailable(LibFunc_tanl);
318 TLI.setUnavailable(LibFunc_tanhl);
321 if (!hasPartialC99) {
322 TLI.setUnavailable(LibFunc_acosh);
323 TLI.setUnavailable(LibFunc_acoshf);
324 TLI.setUnavailable(LibFunc_asinh);
325 TLI.setUnavailable(LibFunc_asinhf);
326 TLI.setUnavailable(LibFunc_atanh);
327 TLI.setUnavailable(LibFunc_atanhf);
328 TLI.setAvailableWithName(LibFunc_cabs,
"_cabs");
329 TLI.setUnavailable(LibFunc_cabsf);
330 TLI.setUnavailable(LibFunc_cbrt);
331 TLI.setUnavailable(LibFunc_cbrtf);
332 TLI.setAvailableWithName(LibFunc_copysign,
"_copysign");
333 TLI.setAvailableWithName(LibFunc_copysignf,
"_copysignf");
334 TLI.setUnavailable(LibFunc_exp2);
335 TLI.setUnavailable(LibFunc_exp2f);
336 TLI.setUnavailable(LibFunc_expm1);
337 TLI.setUnavailable(LibFunc_expm1f);
338 TLI.setUnavailable(LibFunc_fmax);
339 TLI.setUnavailable(LibFunc_fmaxf);
340 TLI.setUnavailable(LibFunc_fmin);
341 TLI.setUnavailable(LibFunc_fminf);
342 TLI.setUnavailable(LibFunc_log1p);
343 TLI.setUnavailable(LibFunc_log1pf);
344 TLI.setUnavailable(LibFunc_log2);
345 TLI.setUnavailable(LibFunc_log2f);
346 TLI.setAvailableWithName(LibFunc_logb,
"_logb");
347 TLI.setUnavailable(LibFunc_ilogb);
348 TLI.setUnavailable(LibFunc_ilogbf);
350 TLI.setAvailableWithName(LibFunc_logbf,
"_logbf");
352 TLI.setUnavailable(LibFunc_logbf);
353 TLI.setUnavailable(LibFunc_nextafter);
354 TLI.setUnavailable(LibFunc_nextafterf);
355 TLI.setUnavailable(LibFunc_nexttoward);
356 TLI.setUnavailable(LibFunc_nexttowardf);
357 TLI.setUnavailable(LibFunc_rint);
358 TLI.setUnavailable(LibFunc_rintf);
359 TLI.setUnavailable(LibFunc_round);
360 TLI.setUnavailable(LibFunc_roundf);
361 TLI.setUnavailable(LibFunc_scalbln);
362 TLI.setUnavailable(LibFunc_scalblnf);
363 TLI.setUnavailable(LibFunc_scalblnl);
364 TLI.setUnavailable(LibFunc_scalbn);
365 TLI.setUnavailable(LibFunc_scalbnf);
366 TLI.setUnavailable(LibFunc_scalbnl);
367 TLI.setUnavailable(LibFunc_trunc);
368 TLI.setUnavailable(LibFunc_truncf);
372 TLI.setUnavailable(LibFunc_acoshl);
373 TLI.setUnavailable(LibFunc_asinhl);
374 TLI.setUnavailable(LibFunc_atanhl);
375 TLI.setUnavailable(LibFunc_cabsl);
376 TLI.setUnavailable(LibFunc_cbrtl);
377 TLI.setUnavailable(LibFunc_copysignl);
378 TLI.setUnavailable(LibFunc_exp2l);
379 TLI.setUnavailable(LibFunc_expm1l);
380 TLI.setUnavailable(LibFunc_fmaxl);
381 TLI.setUnavailable(LibFunc_fminl);
382 TLI.setUnavailable(LibFunc_log1pl);
383 TLI.setUnavailable(LibFunc_log2l);
384 TLI.setUnavailable(LibFunc_logbl);
385 TLI.setUnavailable(LibFunc_ilogbl);
386 TLI.setUnavailable(LibFunc_nearbyintl);
387 TLI.setUnavailable(LibFunc_nextafterl);
388 TLI.setUnavailable(LibFunc_nexttowardl);
389 TLI.setUnavailable(LibFunc_rintl);
390 TLI.setUnavailable(LibFunc_roundl);
391 TLI.setUnavailable(LibFunc_scalblnl);
392 TLI.setUnavailable(LibFunc_scalbnl);
393 TLI.setUnavailable(LibFunc_truncl);
397 TLI.setUnavailable(LibFunc_access);
398 TLI.setUnavailable(LibFunc_chmod);
399 TLI.setUnavailable(LibFunc_closedir);
400 TLI.setUnavailable(LibFunc_fdopen);
401 TLI.setUnavailable(LibFunc_fileno);
402 TLI.setUnavailable(LibFunc_fseeko);
403 TLI.setUnavailable(LibFunc_fstat);
404 TLI.setUnavailable(LibFunc_ftello);
405 TLI.setUnavailable(LibFunc_gettimeofday);
406 TLI.setUnavailable(LibFunc_memccpy);
407 TLI.setUnavailable(LibFunc_mkdir);
408 TLI.setUnavailable(LibFunc_open);
409 TLI.setUnavailable(LibFunc_opendir);
410 TLI.setUnavailable(LibFunc_pclose);
411 TLI.setUnavailable(LibFunc_popen);
412 TLI.setUnavailable(LibFunc_read);
413 TLI.setUnavailable(LibFunc_rmdir);
414 TLI.setUnavailable(LibFunc_stat);
415 TLI.setUnavailable(LibFunc_strcasecmp);
416 TLI.setUnavailable(LibFunc_strncasecmp);
417 TLI.setUnavailable(LibFunc_unlink);
418 TLI.setUnavailable(LibFunc_utime);
419 TLI.setUnavailable(LibFunc_write);
422 if (
T.isOSWindows() && !
T.isWindowsCygwinEnvironment()) {
424 TLI.setUnavailable(LibFunc_bcmp);
425 TLI.setUnavailable(LibFunc_bcopy);
426 TLI.setUnavailable(LibFunc_bzero);
427 TLI.setUnavailable(LibFunc_chown);
428 TLI.setUnavailable(LibFunc_ctermid);
429 TLI.setUnavailable(LibFunc_ffs);
430 TLI.setUnavailable(LibFunc_flockfile);
431 TLI.setUnavailable(LibFunc_fstatvfs);
432 TLI.setUnavailable(LibFunc_ftrylockfile);
433 TLI.setUnavailable(LibFunc_funlockfile);
434 TLI.setUnavailable(LibFunc_getitimer);
435 TLI.setUnavailable(LibFunc_getlogin_r);
436 TLI.setUnavailable(LibFunc_getpwnam);
437 TLI.setUnavailable(LibFunc_htonl);
438 TLI.setUnavailable(LibFunc_htons);
439 TLI.setUnavailable(LibFunc_lchown);
440 TLI.setUnavailable(LibFunc_lstat);
441 TLI.setUnavailable(LibFunc_memrchr);
442 TLI.setUnavailable(LibFunc_ntohl);
443 TLI.setUnavailable(LibFunc_ntohs);
444 TLI.setUnavailable(LibFunc_pread);
445 TLI.setUnavailable(LibFunc_pwrite);
446 TLI.setUnavailable(LibFunc_readlink);
447 TLI.setUnavailable(LibFunc_realpath);
448 TLI.setUnavailable(LibFunc_setitimer);
449 TLI.setUnavailable(LibFunc_statvfs);
450 TLI.setUnavailable(LibFunc_stpcpy);
451 TLI.setUnavailable(LibFunc_stpncpy);
452 TLI.setUnavailable(LibFunc_times);
453 TLI.setUnavailable(LibFunc_uname);
454 TLI.setUnavailable(LibFunc_unsetenv);
455 TLI.setUnavailable(LibFunc_utimes);
460 TLI.setUnavailable(LibFunc_ldexpf);
464 if (
T.isOSMSVCRT()) {
466 TLI.setUnavailable(LibFunc_ZdaPv);
467 TLI.setUnavailable(LibFunc_ZdaPvRKSt9nothrow_t);
468 TLI.setUnavailable(LibFunc_ZdaPvSt11align_val_t);
469 TLI.setUnavailable(LibFunc_ZdaPvSt11align_val_tRKSt9nothrow_t);
470 TLI.setUnavailable(LibFunc_ZdaPvj);
471 TLI.setUnavailable(LibFunc_ZdaPvjSt11align_val_t);
472 TLI.setUnavailable(LibFunc_ZdaPvm);
473 TLI.setUnavailable(LibFunc_ZdaPvmSt11align_val_t);
474 TLI.setUnavailable(LibFunc_ZdlPv);
475 TLI.setUnavailable(LibFunc_ZdlPvRKSt9nothrow_t);
476 TLI.setUnavailable(LibFunc_ZdlPvSt11align_val_t);
477 TLI.setUnavailable(LibFunc_ZdlPvSt11align_val_tRKSt9nothrow_t);
478 TLI.setUnavailable(LibFunc_ZdlPvj);
479 TLI.setUnavailable(LibFunc_ZdlPvjSt11align_val_t);
480 TLI.setUnavailable(LibFunc_ZdlPvm);
481 TLI.setUnavailable(LibFunc_ZdlPvmSt11align_val_t);
482 TLI.setUnavailable(LibFunc_Znaj);
483 TLI.setUnavailable(LibFunc_ZnajRKSt9nothrow_t);
484 TLI.setUnavailable(LibFunc_ZnajSt11align_val_t);
485 TLI.setUnavailable(LibFunc_ZnajSt11align_val_tRKSt9nothrow_t);
486 TLI.setUnavailable(LibFunc_Znam);
487 TLI.setUnavailable(LibFunc_ZnamRKSt9nothrow_t);
488 TLI.setUnavailable(LibFunc_ZnamRKSt9nothrow_t12__hot_cold_t);
489 TLI.setUnavailable(LibFunc_ZnamSt11align_val_t);
490 TLI.setUnavailable(LibFunc_ZnamSt11align_val_tRKSt9nothrow_t);
491 TLI.setUnavailable(LibFunc_Znwj);
492 TLI.setUnavailable(LibFunc_ZnwjRKSt9nothrow_t);
493 TLI.setUnavailable(LibFunc_ZnwjSt11align_val_t);
494 TLI.setUnavailable(LibFunc_ZnwjSt11align_val_tRKSt9nothrow_t);
495 TLI.setUnavailable(LibFunc_Znwm);
496 TLI.setUnavailable(LibFunc_ZnwmRKSt9nothrow_t);
497 TLI.setUnavailable(LibFunc_ZnwmRKSt9nothrow_t12__hot_cold_t);
498 TLI.setUnavailable(LibFunc_ZnwmSt11align_val_t);
499 TLI.setUnavailable(LibFunc_ZnwmSt11align_val_tRKSt9nothrow_t);
500 TLI.setUnavailable(LibFunc_Znwm12__hot_cold_t);
501 TLI.setUnavailable(LibFunc_ZnwmSt11align_val_t12__hot_cold_t);
502 TLI.setUnavailable(LibFunc_ZnwmSt11align_val_tRKSt9nothrow_t12__hot_cold_t);
503 TLI.setUnavailable(LibFunc_Znam12__hot_cold_t);
504 TLI.setUnavailable(LibFunc_ZnamSt11align_val_t12__hot_cold_t);
505 TLI.setUnavailable(LibFunc_ZnamSt11align_val_tRKSt9nothrow_t12__hot_cold_t);
506 TLI.setUnavailable(LibFunc_size_returning_new);
507 TLI.setUnavailable(LibFunc_size_returning_new_hot_cold);
508 TLI.setUnavailable(LibFunc_size_returning_new_aligned);
509 TLI.setUnavailable(LibFunc_size_returning_new_aligned_hot_cold);
512 TLI.setUnavailable(LibFunc_msvc_new_int);
513 TLI.setUnavailable(LibFunc_msvc_new_int_nothrow);
514 TLI.setUnavailable(LibFunc_msvc_new_longlong);
515 TLI.setUnavailable(LibFunc_msvc_new_longlong_nothrow);
516 TLI.setUnavailable(LibFunc_msvc_delete_ptr32);
517 TLI.setUnavailable(LibFunc_msvc_delete_ptr32_nothrow);
518 TLI.setUnavailable(LibFunc_msvc_delete_ptr32_int);
519 TLI.setUnavailable(LibFunc_msvc_delete_ptr64);
520 TLI.setUnavailable(LibFunc_msvc_delete_ptr64_nothrow);
521 TLI.setUnavailable(LibFunc_msvc_delete_ptr64_longlong);
522 TLI.setUnavailable(LibFunc_msvc_new_array_int);
523 TLI.setUnavailable(LibFunc_msvc_new_array_int_nothrow);
524 TLI.setUnavailable(LibFunc_msvc_new_array_longlong);
525 TLI.setUnavailable(LibFunc_msvc_new_array_longlong_nothrow);
526 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr32);
527 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr32_nothrow);
528 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr32_int);
529 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr64);
530 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr64_nothrow);
531 TLI.setUnavailable(LibFunc_msvc_delete_array_ptr64_longlong);
539 TLI.setUnavailable(LibFunc_exp10l);
540 if (
T.isMacOSXVersionLT(10, 9)) {
541 TLI.setUnavailable(LibFunc_exp10);
542 TLI.setUnavailable(LibFunc_exp10f);
544 TLI.setAvailableWithName(LibFunc_exp10,
"__exp10");
545 TLI.setAvailableWithName(LibFunc_exp10f,
"__exp10f");
552 TLI.setUnavailable(LibFunc_exp10l);
553 if (!
T.isWatchOS() &&
554 (
T.isOSVersionLT(7, 0) || (
T.isOSVersionLT(9, 0) &&
T.isX86()))) {
555 TLI.setUnavailable(LibFunc_exp10);
556 TLI.setUnavailable(LibFunc_exp10f);
558 TLI.setAvailableWithName(LibFunc_exp10,
"__exp10");
559 TLI.setAvailableWithName(LibFunc_exp10f,
"__exp10f");
571 TLI.setUnavailable(LibFunc_exp10);
572 TLI.setUnavailable(LibFunc_exp10f);
573 TLI.setUnavailable(LibFunc_exp10l);
592 TLI.setUnavailable(LibFunc_ffsl);
609 TLI.setUnavailable(LibFunc_ffsll);
616 if (!
T.isOSFreeBSD()) {
617 TLI.setUnavailable(LibFunc_fls);
618 TLI.setUnavailable(LibFunc_flsl);
619 TLI.setUnavailable(LibFunc_flsll);
624 if (!
T.isOSLinux() || !
T.isGNUEnvironment()) {
625 TLI.setUnavailable(LibFunc_dunder_strdup);
626 TLI.setUnavailable(LibFunc_dunder_strtok_r);
627 TLI.setUnavailable(LibFunc_dunder_isoc99_scanf);
628 TLI.setUnavailable(LibFunc_dunder_isoc99_sscanf);
629 TLI.setUnavailable(LibFunc_under_IO_getc);
630 TLI.setUnavailable(LibFunc_under_IO_putc);
632 if (!
T.isAndroid() && !
T.isMusl())
633 TLI.setUnavailable(LibFunc_memalign);
634 TLI.setUnavailable(LibFunc_fopen64);
635 TLI.setUnavailable(LibFunc_fseeko64);
636 TLI.setUnavailable(LibFunc_fstat64);
637 TLI.setUnavailable(LibFunc_fstatvfs64);
638 TLI.setUnavailable(LibFunc_ftello64);
639 TLI.setUnavailable(LibFunc_lstat64);
640 TLI.setUnavailable(LibFunc_open64);
641 TLI.setUnavailable(LibFunc_stat64);
642 TLI.setUnavailable(LibFunc_statvfs64);
643 TLI.setUnavailable(LibFunc_tmpfile64);
649 TLI.setUnavailable(LibFunc_acos_finite);
650 TLI.setUnavailable(LibFunc_acosf_finite);
651 TLI.setUnavailable(LibFunc_acosl_finite);
652 TLI.setUnavailable(LibFunc_acosh_finite);
653 TLI.setUnavailable(LibFunc_acoshf_finite);
654 TLI.setUnavailable(LibFunc_acoshl_finite);
655 TLI.setUnavailable(LibFunc_asin_finite);
656 TLI.setUnavailable(LibFunc_asinf_finite);
657 TLI.setUnavailable(LibFunc_asinl_finite);
658 TLI.setUnavailable(LibFunc_atan2_finite);
659 TLI.setUnavailable(LibFunc_atan2f_finite);
660 TLI.setUnavailable(LibFunc_atan2l_finite);
661 TLI.setUnavailable(LibFunc_atanh_finite);
662 TLI.setUnavailable(LibFunc_atanhf_finite);
663 TLI.setUnavailable(LibFunc_atanhl_finite);
664 TLI.setUnavailable(LibFunc_cosh_finite);
665 TLI.setUnavailable(LibFunc_coshf_finite);
666 TLI.setUnavailable(LibFunc_coshl_finite);
667 TLI.setUnavailable(LibFunc_exp10_finite);
668 TLI.setUnavailable(LibFunc_exp10f_finite);
669 TLI.setUnavailable(LibFunc_exp10l_finite);
670 TLI.setUnavailable(LibFunc_exp2_finite);
671 TLI.setUnavailable(LibFunc_exp2f_finite);
672 TLI.setUnavailable(LibFunc_exp2l_finite);
673 TLI.setUnavailable(LibFunc_exp_finite);
674 TLI.setUnavailable(LibFunc_expf_finite);
675 TLI.setUnavailable(LibFunc_expl_finite);
676 TLI.setUnavailable(LibFunc_log10_finite);
677 TLI.setUnavailable(LibFunc_log10f_finite);
678 TLI.setUnavailable(LibFunc_log10l_finite);
679 TLI.setUnavailable(LibFunc_log2_finite);
680 TLI.setUnavailable(LibFunc_log2f_finite);
681 TLI.setUnavailable(LibFunc_log2l_finite);
682 TLI.setUnavailable(LibFunc_log_finite);
683 TLI.setUnavailable(LibFunc_logf_finite);
684 TLI.setUnavailable(LibFunc_logl_finite);
685 TLI.setUnavailable(LibFunc_pow_finite);
686 TLI.setUnavailable(LibFunc_powf_finite);
687 TLI.setUnavailable(LibFunc_powl_finite);
688 TLI.setUnavailable(LibFunc_sinh_finite);
689 TLI.setUnavailable(LibFunc_sinhf_finite);
690 TLI.setUnavailable(LibFunc_sinhl_finite);
691 TLI.setUnavailable(LibFunc_sqrt_finite);
692 TLI.setUnavailable(LibFunc_sqrtf_finite);
693 TLI.setUnavailable(LibFunc_sqrtl_finite);
696 if ((
T.isOSLinux() &&
T.isGNUEnvironment()) ||
697 (
T.isAndroid() && !
T.isAndroidVersionLT(28))) {
699 TLI.setAvailable(LibFunc_getc_unlocked);
700 TLI.setAvailable(LibFunc_getchar_unlocked);
701 TLI.setAvailable(LibFunc_putc_unlocked);
702 TLI.setAvailable(LibFunc_putchar_unlocked);
703 TLI.setAvailable(LibFunc_fputc_unlocked);
704 TLI.setAvailable(LibFunc_fgetc_unlocked);
705 TLI.setAvailable(LibFunc_fread_unlocked);
706 TLI.setAvailable(LibFunc_fwrite_unlocked);
707 TLI.setAvailable(LibFunc_fputs_unlocked);
708 TLI.setAvailable(LibFunc_fgets_unlocked);
713 TLI.setAvailable(LibFunc_memalign);
717 TLI.setUnavailable(LibFunc_ZdaPvj);
718 TLI.setUnavailable(LibFunc_ZdaPvjSt11align_val_t);
719 TLI.setUnavailable(LibFunc_ZdlPvj);
720 TLI.setUnavailable(LibFunc_ZdlPvjSt11align_val_t);
721 TLI.setUnavailable(LibFunc_Znaj);
722 TLI.setUnavailable(LibFunc_ZnajRKSt9nothrow_t);
723 TLI.setUnavailable(LibFunc_ZnajSt11align_val_t);
724 TLI.setUnavailable(LibFunc_ZnajSt11align_val_tRKSt9nothrow_t);
725 TLI.setUnavailable(LibFunc_Znwj);
726 TLI.setUnavailable(LibFunc_ZnwjRKSt9nothrow_t);
727 TLI.setUnavailable(LibFunc_ZnwjSt11align_val_t);
728 TLI.setUnavailable(LibFunc_ZnwjSt11align_val_tRKSt9nothrow_t);
731 TLI.setUnavailable(LibFunc_memccpy_chk);
732 TLI.setUnavailable(LibFunc_memcpy_chk);
733 TLI.setUnavailable(LibFunc_memmove_chk);
734 TLI.setUnavailable(LibFunc_mempcpy_chk);
735 TLI.setUnavailable(LibFunc_memset_chk);
736 TLI.setUnavailable(LibFunc_snprintf_chk);
737 TLI.setUnavailable(LibFunc_sprintf_chk);
738 TLI.setUnavailable(LibFunc_stpcpy_chk);
739 TLI.setUnavailable(LibFunc_stpncpy_chk);
740 TLI.setUnavailable(LibFunc_strcat_chk);
741 TLI.setUnavailable(LibFunc_strcpy_chk);
742 TLI.setUnavailable(LibFunc_strlcat_chk);
743 TLI.setUnavailable(LibFunc_strlcpy_chk);
744 TLI.setUnavailable(LibFunc_strlen_chk);
745 TLI.setUnavailable(LibFunc_strncat_chk);
746 TLI.setUnavailable(LibFunc_strncpy_chk);
747 TLI.setUnavailable(LibFunc_vsnprintf_chk);
748 TLI.setUnavailable(LibFunc_vsprintf_chk);
751 TLI.setUnavailable(LibFunc_access);
752 TLI.setUnavailable(LibFunc_chmod);
753 TLI.setUnavailable(LibFunc_chown);
754 TLI.setUnavailable(LibFunc_closedir);
755 TLI.setUnavailable(LibFunc_ctermid);
756 TLI.setUnavailable(LibFunc_execl);
757 TLI.setUnavailable(LibFunc_execle);
758 TLI.setUnavailable(LibFunc_execlp);
759 TLI.setUnavailable(LibFunc_execv);
760 TLI.setUnavailable(LibFunc_execvP);
761 TLI.setUnavailable(LibFunc_execve);
762 TLI.setUnavailable(LibFunc_execvp);
763 TLI.setUnavailable(LibFunc_execvpe);
764 TLI.setUnavailable(LibFunc_fork);
765 TLI.setUnavailable(LibFunc_fstat);
766 TLI.setUnavailable(LibFunc_fstatvfs);
767 TLI.setUnavailable(LibFunc_getenv);
768 TLI.setUnavailable(LibFunc_getitimer);
769 TLI.setUnavailable(LibFunc_getlogin_r);
770 TLI.setUnavailable(LibFunc_getpwnam);
771 TLI.setUnavailable(LibFunc_gettimeofday);
772 TLI.setUnavailable(LibFunc_lchown);
773 TLI.setUnavailable(LibFunc_lstat);
774 TLI.setUnavailable(LibFunc_mkdir);
775 TLI.setUnavailable(LibFunc_open);
776 TLI.setUnavailable(LibFunc_opendir);
777 TLI.setUnavailable(LibFunc_pclose);
778 TLI.setUnavailable(LibFunc_popen);
779 TLI.setUnavailable(LibFunc_pread);
780 TLI.setUnavailable(LibFunc_pvalloc);
781 TLI.setUnavailable(LibFunc_pwrite);
782 TLI.setUnavailable(LibFunc_read);
783 TLI.setUnavailable(LibFunc_readlink);
784 TLI.setUnavailable(LibFunc_realpath);
785 TLI.setUnavailable(LibFunc_rename);
786 TLI.setUnavailable(LibFunc_rmdir);
787 TLI.setUnavailable(LibFunc_setitimer);
788 TLI.setUnavailable(LibFunc_stat);
789 TLI.setUnavailable(LibFunc_statvfs);
790 TLI.setUnavailable(LibFunc_system);
791 TLI.setUnavailable(LibFunc_times);
792 TLI.setUnavailable(LibFunc_tmpfile);
793 TLI.setUnavailable(LibFunc_unlink);
794 TLI.setUnavailable(LibFunc_uname);
795 TLI.setUnavailable(LibFunc_unsetenv);
796 TLI.setUnavailable(LibFunc_utime);
797 TLI.setUnavailable(LibFunc_utimes);
798 TLI.setUnavailable(LibFunc_valloc);
799 TLI.setUnavailable(LibFunc_write);
802 TLI.setUnavailable(LibFunc_atomic_load);
803 TLI.setUnavailable(LibFunc_atomic_store);
804 TLI.setUnavailable(LibFunc_dunder_strndup);
805 TLI.setUnavailable(LibFunc_bcmp);
806 TLI.setUnavailable(LibFunc_bcopy);
807 TLI.setUnavailable(LibFunc_bzero);
808 TLI.setUnavailable(LibFunc_cabs);
809 TLI.setUnavailable(LibFunc_cabsf);
810 TLI.setUnavailable(LibFunc_cabsl);
811 TLI.setUnavailable(LibFunc_ffs);
812 TLI.setUnavailable(LibFunc_flockfile);
813 TLI.setUnavailable(LibFunc_fseeko);
814 TLI.setUnavailable(LibFunc_ftello);
815 TLI.setUnavailable(LibFunc_ftrylockfile);
816 TLI.setUnavailable(LibFunc_funlockfile);
817 TLI.setUnavailable(LibFunc_htonl);
818 TLI.setUnavailable(LibFunc_htons);
819 TLI.setUnavailable(LibFunc_isascii);
820 TLI.setUnavailable(LibFunc_memccpy);
821 TLI.setUnavailable(LibFunc_mempcpy);
822 TLI.setUnavailable(LibFunc_memrchr);
823 TLI.setUnavailable(LibFunc_ntohl);
824 TLI.setUnavailable(LibFunc_ntohs);
825 TLI.setUnavailable(LibFunc_reallocarray);
826 TLI.setUnavailable(LibFunc_reallocf);
827 TLI.setUnavailable(LibFunc_roundeven);
828 TLI.setUnavailable(LibFunc_roundevenf);
829 TLI.setUnavailable(LibFunc_roundevenl);
830 TLI.setUnavailable(LibFunc_stpcpy);
831 TLI.setUnavailable(LibFunc_stpncpy);
832 TLI.setUnavailable(LibFunc_strlcat);
833 TLI.setUnavailable(LibFunc_strlcpy);
834 TLI.setUnavailable(LibFunc_strndup);
835 TLI.setUnavailable(LibFunc_strnlen);
836 TLI.setUnavailable(LibFunc_toascii);
839 if (
T.isOSFreeBSD()) {
840 TLI.setAvailable(LibFunc_dunder_strtok_r);
841 TLI.setAvailable(LibFunc_memalign);
842 TLI.setAvailable(LibFunc_fputc_unlocked);
843 TLI.setAvailable(LibFunc_fputs_unlocked);
844 TLI.setAvailable(LibFunc_fread_unlocked);
845 TLI.setAvailable(LibFunc_fwrite_unlocked);
846 TLI.setAvailable(LibFunc_getc_unlocked);
847 TLI.setAvailable(LibFunc_getchar_unlocked);
848 TLI.setAvailable(LibFunc_putc_unlocked);
849 TLI.setAvailable(LibFunc_putchar_unlocked);
851 TLI.setUnavailable(LibFunc_dunder_strndup);
852 TLI.setUnavailable(LibFunc_memccpy_chk);
853 TLI.setUnavailable(LibFunc_strlen_chk);
854 TLI.setUnavailable(LibFunc_fmaximum_num);
855 TLI.setUnavailable(LibFunc_fmaximum_numf);
856 TLI.setUnavailable(LibFunc_fmaximum_numl);
857 TLI.setUnavailable(LibFunc_fminimum_num);
858 TLI.setUnavailable(LibFunc_fminimum_numf);
859 TLI.setUnavailable(LibFunc_fminimum_numl);
860 TLI.setUnavailable(LibFunc_roundeven);
861 TLI.setUnavailable(LibFunc_roundevenf);
862 TLI.setUnavailable(LibFunc_roundevenl);
877 TLI.disableAllFunctions();
878 TLI.setAvailable(LibFunc_nvvm_reflect);
879 TLI.setAvailable(llvm::LibFunc_malloc);
880 TLI.setAvailable(llvm::LibFunc_free);
891 TLI.setUnavailable(LibFunc_nvvm_reflect);
896 TLI.setUnavailable(LibFunc_vec_calloc);
897 TLI.setUnavailable(LibFunc_vec_malloc);
898 TLI.setUnavailable(LibFunc_vec_realloc);
899 TLI.setUnavailable(LibFunc_vec_free);
903 TLI.setUnavailable(LibFunc_memrchr);
905 TLI.addVectorizableFunctionsFromVecLib(VecLib,
T);