aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/LiveDebugValues.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2020-03-13 18:42:43 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2020-03-13 18:43:04 +0000
commit05c0d3491822b3a74f49be2fe8c8273e436ab7ec (patch)
tree05fe2a6d9c28c3b2c91d9f330dcf2a2b7520a82a /llvm/lib/CodeGen/LiveDebugValues.cpp
parenta213ece30bdb8b604ea0933edbd9c2ca77b9631f (diff)
downloadllvm-05c0d3491822b3a74f49be2fe8c8273e436ab7ec.zip
llvm-05c0d3491822b3a74f49be2fe8c8273e436ab7ec.tar.gz
llvm-05c0d3491822b3a74f49be2fe8c8273e436ab7ec.tar.bz2
[X86][SSE] Prefer trunc(movd(x)) to pextrb(x,0)
If we're extracting the 0'th index of a v16i8 vector we're better off using MOVD than PEXTRB, unless we're storing the value or we require the implicit zero extension of PEXTRB. The biggest perf diff is on SLM targets where MOVD (uops=1, lat=3 tp=1) is notably faster than PEXTRB (uops=2, lat=5, tp=4). This matches what we already do for PEXTRW. Differential Revision: https://reviews.llvm.org/D76138
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugValues.cpp')
0 files changed, 0 insertions, 0 deletions