Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(733)

Issue 291893008: Fix memcpy32_sse2_unalign. (Closed)

Created:
6 years, 7 months ago by mtklein_C
Modified:
6 years, 7 months ago
Reviewers:
f(malita), mtklein
CC:
skia-review_googlegroups.com
Base URL:
https://skia.googlesource.com/skia.git@master
Visibility:
Public.

Description

Fix memcpy32_sse2_unalign. The whole point of mempcy32_sse2_unalign is that we didn't align dst128 and src128. So it's not safe at all to cast them back to dst and src. That tells the compiler that dst/src are 128-bit aligned, and then it autovectorizes the cleanup while-loop using that (false) knowledge with aligned SSE instructions. This leads to crashes on memcpy32_sse2_unalign_10, which is small enough that we actually get non-16-byte aligned memory. The larger size benches could be crashing too, but they're big enough allocations that they're probably always 16-byte aligned anyway. BUG=skia:2589 Committed: http://code.google.com/p/skia/source/detail?r=14851

Patch Set 1 #

Total comments: 3

Patch Set 2 : hoist, for align too #

Unified diffs Side-by-side diffs Delta from patch set Stats (+5 lines, -7 lines) Patch
M bench/MemcpyBench.cpp View 1 4 chunks +5 lines, -7 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
mtklein
We're waiting on try bots, but I'm pretty hopeful I've got a good model now.
6 years, 7 months ago (2014-05-22 16:38:09 UTC) #1
f(malita)
lgtm https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp File bench/MemcpyBench.cpp (right): https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp#newcode137 bench/MemcpyBench.cpp:137: src += 16; Is the compiler smart enough ...
6 years, 7 months ago (2014-05-22 16:46:34 UTC) #2
mtklein
https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp File bench/MemcpyBench.cpp (right): https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp#newcode137 bench/MemcpyBench.cpp:137: src += 16; On 2014/05/22 16:46:34, Florin Malita wrote: ...
6 years, 7 months ago (2014-05-22 16:48:59 UTC) #3
f(malita)
On 2014/05/22 16:48:59, mtklein wrote: > https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp > File bench/MemcpyBench.cpp (right): > > https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp#newcode137 > ...
6 years, 7 months ago (2014-05-22 16:51:43 UTC) #4
mtklein
https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp File bench/MemcpyBench.cpp (right): https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp#newcode137 bench/MemcpyBench.cpp:137: src += 16; On 2014/05/22 16:48:59, mtklein wrote: > ...
6 years, 7 months ago (2014-05-22 16:59:02 UTC) #5
mtklein
On 2014/05/22 16:59:02, mtklein wrote: > https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp > File bench/MemcpyBench.cpp (right): > > https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp#newcode137 > ...
6 years, 7 months ago (2014-05-22 17:19:01 UTC) #6
mtklein
On 2014/05/22 17:19:01, mtklein wrote: > On 2014/05/22 16:59:02, mtklein wrote: > > https://codereview.chromium.org/291893008/diff/1/bench/MemcpyBench.cpp > ...
6 years, 7 months ago (2014-05-22 18:16:41 UTC) #7
mtklein
The CQ bit was checked by mtklein@google.com
6 years, 7 months ago (2014-05-22 18:17:39 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/mtklein@chromium.org/291893008/20001
6 years, 7 months ago (2014-05-22 18:18:33 UTC) #9
commit-bot: I haz the power
6 years, 7 months ago (2014-05-22 18:24:54 UTC) #10
Message was sent while issue was closed.
Change committed as 14851

Powered by Google App Engine
This is Rietveld 408576698