| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] implement inet_addr (#167708) This patch adds the posix function inet_addr. Since most of the parsing logic is delegated to inet_aton, I have only included some basic smoke tests for testing purposes. | 8 个月前 | |
[libc] implement inet_addr (#167708) This patch adds the posix function inet_addr. Since most of the parsing logic is delegated to inet_aton, I have only included some basic smoke tests for testing purposes. | 8 个月前 | |
Add <stdbool.h> to llvm-libc-types headers that need it. (#165798) We need <stdbool.h> to support having "bool" members inside pthread structs that may get included through <pthread.h> from C code prior to C23. | 8 个月前 | |
[libc] add IPPROTO related macros (#161855) | 9 个月前 | |
[libc] Implement pkey_alloc/free/get/set/mprotect for x86_64 linux (#162362) This patch provides definitions for pkey_* functions for linux x86_64. pkey_alloc, pkey_free, and pkey_mprotect are simple syscall wrappers. pkey_set and pkey_get modify architecture-specific registers. The logic for these live in architecture specific directories: * libc/src/sys/mman/linux/x86_64/pkey_common.h has a real implementation * libc/src/sys/mman/linux/generic/pkey_common.h contains stubs that just return ENOSYS. | 8 个月前 | |
[libc] Add missing dependencies for arpa/inet.h header. (#168951) Add dependency on headers with in_addr and in_addr_t type definitions to ensure that these headers will be properly installed by "install-libc" CMake target. | 8 个月前 | |
[libc][uefi] add crt1 (#132150) Adds crt1.o for the UEFI platform in the LLVM C library. This makes things start to become useful. | 1 年前 | |
[libc] Remove unused _Thread_local define from headers. (#156967) It was added in dd33f9cdef9f6209aa34713e1417f4a2e24e5ca6 to describe thread-local errno, but is no longer used in the codebase (with the exception of a single integration test, but the llvm-libc-provided #define _Thread_local thread_local is not needed there anyway, since _Thread_local is a keyword from C11 onwards. | 10 个月前 | |
[libc] Update assert for C23 (#137402) Previously the assert macro took one argument named "e", but this led to possible errors if the caller had commas in their input. C23 changed the definition of assert to use __VA_ARGS__ to ensure comma cases are handled properly. This patch doesn't introduce the enforcement function mentioned in the standard update, though that may be done in a followup. Fixes #136184 | 1 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc][complex] Set up headers and add documentation for complex.h. (#111659) Refer: 7.3.1 from [ISO SPEC](https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf) I have added complex variants of F16 and F128 in libc doc but have omitted support for them since we will have to first investigate how their support matrix for clang and gcc looks like, and then add header guards for them accordingly. Planning to add them in follow up PRs once this gets landed. | 1 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] Make template_header optional for hdrgen (#127259) This allows a YAML file to omit template_header and have no .h.def file. A default template is generated based purely on the information in the YAML file. This should handle most of the cases. For now, it's exercised (aside from the hdrgen tests) only for one of the simplest cases: <ctype.h>. This includes making the parser notice the "standards" YAML field at the top (header) level, not just in "functions" lists. The standards listed for the header overall and for the individual functions both feed into how a fully-generated header describes itself in comments. To go with this, files using the default generated template must stick to a new uniform set of spellings for the "standards" lists. As more custom template files are retired, the corresponding YAML files will need all their standards lists normalized. For now, ctype.yaml is updated with correct attribution for the POSIX _l extensions. | 1 年前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] Fix typo and amend restrict qualifier (#152410) This removes an extraneous ',' in the generated dlfcn header. This also adds __restrict to dladdr's declaration per POSIX. Another fix is made: the C standard restrict keyword is removed from dlinfo.cpp/dlinfo.h (but note that dlfcn.yaml still annotates __restrict for dlinfo's decl). | 11 个月前 | |
[libc] Reapply ELF/LINK header changes (#102765) This is based on @izaakschroeder previous patch but I only select macro definitions for now. We need these definitions for VDSO work, which has been delayed for a very long time. Co-authored-by: Izaak Schroeder <izaak.schroeder@gmail.com> | 1 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] Add the <endian.h> header. (#125168) Closes [#124631](https://github.com/llvm/llvm-project/issues/124631). ref: https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/endian.h.html This patch adds the implementation of endian.h, which includes the header itself and three related macros. These macros in the header rely on the compiler preprocessor, similar to how https://github.com/llvm/llvm-project/blob/main/libc/src/__support/endian_internal.h does. Hopefully this will meet the requirements for compiling llvm with llvm-libc. | 1 年前 | |
[libc] Add the <endian.h> header. (#125168) Closes [#124631](https://github.com/llvm/llvm-project/issues/124631). ref: https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/endian.h.html This patch adds the implementation of endian.h, which includes the header itself and three related macros. These macros in the header rely on the compiler preprocessor, similar to how https://github.com/llvm/llvm-project/blob/main/libc/src/__support/endian_internal.h does. Hopefully this will meet the requirements for compiling llvm with llvm-libc. | 1 年前 | |
[libc] Support configurable errno modes (#98287) Rather than selecting the errno implementation based on the platform which doesn't provide the necessary flexibility, make it configurable. The errno value location is returned by int *__llvm_libc_errno() which is a common design used by other C libraries. | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] Canonicalize generated fenv.h (#127363) This removes the custom template for fenv.h by declaring all the standard-specified macros using macro_header. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] Define (stub) dl_iterate_phdr (#131436) This fleshes out the <link.h> a little more, including the struct dl_phdr_info type and declaring the dl_iterate_phdr function. There is only a no-op implementation without tests, as for the existing dlfcn functions. | 1 年前 | |
| 1 年前 | ||
[libc][hdrgen] Sort identifiers with leading underscores specially (#165745) This makes the sorting behavior more uniform: functions and macros are always sorted (separately), not only when merging. This changes the sort order used for functions and other things sorted by their symbol names. Symbols are sorted alphabetically without regard to leading underscores, and then for identifiers that differ only in the number of leading underscores, the fewer underscores the earlier in the sort order. For the functions declared in a generated header, adjacent names with and without underscores will be grouped together without blank lines. This is implemented by factoring the name field, equality, and sorting support out of the various entity classes into a new common superclass (hdrgen.Symbol). This uncovered YAML's requirement to quote the string "NULL" to avoid pyyaml parsing it as None (equivalent to Javascript null) rather than a string. | 8 个月前 | |
[libc] Fill out generated malloc.h and related stdlib.h extensions (#127293) This updates the generated stdlib.h and malloc.h headers to include the subsets of extenion functions declared by glibc that are also supported by Scudo and that use only simple types. Scudo's extensions not declared by glibc are omitted. glibc's extensions not implemented by Scudo are omitted. The mallinfo and mallinfo2 functions are omitted (at least for now) since they need struct definitions for their return types. | 1 年前 | |
| 1 年前 | ||
[libc][math][c23] Add rsqrtf() function (#159615) Closes #159614 **Changes:** - Initial implementation of rsqrt for single precision float **Some small unrelated style changes to this PR (that I missed in my rsqrtf16 PR):** - Added extra - to the top comments to make it look nicer in libc/shared/math/rsqrtf16.h - Put rsqrtf16 inside of libc/src/__support/math/CMakeLists.txt in sorted order - Rearanged libc_math_function rsqrtf16 in Bazel to match alphabetical order | 9 个月前 | |
[libc] Add macros definitions for <nl_types.h> (#164474) This PR adds required macro definitions to <nl_types.h> header, so that they're available to the code including it. The header itself was added in 12abe8aed6dc724546cf93c94d7ff6abe864f28b, together with stub definitions of the three required functions. | 9 个月前 | |
| 1 年前 | ||
| 1 年前 | ||
[libc] move pthread macros to dedicated header (#119286) so that docgen can find our definitions. Also eliminate the enums. POSIX is careful to call these "symbolic constants" rather than specifically whether they are preprocessor macro defines or not. Enums are useful to expressing mutual exclusion when the enum values are in distinct enums which can improve type safety. Our enum values weren't using that pattern though; they were all in one big anonymous enum. Link: https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/pthread.h.html Fixes: #88997 | 1 年前 | |
| 11 个月前 | ||
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Correct standard for getcpu (#153982) | 11 个月前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc][signal] clean up usage of sighandler_t (#125745) man 3 signal's declaration has a face _only a mother could love_. sighandler_t and __sighandler_t are not defined in the C standard, or POSIX. They are helpful typedefs provided by glibc and the Linux kernel UAPI headers respectively since working with function pointers' syntax can be painful. But we should not rely on them; in C++ we have auto* and using statements. Remove the proxy header, and only include a typedef for sighandler_t when targeting Linux, for compatibility with glibc. Fixes: #125598 | 1 年前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Add missing stdc_first_trailing_zero_ to stdbit.yaml (#128101) These declarations were missing in the generated header. Make sure to add them, otherwise <stdbit.h> inclusion fails, since the subsequently included "stdbit-macros.h" expects these declarations to be present. Co-authored-by: Alexey Samsonov <samsonov@google.com> | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] add missing headers in stdfix (#162078) Fixes https://github.com/llvm/llvm-project/issues/129361 @michaelrj-google @PiJoules --------- Signed-off-by: Shreeyash Pandey <shreeyash335@gmail.com> Co-authored-by: Michael Jones <michaelrj@google.com> | 9 个月前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc][hdrgen] Sort identifiers with leading underscores specially (#165745) This makes the sorting behavior more uniform: functions and macros are always sorted (separately), not only when merging. This changes the sort order used for functions and other things sorted by their symbol names. Symbols are sorted alphabetically without regard to leading underscores, and then for identifiers that differ only in the number of leading underscores, the fewer underscores the earlier in the sort order. For the functions declared in a generated header, adjacent names with and without underscores will be grouped together without blank lines. This is implemented by factoring the name field, equality, and sorting support out of the various entity classes into a new common superclass (hdrgen.Symbol). This uncovered YAML's requirement to quote the string "NULL" to avoid pyyaml parsing it as None (equivalent to Javascript null) rather than a string. | 8 个月前 | |
[libc] Fill out generated malloc.h and related stdlib.h extensions (#127293) This updates the generated stdlib.h and malloc.h headers to include the subsets of extenion functions declared by glibc that are also supported by Scudo and that use only simple types. Scudo's extensions not declared by glibc are omitted. glibc's extensions not implemented by Scudo are omitted. The mallinfo and mallinfo2 functions are omitted (at least for now) since they need struct definitions for their return types. | 1 年前 | |
| 1 年前 | ||
[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][hdrgen] Sort identifiers with leading underscores specially (#165745) This makes the sorting behavior more uniform: functions and macros are always sorted (separately), not only when merging. This changes the sort order used for functions and other things sorted by their symbol names. Symbols are sorted alphabetically without regard to leading underscores, and then for identifiers that differ only in the number of leading underscores, the fewer underscores the earlier in the sort order. For the functions declared in a generated header, adjacent names with and without underscores will be grouped together without blank lines. This is implemented by factoring the name field, equality, and sorting support out of the various entity classes into a new common superclass (hdrgen.Symbol). This uncovered YAML's requirement to quote the string "NULL" to avoid pyyaml parsing it as None (equivalent to Javascript null) rather than a string. | 8 个月前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
Add sysexits.h header with BSD exit codes (total-18) (#126112) This pull request adds a new header file, SysExits.h, to the LLVM project. The header includes 18 BSD exit code. | 1 年前 | |
Add sysexits.h header with BSD exit codes (total-18) (#126112) This pull request adds a new header file, SysExits.h, to the LLVM project. The header includes 18 BSD exit code. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
[libc] Revamp hdrgen command line and build integration (#121522) This adds a new main command-line entry point for hdrgen, in the new main.py. This new interface is used for generating a header. The old ways of invoking yaml_to_classes.py for other purposes are left there for now, but --e is renamed to --entry-point for consistency with the new CLI. The YAML schema is expanded with the header_template key where the corresponding .h.def file's path is given relative to where the YAML file is found. The build integration no longer gives the .h.def path on the command line. Instead, the script now emits a depfile that's used by the cmake rules to track that. The output file is always explicit in the script command line rather than sometimes being derived from a directory path. | 1 年前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] Define 'size_t' in time.h and uchar.h (#103441) Summary: The standard says the following: The <time.h> header shall define the clock_t, size_t, time_t, types as described in <sys/types.h>. I couldn't find one for uchar.h but it needs it once we define things like mbrtoc8. | 1 年前 | |
[libc][POSIX] Add clock_settime() function for Linux (#161729) Closes #161461 - This is my first time contributing to libc's POSIX, so for reference I used clock_gettime implementation for Linux. For convenience, here is the description of clock_settime function [behavior](https://www.man7.org/linux/man-pages/man3/clock_settime.3.html) | 8 个月前 | |
[libc] Remove trivial .h.def files (#149466) Remove all the .h.def files that already express nothing whatsoever not already expressed in YAML. Clean up a few YAML files without materially changing any generated header output. Many more .h.def files remain that need a bit of conversion in YAML to express macro requirements and such. | 1 年前 | |
[libc] fix up the use of angle includes in include/ (#86027) Performed en-masse via: $ grep -rn "#include <ll" libc/include -l | \ xargs perl -pi -e 's/#include <ll(.*)>/#include "ll$1"/' $ grep -rn "#include <__" libc/include -l | \ xargs perl -pi -e 's/#include <__(.*)>/#include "__$1"/' Link: #83463 Link: #83210 | 2 年前 | |
| 8 个月前 | ||
| 1 年前 | ||
[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] add wctype.h header (#149202) Add basic configurations to generate wctype.h header file. To begin with this header file just exposes one function iswalpha. | 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 8 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 9 个月前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 2 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 9 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 |