On Tue, Jul 31, 2001 at 08:29:12AM -0700, John D. Davis wrote: > Looking at the system map from the generic build of 2.4.3, it looks like > the code is 64 bit. The upper 32 bits are "f" instead of 0. No. Sign extended, that is bit 31 is copied into bits 32 to 63. > I built it > using the R4600 flag. This differs from the system map for > 2.4.0-test9 where the upper 32 bits are 0. No. Different binutils. Older binutils did zero extend 32-bit addresses to 64-bit addresses in the objdump output which is wrong. > For the indy, do I specify mips2 to generate 32 bit code? -mips2 :-) For the kernel we use a few 64-bit instructions on the Indy though. These are carefully chosen such that nothing go wrong like exceptions corrupting the upper 32-bit of a register. > objdump says it is ELF32, but it doesn't look like that. I would like to > generate 32bit. ELF is an object format. Nothing prevents you from putting 64-bit code into a 32-bit ELF file and vice versa. You just need to be careful. Ralf