• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. Port: MacOSX
  4. Mac OS X Port Compilers

Mac OS X Port Compilers

  • Created by Mike Swingler on Apr 03, 2011

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.

Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.23
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 127, "requestCorrelationId": "68d48025c4316a54"}