| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] Move mbtowc, mbstowcs and inverse functions to stdlib.h (#168455) These functions should be declared in stdlib.h, not wchar.h, as confusing as it is. Move them to the proper header file and matching directories in src/ and test/ trees. This was discovered while testing libc++ build against llvm-libc, which re-declares functions like mbtowc in std-namespace in <cstdlib> header, and then uses those functions in its locale implementation. | 8 个月前 | |
[libc] Clean up skipped and failing cmake (#115400) I normally run my cmake with LIBC_CMAKE_VERBOSE_LOGGING set to ON so I can debug build issues more easily. One of the effects of this is I see which tests/entrypoints are skipped on my machine. This patch fixes up the tests and entrypoints that were skipped, but easily fixed. These were: libc.src.pthread.pthread_spin_destroy libc.src.pthread.pthread_spin_init libc.src.pthread.pthread_spin_lock libc.src.pthread.pthread_spin_trylock libc.src.pthread.pthread_spin_unlock (entrypoints were just missing) libc.src.wchar.btowc (I forgot to finish it) libc.test.src.sys.statvfs.linux.statvfs_test libc.test.src.sys.statvfs.linux.fstatvfs_test (Incorrect includes for rmdir, needed some cleanup) libc.test.integration.src.unistd.execve_test (wrong dep for errno) libc.test.src.math.smoke.fmaf_test (add_fp_unittest doesn't support flags) libc.test.src.stdio.scanf_core.converter_test (needed to be moved away from string_reader, further cleanup needed) | 1 年前 | |
[libc][wchar] Move wchar's types to proxy headers. (#109334) Also protect against extern inline function definitions added when building with gcc: https://github.com/llvm/llvm-project/issues/60481. | 1 年前 | |
[libc] Implemented mblen functions (#150141) Implemented mblen and mbrlen as well as tests --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented mblen functions (#150141) Implemented mblen and mbrlen as well as tests --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented mblen functions (#150141) Implemented mblen and mbrlen as well as tests --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented mblen functions (#150141) Implemented mblen and mbrlen as well as tests --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Error fixes for mbrtowc and wcrtomb (#145785) Invalid mbstate_t should set errno to EINVAL. Changed Error return for the internal functions and added tests for the public functions. Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] mbrtowc implementation (#144760) implemented the internal and public mbrtowc as well as tests for the public function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implement mbsinit (#150654) Implemented public libc function to check if an mbstate describes an empty state | 1 年前 | |
[libc] Implement mbsinit (#150654) Implemented public libc function to check if an mbstate describes an empty state | 1 年前 | |
[libc] Reland wchar string conversion mb to wc (#151048) Added crash on nullptr to mbstowcs --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 11 个月前 | |
[libc] Reland wchar string conversion mb to wc (#151048) Added crash on nullptr to mbstowcs --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 11 个月前 | |
[libc] Reland wchar string conversion mb to wc (#151048) Added crash on nullptr to mbstowcs --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 11 个月前 | |
[libc] Reland wchar string conversion mb to wc (#151048) Added crash on nullptr to mbstowcs --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 11 个月前 | |
[libc] Stop duplicating wcschr(). (#150661) Three implementations of wcschr() is two too many. | 11 个月前 | |
[libc] Change __builtin_memcpy to inline_memcpy. (#158345) | 10 个月前 | |
[libc] wcpcpy implementation (#144802) Implemented wcpcpy and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
| 1 年前 | ||
[libc][obvious] Fixed typos in some wchar headers (#146413) Some of the wchar headers had typos in them. Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Error fixes for mbrtowc and wcrtomb (#145785) Invalid mbstate_t should set errno to EINVAL. Changed Error return for the internal functions and added tests for the public functions. Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented wcrtomb internal function and public libc function (#144596) Implemented internal wcrtomb function using the CharacterConverter class public libc function calls this internal function to perform the conversion | 1 年前 | |
[libc] wcscat implementation (#142243) Implemented wcscat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcscat implementation (#142243) Implemented wcscat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Stop duplicating wcschr(). (#150661) Three implementations of wcschr() is two too many. | 11 个月前 | |
WCSChr Implementation (#141690) implemented wcschr and tests --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Simplify wcscmp (#143457) The implementation of wcscmp mimicked strcmp, but was more complicated than necessary. This patch makes it simpler. | 1 年前 | |
[libc] Implemented wcscmp (#142423) Implemented wcscmp and added tests | 1 年前 | |
[libc] Change __builtin_memcpy to inline_memcpy. (#158345) | 10 个月前 | |
[libc] wcscpy implementation (#142228) Implemented wcscpy as well as tests for the function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Cleaned up wcsspn and wcscspn (#147408) created internal wcsspn to avoid duplicated code --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcscspn implementation (#146158) Implemented wcscspn and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented wcsdup libc function (#150453) Implemented wcsdup by templating internal strdup function | 1 年前 | |
[libc] Implemented wcsdup libc function (#150453) Implemented wcsdup by templating internal strdup function | 1 年前 | |
[libc] wcslcat implementation (#146588) implemented wcslcat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcslcat implementation (#146588) implemented wcslcat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcslcpy implementation (#146571) Implemented wcslcpy and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcslcpy implementation (#146571) Implemented wcslcpy and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc][wchar] implement wcslen (#124150) Update string_utils' string_length to work with char* or wchar_t*, so that it may be reusable when implementing wmemchr, wcspbrk, wcsrchr, wcsstr. Link: #121183 Link: #124027 Co-authored-by: Nick Desaulniers <ndesaulniers@google.com> --------- Co-authored-by: Tristan Ross <tristan.ross@midstall.com> | 1 年前 | |
[libc][wchar] implement wcslen (#124150) Update string_utils' string_length to work with char* or wchar_t*, so that it may be reusable when implementing wmemchr, wcspbrk, wcsrchr, wcsstr. Link: #121183 Link: #124027 Co-authored-by: Nick Desaulniers <ndesaulniers@google.com> --------- Co-authored-by: Tristan Ross <tristan.ross@midstall.com> | 1 年前 | |
[libc] wcsncat implementation (#142431) Implemented wcsncat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] wcsncat implementation (#142431) Implemented wcsncat and tests. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Refactor libc code to improve readability. (#153308) The PR is going to improve the readability for the files under llvm-project/libc/src/wchar directory. --------- Co-authored-by: Jin Huang <jingold@google.com> | 11 个月前 | |
[libc] Implemented wcsncmp (#142429) Implemented wcsncmp and added tests | 1 年前 | |
[libc] Switched calls to inline_memcpy to __builtin_memcpy for wide char utilities (#143011) Switched calls to inline_memcpy to __builtin_memcpy for wide char utilities Removed unnecessary wctype_utils dependencies from the cmake file | 1 年前 | |
[libc] wcsncpy implementation (#142237) Implemented wcsncpy and tests for the function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented wcsnlen (#145610) Implemented wcsnlen and tests for the function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented wcsnlen (#145610) Implemented wcsnlen and tests for the function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Fix a couple issues in <wchar.h> header (#164666) * Add FILE type declaration, as it should be presented in <wchar.h>, as well as in <stdio.h> * Fix argument type in wcsrtombs / wcsnrtombs function - it should be restrict pointer to mbstate_t. Add restrict qualifier to internal implementation as well. This brings us closer to being able to build libcxx with wide-character support against llvm-libc headers. | 9 个月前 | |
[libc] Fix a couple issues in <wchar.h> header (#164666) * Add FILE type declaration, as it should be presented in <wchar.h>, as well as in <stdio.h> * Fix argument type in wcsrtombs / wcsnrtombs function - it should be restrict pointer to mbstate_t. Add restrict qualifier to internal implementation as well. This brings us closer to being able to build libcxx with wide-character support against llvm-libc headers. | 9 个月前 | |
[libc] Correct include path for wchar_utils.h in libc/src/wchar/wcspbrk.cpp (#151059) A previous change incorrectly included wchar_util.h using a broken relative path. This change corrects the path to #include "src/wchar/wchar_utils.h". | 11 个月前 | |
[libc] Implemented wcspbrk (#142040) Implemented wcspbrk and added tests | 1 年前 | |
| 1 年前 | ||
| 1 年前 | ||
[libc] Fix a couple issues in <wchar.h> header (#164666) * Add FILE type declaration, as it should be presented in <wchar.h>, as well as in <stdio.h> * Fix argument type in wcsrtombs / wcsnrtombs function - it should be restrict pointer to mbstate_t. Add restrict qualifier to internal implementation as well. This brings us closer to being able to build libcxx with wide-character support against llvm-libc headers. | 9 个月前 | |
[libc] Fix a couple issues in <wchar.h> header (#164666) * Add FILE type declaration, as it should be presented in <wchar.h>, as well as in <stdio.h> * Fix argument type in wcsrtombs / wcsnrtombs function - it should be restrict pointer to mbstate_t. Add restrict qualifier to internal implementation as well. This brings us closer to being able to build libcxx with wide-character support against llvm-libc headers. | 9 个月前 | |
[libc] Cleaned up wcsspn and wcscspn (#147408) created internal wcsspn to avoid duplicated code --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc][obvious] Fixed typos in some wchar headers (#146413) Some of the wchar headers had typos in them. Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
| 1 年前 | ||
| 1 年前 | ||
[libc] Implement wcstod and wcstold. (#168020) These are simply implemented as specializations of strtofloatingpoint for double / long double and for wchar_t. The unit tests are copied from the strtod / strtold ones. | 8 个月前 | |
[libc] Implement wcstod and wcstold. (#168020) These are simply implemented as specializations of strtofloatingpoint for double / long double and for wchar_t. The unit tests are copied from the strtod / strtold ones. | 8 个月前 | |
[libc] Templatize strtofloatingpoint and implement wcstof. (#167755) This change follows the pattern of 315dfe5865962d8a3d60e21d1fffce5214fe54ef by making strtofloat also accept wchar_t* strings (in addition to regular char*). It uses overloads from wctype_utils or specialized functions to ensure comparison with literal characters (or literal strings) pick char or wchar_t variants based on the argument type. The wcstof implementation is added, with unit test cases copied from strtof test suite. | 8 个月前 | |
[libc] Templatize strtofloatingpoint and implement wcstof. (#167755) This change follows the pattern of 315dfe5865962d8a3d60e21d1fffce5214fe54ef by making strtofloat also accept wchar_t* strings (in addition to regular char*). It uses overloads from wctype_utils or specialized functions to ensure comparison with literal characters (or literal strings) pick char or wchar_t variants based on the argument type. The wcstof implementation is added, with unit test cases copied from strtof test suite. | 8 个月前 | |
[libc] Fix wcstok() "subsequent searches" behavior. (#151589) POSIX says "If no such wide-character code is found, the current token extends to the end of the wide-character string pointed to by ws1, and subsequent searches for a token shall return a null pointer", but the current implementation only returns nullptr the first time. This failed an existing bionic test when I tried to switch over to llvm-libc wcstok(). | 11 个月前 | |
[libc] wcstok implementation (#145989) Implemented wcstok and added tests | 1 年前 | |
[libc] Templatize strtointeger implementation. (#165884) * Removes the copy-pasta implementation of wcstointeger, and migrate the wcsto* family of functions to use a template version of strtointeger. * Fixes the out-of-bound read in the original implementation(s) when the entire input string consists of whitespaces (then the sign check can access OOB memory) The code is currently slightly peppered with "if constexpr" statements to distinguish between char and wchar_t. We can probably simplify it in subsequent changes by: * using overrides, so that internal::isalnum() is overriden for both char and wchar_t (since C++ luckily allows us to reuse names). * this wouldn't help for direct comparison with literals - for this as a somewhat ugly workaround like is_char_literal(c, '0', L'0') | 8 个月前 | |
[libc] Implement widechar to integer public functions (#148683) Implement public wchar -> integer public functions using templated internal wcs_to_integer function | 1 年前 | |
[libc] Implement wcstod and wcstold. (#168020) These are simply implemented as specializations of strtofloatingpoint for double / long double and for wchar_t. The unit tests are copied from the strtod / strtold ones. | 8 个月前 | |
[libc] Implement wcstod and wcstold. (#168020) These are simply implemented as specializations of strtofloatingpoint for double / long double and for wchar_t. The unit tests are copied from the strtod / strtold ones. | 8 个月前 | |
[libc] Templatize strtointeger implementation. (#165884) * Removes the copy-pasta implementation of wcstointeger, and migrate the wcsto* family of functions to use a template version of strtointeger. * Fixes the out-of-bound read in the original implementation(s) when the entire input string consists of whitespaces (then the sign check can access OOB memory) The code is currently slightly peppered with "if constexpr" statements to distinguish between char and wchar_t. We can probably simplify it in subsequent changes by: * using overrides, so that internal::isalnum() is overriden for both char and wchar_t (since C++ luckily allows us to reuse names). * this wouldn't help for direct comparison with literals - for this as a somewhat ugly workaround like is_char_literal(c, '0', L'0') | 8 个月前 | |
[libc] Implement widechar to integer public functions (#148683) Implement public wchar -> integer public functions using templated internal wcs_to_integer function | 1 年前 | |
[libc] Templatize strtointeger implementation. (#165884) * Removes the copy-pasta implementation of wcstointeger, and migrate the wcsto* family of functions to use a template version of strtointeger. * Fixes the out-of-bound read in the original implementation(s) when the entire input string consists of whitespaces (then the sign check can access OOB memory) The code is currently slightly peppered with "if constexpr" statements to distinguish between char and wchar_t. We can probably simplify it in subsequent changes by: * using overrides, so that internal::isalnum() is overriden for both char and wchar_t (since C++ luckily allows us to reuse names). * this wouldn't help for direct comparison with literals - for this as a somewhat ugly workaround like is_char_literal(c, '0', L'0') | 8 个月前 | |
[libc] Implement widechar to integer public functions (#148683) Implement public wchar -> integer public functions using templated internal wcs_to_integer function | 1 年前 | |
[libc] Templatize strtointeger implementation. (#165884) * Removes the copy-pasta implementation of wcstointeger, and migrate the wcsto* family of functions to use a template version of strtointeger. * Fixes the out-of-bound read in the original implementation(s) when the entire input string consists of whitespaces (then the sign check can access OOB memory) The code is currently slightly peppered with "if constexpr" statements to distinguish between char and wchar_t. We can probably simplify it in subsequent changes by: * using overrides, so that internal::isalnum() is overriden for both char and wchar_t (since C++ luckily allows us to reuse names). * this wouldn't help for direct comparison with literals - for this as a somewhat ugly workaround like is_char_literal(c, '0', L'0') | 8 个月前 | |
[libc] Implement widechar to integer public functions (#148683) Implement public wchar -> integer public functions using templated internal wcs_to_integer function | 1 年前 | |
[libc][wchar] Move wchar's types to proxy headers. (#109334) Also protect against extern inline function definitions added when building with gcc: https://github.com/llvm/llvm-project/issues/60481. | 1 年前 | |
[libc][wchar] Move wchar's types to proxy headers. (#109334) Also protect against extern inline function definitions added when building with gcc: https://github.com/llvm/llvm-project/issues/60481. | 1 年前 | |
| 1 年前 | ||
| 1 年前 | ||
[libc] wmemcmp nullptr handling (#142058) Added nullptr handling for wmemcmp --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
| 1 年前 | ||
[libc] Change __builtin_memcpy to inline_memcpy. (#158345) | 10 个月前 | |
[libc] wmemcpy implementation (#142070) Implemented wmemcpy and tests for the function. --------- Co-authored-by: Sriya Pratipati <sriyap@google.com> | 1 年前 | |
[libc] Implemented wmemmove (#142245) Implemented wmemmove and added tests | 1 年前 | |
[libc] Implemented wmemmove (#142245) Implemented wmemmove and added tests | 1 年前 | |
[libc] Change __builtin_memcpy to inline_memcpy. (#158345) | 10 个月前 | |
[libc] Implemented wmempcpy (#142067) Implemented wmempcpy and added tests | 1 年前 | |
[libc] Implemented wmemset and added tests (#141691) Implemented and tests the wmemset function in libc. | 1 年前 | |
[libc] Implemented wmemset and added tests (#141691) Implemented and tests the wmemset function in libc. | 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 |