[PATCH] D143880: [LoongArch] Emit bytepick for picking from concatenation of two values

WÁNG Xuěruì via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 13 04:48:58 PST 2023


xen0n added a comment.

In D143880#4121913 <https://reviews.llvm.org/D143880#4121913>, @xen0n wrote:

> @xry111: BTW your GCC implementation of this pattern looks for *arithmetic* right shifts; do you mean logical instead? Because obviously the higher bits would be full of ones after shifting if `rj` happen to have its MSB set. The sign extension shall happen *after* the pick.

My bad, I'm not familiar with GCC RTL patterns so I've mistakenly thought "`lshiftrt` could be some 'left' shift, so `ashift` must be an arithmetic right shift". Actually your pattern is correct as you have perfect test coverage. Please ignore my comment...


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D143880/new/

https://reviews.llvm.org/D143880



More information about the llvm-commits mailing list