commit | f79d2cb6a27ad93a9080b0b0bf5b0bc1da5539d9 | [log] [tgz] |
---|---|---|
author | Jim Stichnoth <stichnot@chromium.org> | Mon Mar 23 15:10:54 2015 -0700 |
committer | Jim Stichnoth <stichnot@chromium.org> | Mon Mar 23 15:10:54 2015 -0700 |
tree | 55d9ab25c1c9800de99c19896e333e49658b0990 | |
parent | 69d3f9c6698150a88fcc89a20bb93823895dfaf8 [diff] |
Subzero: Don't use key SSE instructions on potentially unaligned loads. The non-mov-like SSE instructions generally require 16-byte aligned memory operands. The PNaCl bitcode ABI only guarantees 4-byte alignment or less on vector loads and stores. Subzero maintains stack alignment so stack memory operands are fine. We handle this by legalizing memory operands into a register wherever there is doubt. This bug was first discovered on the vector_align scons test. BUG= https://code.google.com/p/nativeclient/issues/detail?id=4083 BUG= https://code.google.com/p/nativeclient/issues/detail?id=4133 R=jvoung@chromium.org Review URL: https://codereview.chromium.org/1024253003