Joseph Huber dcdfc963d7 [libc] Export GPU extensions to libc for external use
The GPU port of the LLVM C library needs to export a few extensions to
the interface such that users can interface with it. This patch adds the
necessary logic to define a GPU extension. Currently, this only exports
a `rpc_reset_client` function. This allows us to use the server in
D147054 to set up the RPC interface outside of `libc`.

Depends on https://reviews.llvm.org/D147054

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D152283
2023-06-15 11:02:24 -05:00

30 lines
552 B
TableGen

include "config/public_api.td"
include "spec/stdc.td"
include "spec/gpu_ext.td"
def StringAPI : PublicAPI<"string.h"> {
let Types = ["size_t"];
}
def StdlibAPI : PublicAPI<"stdlib.h"> {
let Types = [
"size_t",
"__atexithandler_t",
];
}
def FenvAPI: PublicAPI<"fenv.h"> {
let Types = ["fenv_t"];
}
def StdIOAPI : PublicAPI<"stdio.h"> {
let Macros = [
SimpleMacroDef<"_IOFBF", "0">,
SimpleMacroDef<"_IOLBF", "1">,
SimpleMacroDef<"_IONBF", "2">,
SimpleMacroDef<"EOF", "-1">,
];
let Types = ["size_t", "FILE"];
}