> On Nov. 15, 2016, 9:27 a.m., Andreas Sandberg wrote: > > src/arch/x86/isa/microops/fpop.isa, line 354 > > <http://reviews.gem5.org/r/3690/diff/4/?file=63575#file63575line354> > > > > Are these changes really needed?
Fixed. I will push this once the changes to fputils have been pulled into gem5. - Tony ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/3690/#review9075 ----------------------------------------------------------- On Nov. 15, 2016, 11:52 a.m., Tony Gutierrez wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/3690/ > ----------------------------------------------------------- > > (Updated Nov. 15, 2016, 11:52 a.m.) > > > Review request for Default. > > > Repository: gem5 > > > Description > ------- > > Changeset 11894:be1b22d0c36a > --------------------------- > x86, ext: fix buf overflow in fp80 ops; pad fp80_t in fputils > > the compiler seems to align the fp80_t data struct, so here we add > explicit padding to avoid confusion. > > storeFloat80() will try to write all 16B of the fp80_t to the bits[] array > of the calling instruction. this happens because storeFloat80() points its > local fp80_t* to the memory the caller allocated for bits[], which is only > 10B, thus we get an overflow that is flagged by clang's asan. here we > get the fp80 value first, the memcpy() the bits[] of fp80_t to the mem > allocated by the caller. > > some of the x86 FP ops also use char to represent 8b types, while the fp80 > struct uses uint8_t, so here we make the x86 ops use uint8_t as well. > > > Diffs > ----- > > src/arch/x86/utility.cc c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 > > Diff: http://reviews.gem5.org/r/3690/diff/ > > > Testing > ------- > > > Thanks, > > Tony Gutierrez > > _______________________________________________ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev