This patch adds the rpc_host_call function as a GPU extension. This is
exported from the libc project to use the RPC interface to call a
function pointer via RPC any copying the arguments by-value. The
interface can only support a single void pointer argument much like
pthreads. The function call here is the bare-bones version of what's
required for OpenMP reverse offloading. Full support will require
interfacing with the mapping table, nowait support, etc.
I decided to test this interface in libomptarget as that will be the
primary consumer and it would be more difficult to make a test in libc
due to the testing infrastructure not really having a concept of the
"host" as it runs directly on the GPU as if it were a CPU target.
Nit: Should main return something?