[LLVMdev] Building a stable bitcode format for PNaCl - based on LLVM IR

JF Bastien jfb at google.com
Wed Jun 19 09:01:06 PDT 2013


> From the provided documentation I understood that in memory data
> structures of a PNaCl program are incompatible to the host program because
> ABIs are different (e.g. PNaCl pointers are always 32-bit even when running
> on x86_64 platform).
> So PNaCl program can't access any data structures of the host program
> directly. The only communication way is by using syscalls, but the document
> does not specify syscalls in detail.
>

We should probably clarify in the final documentation, but the goal of
PNaCl is to not only be portable and fast but also be safe for the user,
and the way this is achieved is through NaCl's SFI. Specifically for
syscalls:
  http://www.chromium.org/nativeclient/reference/anatomy-of-a-sys

In a way the syscalls offered are defined by the embedding sandbox: NaCl
through Chrome and sel_ldr have documented interfaces, and the NaCl SDK
offers POSIX-like interfaces built on top of these.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130619/5d983678/attachment.html>


More information about the llvm-dev mailing list