6 ms·
To me, the most interesting thing about PNaCl is that it'll be the first real test of LLVM as a portable assembly bitcode, rather than just a compiler IR. There
by pjin 13y ago
To me, the most interesting thing about PNaCl is that it'll be the first real test of LLVM as a portable assembly bitcode, rather than just a compiler IR. There are arguments for why LLVM may not be such a good idea, but given the momentum it's been making, I can only see good things happening for LLVM if more people use it.
- kryps 13y agoThe second real test. Android Renderscript uses LLVM for portable bytecode already.
- dietrichepp 13y agoActually, emscripten does the same thing: LLVM->JS.
- millstone 13y agoRight. I had always thought that LLVM bitcode was unsuitable as a portable representation because it inevitably encoded architecture-specific details. Consider code like this: int lsize(void) { return sizeof(void *); } how would this be compiled portably, so that it returns 4 or 8 as appropriate? What would the LLVM bitcode look like?
- jensnockert 13y agoThis is true for LLVM bitcode in general, but PNaCl specifies an abstract machine that defines pointers as 4 bytes long. It also specifies Little Endian &c. See http://www.chromium.org/nativeclient/pnacl/bitcode-abi#TOC-Data-Types http://www.chromium.org/nativeclient/pnacl/bitcode-abi#TOC-D...