DescriptionSubzero: 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
Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=f79d2cb6a27ad93a9080b0b0bf5b0bc1da5539d9
Patch Set 1 #
Total comments: 2
Patch Set 2 : Push the legalization into the switch statement for better precision #
Messages
Total messages: 7 (1 generated)
|