diff options
author | Craig Topper <craig.topper@intel.com> | 2019-08-23 05:33:27 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2019-08-23 05:33:27 +0000 |
commit | bdceb9fb14595d10f7d94e1dd950cf2d94d2f2d3 (patch) | |
tree | 569be268bd103e431359badc31b7aae4ba3911b6 /lldb/packages/Python/lldbsuite/test/expression_command/context-object-objc/TestContextObjectObjc.py | |
parent | 8798c8de9a8a4abf597cd370da57ebefaa4d951d (diff) | |
download | bcm5719-llvm-bdceb9fb14595d10f7d94e1dd950cf2d94d2f2d3.tar.gz bcm5719-llvm-bdceb9fb14595d10f7d94e1dd950cf2d94d2f2d3.zip |
[X86] Improve lowering of v2i32 SAD handling in combineLoopSADPattern.
For v2i32 we only feed 2 i8 elements into the psadbw instructions
with 0s in the other 14 bytes. The resulting psadbw instruction
will produce zeros in bits [127:16] of the output. We need to take
the result and feed it to a v2i32 add where the first element
includes bits [15:0] of the sad result. The other element should
be zero.
Prior to this patch we were using a truncate to take 0 from
bits 95:64 of the psadbw. This results in a pshufd to move those
bits to 63:32. But since we also have zeroes in bits 63:32 of
the psadbw output, we should just take those bits.
The previous code probably worked better with promoting legalization,
but now we use widening legalization. I've preserved the old
behavior if -x86-experimental-vector-widening-legalization=false
until we get that option removed.
llvm-svn: 369733
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/context-object-objc/TestContextObjectObjc.py')
0 files changed, 0 insertions, 0 deletions