1. 31 Oct, 2014 1 commit
    • Austin Clements's avatar
      [dev.power64] 9g: fix under-zeroing in clearfat · 6e860036
      Austin Clements authored
      All three cases of clearfat were wrong on power64x.
      
      The cases that handle 1032 bytes and up and 32 bytes and up
      both use MOVDU (one directly generated in a loop and the other
      via duffzero), which leaves the pointer register pointing at
      the *last written* address.  The generated code was not
      accounting for this, so the byte fill loop was re-zeroing the
      last zeroed dword, rather than the bytes following the last
      zeroed dword.  Fix this by simply adding an additional 8 byte
      offset to the byte zeroing loop.
      
      The case that handled under 32 bytes was also wrong.  It
      didn't update the pointer register at all, so the byte zeroing
      loop was simply re-zeroing the beginning of region.  Again,
      the fix is to add an offset to the byte zeroing loop to
      account for this.
      
      LGTM=dave, bradfitz
      R=rsc, dave, bradfitz
      CC=golang-codereviews
      https://golang.org/cl/168870043
      6e860036
  2. 30 Oct, 2014 5 commits
  3. 29 Oct, 2014 13 commits
  4. 28 Oct, 2014 21 commits