First off, I just wanted to say 'thanks' to any of the GCJ devs that
might be on this list, I find it the *coolest* compiler on the planet
and have been using it for years on numerous projects. Very
impressive stuff!
I've decided to do some hacking on GCJ itself - my goal: to reduce
executable sizes to be a bit closer to what might come from a
'typical' gcc c/c++ executable. Just so that we can make smaller
binary distributables. (Side note, I am not worried about the runtime
VM, just precompiling everything) I know that some things might have
to change in undesirable ways to do this, but I'm hoping command line
arguments can enable/disable the functionality transparently.
I wanted to ping the list before I started - as I'm sure many here are
much better with GCC internals than I:
1) I have seen the 'no-vm' flag (or similar), and did try this - it
reduced executable size significantly but still gives a 'Hello World'
of something in the order of 1-2MB. Have I done anything incorrectly?
What is the smallest anyone else has gotten an executable (and what
flags used?)
2) I am perusing/researching the GCJ code base, from snapshot, to try
and get an idea where some of the bulk is coming, and if it can be
refined. Can any gurus give some pointers on where some possible
optimizations can be made?