For the JIT and a couple of optimizers on x86 (suitably stripped etc),
we see it taking ~2M uncompressed. Additionally, as you say, this is
very compressible for an install image.
2mByte for PC apps is "nothing" these days. The app I have in mind is
50-200mByte depending on install options.
To be able to write llvm DLLs and ship intermediate code would definitely
be nice. It would take quite a bit more to JIT the entire application
as this would be a lot more visible. Perhaps not to the users, but
to the developers on the project. One more DLL that ships with
some files won't bother anybody.