-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/3690/
-----------------------------------------------------------

(Updated Nov. 1, 2016, 12:36 p.m.)


Review request for Default.


Repository: gem5


Description (updated)
-------

Changeset 11888:ed39f10e4ff3
---------------------------
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.


Diffs (updated)
-----

  ext/fputils/fpbits.h c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
  ext/fputils/include/fputils/fptypes.h 
c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
  src/arch/x86/isa/microops/fpop.isa c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
  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

Reply via email to