|
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5 |
|
| #
a6ef0deb |
| 02-Dec-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc][NFC] Rename RPC opcodes to better reflect their usage
Summary: RPC_ is a generic prefix here, use LIBC_ to indicate that these are opcodes used to implement the C library
|
| #
27d25d1c |
| 20-Nov-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc] Increase RPC opcode to 32-bit and use a class byte (#116905)
Summary: Currently, the RPC interface uses a basic opcode to communicate with the server. This currently is 16 bits. There's no re
[libc] Increase RPC opcode to 32-bit and use a class byte (#116905)
Summary: Currently, the RPC interface uses a basic opcode to communicate with the server. This currently is 16 bits. There's no reason for this to be 16 bits, because on the GPU a 32-bit write is the same as a 16-bit write performance wise.
Additionally, I am now making all the `libc` based opcodes qualified with the 'c' type, mimiciing how Linux handles `ioctls` all coming from the same driver. This will make it easier to extend the interface when it's exported directly.
show more ...
|
| #
197e0125 |
| 19-Nov-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc] Replace usage of GPU helpers with ones from 'gpuintrin.h' (#116454)
Summary: These are provided by a resource header now, cut these from the dependencies and only provide the ones we use for
[libc] Replace usage of GPU helpers with ones from 'gpuintrin.h' (#116454)
Summary: These are provided by a resource header now, cut these from the dependencies and only provide the ones we use for RPC.
show more ...
|
|
Revision tags: llvmorg-19.1.4, llvmorg-19.1.3 |
|
| #
03dcefe0 |
| 28-Oct-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc] Fix leftover `LIBC_NAMESPACE` after porting it (#113960)
Summary: There are a few of these leftover, they should all use the `LIBC_NAMESPACE_DECL` version because that implies visibility.
|
| #
be0c67c9 |
| 15-Oct-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc] Remove dependency on `cpp::function` in `rpc.h` (#112422)
Summary: I'm going to attempt to move the `rpc.h` header to a separate folder that we can install and include outside of `libc`. Befo
[libc] Remove dependency on `cpp::function` in `rpc.h` (#112422)
Summary: I'm going to attempt to move the `rpc.h` header to a separate folder that we can install and include outside of `libc`. Before doing this I'm going to try to trim up the file so there's not as many things I need to copy to make it work. This dependency on `cpp::functional` is a low hanging fruit. I only did it so that I could overload the argument of the work function so that passing the id was optional in the lambda, that's not a *huge* deal and it makes it more explicit I suppose.
show more ...
|
|
Revision tags: llvmorg-19.1.2 |
|
| #
c63112a9 |
| 01-Oct-2024 |
lntue <lntue@google.com> |
[libc][stdio] Use proxy headers of stdio.h in src and test folders. (#110067)
https://github.com/llvm/llvm-project/issues/60481
|
|
Revision tags: 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 |
|
| #
40effc7a |
| 13-Jul-2024 |
Joseph Huber <huberjn@outlook.com> |
[libc] Implement (v|f)printf on the GPU (#96369)
Summary: This patch implements the `printf` family of functions on the GPU using the new variadic support. This patch adapts the old handling in the
[libc] Implement (v|f)printf on the GPU (#96369)
Summary: This patch implements the `printf` family of functions on the GPU using the new variadic support. This patch adapts the old handling in the `rpc_fprintf` placeholder, but adds an extra RPC call to get the size of the buffer to copy. This prevents the GPU from needing to parse the string. While it's theoretically possible for the pass to know the size of the struct, it's prohibitively difficult to do while maintaining ABI compatibility with NVIDIA's varargs.
Depends on https://github.com/llvm/llvm-project/pull/96015.
show more ...
|