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