diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2024-08-13 10:15:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-13 10:15:49 +0100 |
commit | 71d2de8ecd793bd1a1ea51b61d22c233029b3fe8 (patch) | |
tree | b0880dd89df8d04459b8fc9e98ee132077a74d89 /lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp | |
parent | b7ebb67b86888de05419e07a38b932344ac9c7a7 (diff) | |
download | llvm-71d2de8ecd793bd1a1ea51b61d22c233029b3fe8.zip llvm-71d2de8ecd793bd1a1ea51b61d22c233029b3fe8.tar.gz llvm-71d2de8ecd793bd1a1ea51b61d22c233029b3fe8.tar.bz2 |
[X86] Promote cttz_i32(x) -> cttz_i64((i64)x | (1 << 32)) (#102900)
On 64bit targets we can promote i32 CTTZ nodes to i64 CTTZ_ZERO_UNDEF by setting the 32nd bit.
#57811 also queried about whether we should use BTS instead of MOVABS+OR to avoid a i64 immediate - I'm willing to tweak the DAGToDAG isel peephole for these cases if reviewers think it worthwhile. But most recent CPUs can actually handle MOVABS faster than BTS/C/R.......
Fixes #57811
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
0 files changed, 0 insertions, 0 deletions