This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][Revised2]PR41180 pt2: fix config.guess on darwin10
On Tue, Sep 01, 2009 at 08:58:04PM -0700, H.J. Lu wrote:
> On Tue, Sep 1, 2009 at 4:23 PM, Jack Howarth<howarth@bromo.med.uc.edu> wrote:
> > ? The proper default triplet for darwin10 is misidentified by config.guess.
> > This is due to the fact that on darwin10 "uname -p" reports the architecture
> > of the running kernel rather than the default architecture of the
> > binaries created by the system gcc and executed by the OS. In the case of
> > EMT64-capable processors, the system gcc will execute and produce
> > x86_64 code (independent of whether the 32-bit or the 64-bit kernel is
> > in use). The attached patch uses the presence of the __LP64__ preprocessor
> > symbol generated in the system gcc to determine if x86_64 is the proper
> > processor for the triplet whenever "uname -p" reports i386. Confirmed to work on
> > i386-apple-darwin10.
> >
>
> As far as I know, all Intel processors used by Apple support Intel64/EM64T.
>
> --
> H.J.
H.J.
One other comment. It actual is irrelevant whether all the Intel Macs are
EMT64 capable. Apple decided to do a staged transition to 64-bit where Snow
Leopard defaults (in the non-server version) to a 32-bit kernel. It reports
as follows...
cpu-type kernel-type uname -p uname -m default code
non-EMT64 32-bit kernel i386 i386 i386
EMT64 32-bit kernel i386 i386 x86_64
EMT64 64-bit kernel i386 x86_64 x86_64
I would have preferred if Apple had made "uname -m" report
x86_64 in all cases for the EMT64 processors since they default
to x86_64 executables but they tethered it to the kernel type
instead.
Jack