AMD64 port

Matthew Dillon dillon at
Mon Jul 16 09:38:18 PDT 2007

:right, i do have to set the TARGET_PLATFORM so that those sources from
:platform/pc64 can be picked up when building the libraries.
:For the cross compiling, it makes sense that the target should include
:both the target cpu (TARGET_ARCH) and the target machine
:(TARGET_PLATFORM). but the TARGET_PLATFORM=pc64 (if we want this name)
:may implicitly set the TARGET_ARCH=amd64.
:Thanks matt for explaining the include/machine/*.h files Simon, some
:of those files in cpu/*.h are also copied to include/machine, that why
:they are not existing in the platform/pc64.
:For the naming and folder structure, looks like FreeBSD or Linux has
:only an amd64 (or x86-64) that includes all the sources for the cpu
:and platform. they do not spearate cpu-specific and platform-specific.
:the question is it there a lot of differences in sources of two
:platforms of the same cpu architecture, e.g. what other platform,
:other than pc32 for the i386 cpu; what other platform, other than pc64
:for the amd64 cpu. what is the pc32 (pc64) platform of i386 (amd64)
:cpu. look likes pc32 are for all machines (desktop, server, etc) built
:using x86 32 bit cpu, or the differences are in the device driver and
:motherboard part.
:btw, what sources files or doc in gcc explaining the supported
:architecture/platform names?

    GCC is a big black box to me.  Well, almost.  For documentation
    I usually have to go to their web site.

    This does bring up an issue which I think we want to resolve for
    this release, which is to build a GCC that supports both 32 and 64 bit
    targets (even if the OS doesn't, yet).  I'll look into that.

    Our buildworld will build a cross-platform GCC based on TARGET_PLATFORM
    and our buildkernel will then use it, theoretically, but it definitely
    isn't as convenient as having all the support built into GCC in the
    first place.

					Matthew Dillon 
					<dillon at>

More information about the Kernel mailing list