llvm-gcc
The Mac OS X port uses the LLVM-GCC compiler (like the proprietary Apple JDK 6) until the JDK and HotSpot can be compiled completely with the LLVM Clang compiler.
-Os
Per Apple Mac OS X development policy, we use the -Os (size) optimization level, as opposed to -O3. 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.
-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.
This option works in GCC 4.0, but not in GCC 4.2. LLVM-GCC supports this option in Xcode 3.2.6 and Xcode 4.0.