Matthew, > As I understand it, 64-bit support is really two different things: > 64-bit data path (i.e. unsigned long long) and 64-bit addressing > (for more than 4G of RAM). Yes: the MIPS architecture is designed so there are lots of different things which can be "64-bit", and you don't have to go for them all at once. This kind of choice can be as much curse as blessing, of course. Ralf etc have worked (with some sponsorship from SGI) on a full-blown system where you get: o A very large physical address space o Very large virtual address spaces, using 64-bit pointer types. o C "long" (and perhaps even "int") becomes 64-bit. In such a 64-bit Linux system, though, you might still want to be able to run 32-bit applications with 32-bit pointers, int and long - either for compatibility or economy (32-bit data types make for a smaller program). SGI do this in Irix: I don't know whether the 64-bit Linux/MIPS systems got around to it. There are other potentially useful combinations: o A Linux where all machine-supported integer data types are 32-bit, but capable of addressing physical memory outside of a 4Gbyte map. (In practice, you need to use this kind of system to get outside of a 512Mbyte map - so it's urgent). Ralf says he has done this: it could be done without using any 64-bit operations, but it might be easier with them. o A system using 32-bit pointers and 'long' throughout, but with support for 'long long' 64-bit integer data types in registers. o A system using 64-bit addressing within the kernel, but not for applications. However, it's unlikely to make sense to do all of them! > I suspect that this is very much a toolchain issue, as I don't think > gcc will generate 64-bit addressing code. I suspect that the generic GNU toolchains are pretty buggy when you switch on 64-bit MIPS operation; but it's bug-fixes which are needed, not wholesale new features. Politics: MIPS Technologies' advocacy for their "MIPS32" instruction set dialect in embedded systems means there are now some quite capable MIPS CPUs (eg Alchemy's 500Mhz integrated CPUs) which don't have 64-bit datapaths or arithmetic. So casual dependence on 64-bit operations should probably be avoided. -- Dominic Sweetman Algorithmics Ltd The Fruit Farm, Ely Road, Chittering, CAMBS CB5 9PH, ENGLAND phone: +44 1223 706200 / fax: +44 1223 706250 / home: +44 20 7226 0032 http://www.algor.co.uk