AMD64 port
Matthew Dillon
dillon at apollo.backplane.com
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?
:
:Noah
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.
-Matt
Matthew Dillon
<dillon at backplane.com>
More information about the Kernel
mailing list