summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/frame/main.c
diff options
context:
space:
mode:
authorRoman Lebedev <lebedev.ri@gmail.com>2018-06-06 19:38:16 +0000
committerRoman Lebedev <lebedev.ri@gmail.com>2018-06-06 19:38:16 +0000
commit488d28d4e5d083caf8353e6df726897bf23fa1ad (patch)
treef7acb6a1e0e297687cb994a13a8ec32a986e76d4 /lldb/packages/Python/lldbsuite/test/python_api/frame/main.c
parentcb56f7a5502ca5029557e5f8a90c4a149021c33f (diff)
downloadbcm5719-llvm-488d28d4e5d083caf8353e6df726897bf23fa1ad.tar.gz
bcm5719-llvm-488d28d4e5d083caf8353e6df726897bf23fa1ad.zip
[X86] Emit BZHI when mask is ~(-1 << nbits))
Summary: In D47428, i propose to choose the `~(-(1 << nbits))` as the canonical form of low-bit-mask formation. As it is seen from these tests, there is a reason for that. AArch64 currently better handles `~(-(1 << nbits))`, but not the more traditional `(1 << nbits) - 1` (sic!). The other way around for X86. It would be much better to canonicalize. This patch is completely monkey-typing. I don't really understand how this works :) I have based it on `// x & (-1 >> (32 - y))` pattern. Also, when we only have `BMI`, i wonder if we could use `BEXTR` with `start=0` ? Related links: https://bugs.llvm.org/show_bug.cgi?id=36419 https://bugs.llvm.org/show_bug.cgi?id=37603 https://bugs.llvm.org/show_bug.cgi?id=37610 https://rise4fun.com/Alive/idM Reviewers: craig.topper, spatel, RKSimon, javed.absar Reviewed By: craig.topper Subscribers: kristof.beyls, llvm-commits Differential Revision: https://reviews.llvm.org/D47453 llvm-svn: 334125
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/frame/main.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud