[LLVMdev] Thinking about "whacky" backends

Nate Fries nfries88 at yahoo.com
Fri Jun 3 16:56:07 PDT 2011


On 6/3/2011 3:19 PM, Joachim Durchholz wrote:
>>>> compressing them in an archive, then decompressing and either
>>>> interpreting or JIT-compiling the appropriate bitcode for the
>>>> platform. This would just be a more flexible means to that same end.
>>> Not sure how that is more flexible - care to elaborate?
>> More flexible to the programmer, not to the system. There are many
>> pieces of code where, to port between Windows, OS X, iOS, Android, and
>> PC Linux/*BSD/etc would require a ton of preprocessor work.
>
> Ah I see.
>
> I'd avoid using control flow, unless the differences are really 
> minimal and the control flow is easy to understand. For anything 
> that's getting even slightly complicated, I'd use different bitcode 
> files.
>
Indeed. It's my attempt at meeting halfway, and it really offers nothing 
over using preprocessors besides the fact that it would result in a 
single all-functional bitcode without requiring distinct run-time checks.
> Whether these are packed into a single zip file or available for 
> separate download is something that should be decided by the deployer 
> - sometimes, space is at a premium, sometimes, it's bandwidth or 
> latency. Let them decide what parts of the bitcode file tree they want 
> to distribute, and allow them to package them into zip files as they 
> see fit.
> There are transparent zip filesystems that will allow you to access a 
> file inside a zip archive as if it were part of the normal file 
> system. (Java does this all the time, and this part of the Java 
> infrastructure works really well.)
I was suggesting a method of storage, not necessarily of distribution.
Indeed, the best method for a distribution system would be to transmit 
only the relevant bitcode.



More information about the llvm-dev mailing list