|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6 |
|
| #
6d1543a1 |
| 13-Jun-2022 |
Alex Brachet <[email protected]> |
[libc] Add explicit casts for string functions
This fixes warnings from `-Wimplicit-int-conversion`
Differential revision: https://reviews.llvm.org/D127694
|
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1 |
|
| #
7e7ecef9 |
| 07-Feb-2022 |
Guillaume Chatelet <[email protected]> |
[libc] Replace type punning with bit_cast
Although type punning is defined for union in C, it is UB in C++. This patch introduces a bit_cast function to convert between types in a safe way.
This is
[libc] Replace type punning with bit_cast
Although type punning is defined for union in C, it is UB in C++. This patch introduces a bit_cast function to convert between types in a safe way.
This is necessary to get llvm-libc compile with GCC. This patch is extracted from D119002.
Differential Revision: https://reviews.llvm.org/D119145
show more ...
|
|
Revision tags: llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
1c92911e |
| 19-Nov-2021 |
Michael Jones <[email protected]> |
[libc] apply new lint rules
This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templat
[libc] apply new lint rules
This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templated functions, or structs defined in /spec, were not updated and had to be handled manually.
Reviewed By: sivachandra, lntue
Differential Revision: https://reviews.llvm.org/D114302
show more ...
|
| #
1b927b68 |
| 22-Nov-2021 |
Guillaume Chatelet <[email protected]> |
[libc] add memmove basic building blocks
Differential Revision: https://reviews.llvm.org/D113321
|
| #
5ee5acf7 |
| 17-Nov-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Fix missing restricts
|
| #
0aea170b |
| 02-Nov-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add more robust compile time architecture detection
We may want to restrict the detected platforms to only `x86_64` and `aarch64`. There are still custom detection in api.td but I don't think
[libc] Add more robust compile time architecture detection
We may want to restrict the detected platforms to only `x86_64` and `aarch64`. There are still custom detection in api.td but I don't think we can handle these: - config/linux/api.td:205 - config/linux/api.td:199
Differential Revision: https://reviews.llvm.org/D112818
show more ...
|
| #
fe953b15 |
| 29-Oct-2021 |
Guillaume Chatelet <[email protected]> |
Revert "[libc] Add more robust compile time architecture detection"
This reverts commit a72e2499865b55cb007b63673100c06cc85faf97.
|
| #
a72e2499 |
| 29-Oct-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add more robust compile time architecture detection
We may want to restrict the detected platforms to only `x86_64` and `aarch64`. There are still custom detection in api.td but I don't think
[libc] Add more robust compile time architecture detection
We may want to restrict the detected platforms to only `x86_64` and `aarch64`. There are still custom detection in api.td but I don't think we can handle these: - config/linux/api.td:205 - config/linux/api.td:199
Differential Revision: https://reviews.llvm.org/D112818
show more ...
|
| #
ad82fe7b |
| 08-Oct-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add rep;movsb as an accelerator under x86
|
| #
f256c395 |
| 08-Oct-2021 |
Guillaume Chatelet <[email protected]> |
[libc] ifdef guard element architecture implementations
|
| #
d01ae990 |
| 08-Oct-2021 |
Guillaume Chatelet <[email protected]> |
Revert "[libc] Add rep;movsb as an accelerator under x86"
This reverts commit 1c7160300db124468ef4a26ec55ad3d6e6527a69.
|
| #
1c716030 |
| 08-Oct-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add rep;movsb as an accelerator under x86
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3 |
|
| #
2e9c75da |
| 25-Jun-2021 |
Siva Chandra Reddy <[email protected]> |
[libc] Use __builtin_ctzll instead of __builtin_ctzl in elements_x86.h.
__builtin_ctzl takes an unsigned long argument which need not be 64-bit long on all platforms. Using __builtin_ctzll, which ta
[libc] Use __builtin_ctzll instead of __builtin_ctzl in elements_x86.h.
__builtin_ctzl takes an unsigned long argument which need not be 64-bit long on all platforms. Using __builtin_ctzll, which takes an unsigned long long argument, ensures that 64-bit values will be handled on a wider range of platforms.
Without this change, the test corresponding to M512 fails in Windows.
Reviewed By: gchatelet
Differential Revision: https://reviews.llvm.org/D104897
show more ...
|
|
Revision tags: llvmorg-12.0.1-rc2 |
|
| #
7fff39d9 |
| 15-Jun-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elemen
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
A self-contained version of this code is available at https://godbolt.org/z/e1x6xdaxM
show more ...
|
| #
4694321f |
| 15-Jun-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elemen
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
A self-contained version of this code is available at https://godbolt.org/z/e1x6xdaxM
show more ...
|
| #
8387187c |
| 15-Jun-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elemen
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
A self-contained version of this code is available at https://godbolt.org/z/e1x6xdaxM
show more ...
|
| #
454d92ac |
| 15-Jun-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elemen
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message: Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
A self-contained version of this code is available at https://godbolt.org/z/e1x6xdaxM
show more ...
|
| #
e63f27a3 |
| 14-Jun-2021 |
Guillaume Chatelet <[email protected]> |
[libc] Add a set of elementary operations
Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile
[libc] Add a set of elementary operations
Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop). The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
Differential Revision: https://reviews.llvm.org/D100646
show more ...
|