On Tue, Nov 05, 2002 at 06:17:55PM +0000, Richard Sandiford wrote: > Daniel Jacobowitz <dan@debian.org> writes: > > Surely we can't... Remember what EF_MIPS_ARCH says: it's actually what > > we call ISA level elsewhere! I just spent a day beating on this and > > settled for untagged instead of correctly-tagged binaries; I was trying > > to built SB-1 binaries (that's EF_MIPS_MACH of EF_MIPS_MACH_SB1) for a > > 32-bit userland (that's EF_MIPS_ARCH_2). Not just E_MIPS_ABI_O32, but > > actually -mips2 code. > > I'm not sure what you want from a MIPS II SB-1 binary, though. > Does it mean that you can't use instructions that are defined > in the MIPS32 ISA but not the MIPS II one? But you can use > the SB-1-specific instructions (i.e. those not defined in the > MIPS64 ISA)? Maybe I'm barking up the wrong tree... yes, it seems that I am.... The principal thing is that I want O32 code. You can't use a higher ISA level than MIPS2 and still use O32, as far as I understand. And this setup has a 32-bit kernel, so using MIPS3/4/64 instructions in userspace is a real losing proposition. I obviously want -mtune=sb1. So probably I should just be using -mtune=sb1 -mips2. And hack the GENERATE_BRANCHLIKELY test to honor -mtune. Blech, I wish these options were less confusing! -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer