[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Compiler and glibc options to emchain



Neil Williams wrote:

On Mon, 09 Feb 2009 13:52:47 -0500 Richard Smith
<smithbone@gmail.com> wrote:

I'd like to create a optimized emdebian build (modified Grip
probably) for the AMD Geode.

Grip doesn't cross-build or recompile anything so there are no optimisations available that would require changing any of the binary
 files within Grip.

Only Crush provides any opportunity to recompile any source code.

Ah. Ok. So I guess it will be Crush then with additional packages pulled
in (and recompiled) as I need them.  I'm prepared to keep a big pile of
packages/patches in a local repo.

Its not clear to me yet from reading the docs if I can feed configuration options to emchain.

Any options related to variants of the existing architectures need to
 be made such that normal Debian tools will accept the new
architecture. I'm not entirely sure what you are requesting but it
would appear that you need dpkg-architecture to be able to support
the modified values. That can be done via dpkg-cross support but you
haven't provided enough information to work out what you require or
how to begin that process.

Ok. I think that tells me what I need.  I'll have to dig into
dpkg-architecture and dpkg-cross. I've sort of started that but I wanted to check and see if anyone already crossed this bridge yet. Is there some detailed docs on dpkg-architecture and dcross? I've found various docs on usage but not on the nuts and bolts if I want to extend it. I _think_ what I'm asking for is the same sub-architecture support that ARM has applied to the i386 arch.

Its i386 but I'll need to set -march=geode and I'll need to play
with various options for glibc.

? -march ?

The geode is essentially a i486 + cmov instruction. It can almost do i686 but not quite. True i686 code has a few unsupported opcodes in it. The geode also has some quirks about the way you need to setup floating point transactions to if you want the fpu run optimally.

Newer gcc's support the geode via the -march=geode flag just like they do for i686.

I'll want the -march=geode flag on all gcc compile commands.

What options to glibc?

Here's an example from the Gnash folk.

http://wiki.gnashdev.org/Building_OLPC_Tools

Its a bit out of date but I'll have to do some thing similar and run tests and learn what works best for the geode.

The thread that was just started on th sparc32 was helpful. I see that cross-compile only works for arm and that I need to upgrade my build machine to unstable. I'm in a tad bit better shape since I'm not a full cross-compile. The code generated by gcc with the optimizations will still run on my host.

Thanks for the info. I'll glady take RTFM pointers on the d-arch low level stuff if you got them.

--
Richard A. Smith
smithbone@gmail.com


Reply to: