@@ -875,6 +875,34 @@ static void initializeLibCalls(TargetLibraryInfoImpl &TLI, const Triple &T,
875875 TLI.setUnavailable (LibFunc_toascii);
876876 }
877877
878+ if (T.isOSFreeBSD ()) {
879+ TLI.setAvailable (LibFunc_dunder_strtok_r);
880+ TLI.setAvailable (LibFunc_memalign);
881+ TLI.setAvailable (LibFunc_fputc_unlocked);
882+ TLI.setAvailable (LibFunc_fputs_unlocked);
883+ TLI.setAvailable (LibFunc_fread_unlocked);
884+ TLI.setAvailable (LibFunc_fwrite_unlocked);
885+ TLI.setAvailable (LibFunc_getc_unlocked);
886+ TLI.setAvailable (LibFunc_getchar_unlocked);
887+ TLI.setAvailable (LibFunc_putc_unlocked);
888+ TLI.setAvailable (LibFunc_putchar_unlocked);
889+
890+ TLI.setUnavailable (LibFunc___kmpc_alloc_shared);
891+ TLI.setUnavailable (LibFunc___kmpc_free_shared);
892+ TLI.setUnavailable (LibFunc_dunder_strndup);
893+ TLI.setUnavailable (LibFunc_memccpy_chk);
894+ TLI.setUnavailable (LibFunc_strlen_chk);
895+ TLI.setUnavailable (LibFunc_fmaximum_num);
896+ TLI.setUnavailable (LibFunc_fmaximum_numf);
897+ TLI.setUnavailable (LibFunc_fmaximum_numl);
898+ TLI.setUnavailable (LibFunc_fminimum_num);
899+ TLI.setUnavailable (LibFunc_fminimum_numf);
900+ TLI.setUnavailable (LibFunc_fminimum_numl);
901+ TLI.setUnavailable (LibFunc_roundeven);
902+ TLI.setUnavailable (LibFunc_roundevenf);
903+ TLI.setUnavailable (LibFunc_roundevenl);
904+ }
905+
878906 // As currently implemented in clang, NVPTX code has no standard library to
879907 // speak of. Headers provide a standard-ish library implementation, but many
880908 // of the signatures are wrong -- for example, many libm functions are not
0 commit comments