llvm-gcc
The Mac OS X port team plans to use the LLVM-GCC compiler (as Apple's proprietary Java SE 6 does) until the JDK and HotSpot can be compiled completely with the LLVM Clang compiler.
-Os vs. -O3
The Mac OS X port uses the -Os (size) optimization level, instead of -O3 (also as Apple's proprietary Java SE 6 does). On Mac OS X, gcc, llvm-gcc, and clang all provide very good optimizations at -Os without reverting to excessive loop unrolling. Whole system testing has shown that cost of paging in larger binaries and instruction cache misses can outweigh the benefits of -O3.
The Java team's last evaluation of compiling HotSpot with -O3 vs. -Os in late 2010 showed statistically equivalent performance on several long running JVM benchmarks.
-mstackrealign
Mac OS X requires all stack frames to be 16-byte aligned in both 32 and 64-bit. Assembly stub functions within HotSpot do not natively perform this alignment in i386, so we make the compiler ensure that alignment is done at the call point.
...