Quoting Ali Saidi <[email protected]>: > > On Mon, 26 Oct 2009 01:59:14 -0700, Gabe Black <[email protected]> > wrote: >> Ali Saidi wrote: >>> I believe that the rules are as follows (from some google searches, >>> but I couldn't find a definitive list): >>> 64 bit arch/app -- Do nothing special >>> 32 bit arch/app -- 64 bit values are aligned evenly with the exception >>> of x86 and ARM OABI (which we don't support and don't intend to). >>> >> >> So what do we have that fits into the 2nd category? There's 32 bit SPARC >> and ARM, but what else? I'll take care of those too. > > MIPS
What about PowerPC? > >> >>> Assuming that is the case, all of the other OSes should have something >>> like the following. If we support two endians for a given architecture >>> (which we don't at the moment) the stitching together will have have >>> to take that into account. >>> >>> For some reason I feel that the getSyscallArg should be templated on >>> the size. Either machine bytes (actually something similar), or 64bits >>> (if the argument is always 64 bits). >>> >> >> I can see where you're coming from, but I don't think it'd end up being >> as clean syntactically. You're welcome to prove me wrong of course. > > Yea. I don't know. It seems likely that someone will forget to use the > third parameter in a case where they should. > That's actually ok, I think. I imagine someone coding up a handler for ISA X ignoring the arguments that take special handling if they don't apply in that ISA. Then when someone wants to hook it up for ISA Y where they do apply, they'll need to look at either, hopefully, what the code should do, or less hopefully why it's not working after the fact. Gabe _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
