summaryrefslogtreecommitdiffstats
path: root/lldb/source/Interpreter/CommandInterpreter.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2019-11-04 22:23:16 -0800
committerCraig Topper <craig.topper@gmail.com>2019-11-04 22:58:04 -0800
commit103968d147b135ebfcee69d6d7a1428163e66aaa (patch)
tree750ffba5c10eb71586843bfec37ed3e49cd5069c /lldb/source/Interpreter/CommandInterpreter.cpp
parent58acbce3def63a207b8f5a69318a99666a4aac53 (diff)
downloadbcm5719-llvm-103968d147b135ebfcee69d6d7a1428163e66aaa.tar.gz
bcm5719-llvm-103968d147b135ebfcee69d6d7a1428163e66aaa.zip
[X86] Lower the cost of avx512 horizontal bool and/or reductions to 2*log2(bitwidth)+1 for legal types.
This better represents the kshift+binop we'd get for each stage before the final extract. Its likely we'll do even better by doing a kmov and a cmp with a GPR, but this is a good start. The default handling was costing a worst case single source permute shuffle of the vector before the binop. This worst case assumes the shuffle might have to be emulated with extracts and inserts. But since we know we're doing a reduction we can assume we'll get kshift lowering. There's still some room for improvement here, but this is much better than it was.
Diffstat (limited to 'lldb/source/Interpreter/CommandInterpreter.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud