Hey, what CPU model are you using (assuming atomic-simple?) Also, what's the changset revision # that you are referencing that broke things?
I would like to look at it but I'm not exactly sure how to get to that changeset # that you list (somebody know the hg command to extract it?)..... On Fri, Dec 4, 2009 at 6:31 PM, Matt <[email protected]> wrote: > I'm having problems getting double-precision floating-point to work in > m5 for the MIPS isa. > > The 32-bit MIPS isa has 32 32-bit floating-point registers. > Double-precision floating-point numbers are stored in pairs of > floating-point registers. At least that's how I understand it. > > Simple floating point math used to work in m5 until changeset > 781969fbeca9. After the change, it seams that m5 does not read two > 32-bit floating point registers to get a double-precision > floating-point operand, but only one 32-bit floating-point register > (when it's simulating an add_d instruction, for example). This > results in incorrect floating point arithmetic. > > I have the following C program (compiled for MIPS) that exercises the > problem: > > #include<stdio.h> > > int main (void) > { > double x, y, z; > > x = 5.0; > y = 0.1; > > z = x + y; > > printf ("z = %lf\n", z); > > return 0; > } > > It should print "z = 5.1", but it doesn't because the simulation of > the floating-point addition is wrong. > > Can anyone tell me why this change was made that seems to break the > simulation of double-precision floating-point arithmetic in m5? > > Thanks. > > -- > Cheers, > Matt > _______________________________________________ > m5-dev mailing list > [email protected] > http://m5sim.org/mailman/listinfo/m5-dev > -- - Korey
_______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
