summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2019-03-22 20:47:02 +0000
committerCraig Topper <craig.topper@intel.com>2019-03-22 20:47:02 +0000
commitce1ed55a4a4a6ec49a7fa4dc411de24147aacab5 (patch)
treee92cbb38f1adcd9b51e6e6bf2f5e43d3f1ce8a21 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
parent1ffd8e8114bc34295380b7fed815c7cf7644e84e (diff)
downloadbcm5719-llvm-ce1ed55a4a4a6ec49a7fa4dc411de24147aacab5.tar.gz
bcm5719-llvm-ce1ed55a4a4a6ec49a7fa4dc411de24147aacab5.zip
[X86] Use xmm registers to implement 64-bit popcnt on 32-bit targets if possible if popcnt instruction is not available
On 32-bit targets without popcnt, we currently expand 64-bit popcnt to sequences of arithmetic and logic ops for each 32-bit half and then add the 32 bit halves together. If we have xmm registers we can use use those to implement the operation instead. This results in less instructions then doing two separate 32-bit popcnt sequences. This mitigates some of PR41151 for the i64 on i686 case when we have SSE2. Differential Revision: https://reviews.llvm.org/D59662 llvm-svn: 356808
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud