[PATCH 0/3] tcg: Lower deposit/extract2 during optimize

Richard Henderson posted 3 patches 2 weeks, 5 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260119000740.50516-1-richard.henderson@linaro.org
Maintainers: Richard Henderson <richard.henderson@linaro.org>
tcg/optimize.c | 257 ++++++++++++++++++++++++++++++++++++++++++++-----
tcg/tcg-op.c   | 174 ++++++---------------------------
2 files changed, 262 insertions(+), 169 deletions(-)
[PATCH 0/3] tcg: Lower deposit/extract2 during optimize
Posted by Richard Henderson 2 weeks, 5 days ago
The idea is that we can do a better job of lowering once
we have a firm idea of which operands overlap, which are
constants, and the like.

The first version of this was almost 2 years ago:

https://lore.kernel.org/qemu-devel/20240312143839.136408-16-richard.henderson@linaro.org/

This version is fairly simplified by not having to handle
TCG_TARGET_REG_BITS == 32 anymore.  Some of Paolo's patches
to choose and vs shift could be incorporated here, but during
optimize instead of initial code generation.


r~


Richard Henderson (3):
  tcg/optimize: Lower unsupported deposit during optimize
  tcg/optimize: Lower unsupported extract2 during optimize
  tcg: Expand missing rotri with extract2

 tcg/optimize.c | 257 ++++++++++++++++++++++++++++++++++++++++++++-----
 tcg/tcg-op.c   | 174 ++++++---------------------------
 2 files changed, 262 insertions(+), 169 deletions(-)

-- 
2.43.0
Re: [PATCH 0/3] tcg: Lower deposit/extract2 during optimize
Posted by Richard Henderson 3 days, 22 hours ago
Ping.

On 1/19/26 10:07, Richard Henderson wrote:
> The idea is that we can do a better job of lowering once
> we have a firm idea of which operands overlap, which are
> constants, and the like.
> 
> The first version of this was almost 2 years ago:
> 
> https://lore.kernel.org/qemu-devel/20240312143839.136408-16-richard.henderson@linaro.org/
> 
> This version is fairly simplified by not having to handle
> TCG_TARGET_REG_BITS == 32 anymore.  Some of Paolo's patches
> to choose and vs shift could be incorporated here, but during
> optimize instead of initial code generation.
> 
> 
> r~
> 
> 
> Richard Henderson (3):
>    tcg/optimize: Lower unsupported deposit during optimize
>    tcg/optimize: Lower unsupported extract2 during optimize
>    tcg: Expand missing rotri with extract2
> 
>   tcg/optimize.c | 257 ++++++++++++++++++++++++++++++++++++++++++++-----
>   tcg/tcg-op.c   | 174 ++++++---------------------------
>   2 files changed, 262 insertions(+), 169 deletions(-)
>