On Sat, 24 Oct 2009 22:06:56 +0100, Vince Weaver <[email protected]> wrote:
> >> + // I'm not sure why, but the length argument is in arg reg 3 >> + loff_t length = process->getSyscallArg(tc, 3); > > The reason for this is that on various architectures, if you are passing > a > 64-bit value on a 32-bit architecture, the 64-bit value has to be in an > even/odd register pair. So on calls like ftruncate64 a register is > wasted > to get this alignment. > I meant to say thanks very much for the explanation, Vince. It took me ages to find this bug and it's nice to know why it's there now :-) Tim -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
