[PATCH] tcg/optimize: Save o_mask in fold_masks_zosa_int

Richard Henderson posted 1 patch 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260106225204.5859-1-richard.henderson@linaro.org
Maintainers: Richard Henderson <richard.henderson@linaro.org>
tcg/optimize.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] tcg/optimize: Save o_mask in fold_masks_zosa_int
Posted by Richard Henderson 1 month ago
When adding o_mask to this function, we used it in a
couple of places but failed to save it for future use.
Also, update a related comment.

Cc: qemu-stable@nongnu.org
Fixes: 9e397cc0df9 ("tcg/optimize: Introduce fold_masks_zosa")
Reported-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 tcg/optimize.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tcg/optimize.c b/tcg/optimize.c
index c546e8910b..23278799af 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -1088,8 +1088,9 @@ static bool fold_masks_zosa_int(OptContext *ctx, TCGOp *op,
 
     ti = ts_info(ts);
     ti->z_mask = z_mask;
+    ti->o_mask = o_mask;
 
-    /* Canonicalize s_mask and incorporate data from z_mask. */
+    /* Canonicalize s_mask and incorporate data from [zo]_mask. */
     rep = clz64(~s_mask);
     rep = MAX(rep, clz64(z_mask));
     rep = MAX(rep, clz64(~o_mask));
-- 
2.43.0
Re: [PATCH] tcg/optimize: Save o_mask in fold_masks_zosa_int
Posted by Philippe Mathieu-Daudé 1 month ago
On 6/1/26 23:52, Richard Henderson wrote:
> When adding o_mask to this function, we used it in a
> couple of places but failed to save it for future use.
> Also, update a related comment.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: 9e397cc0df9 ("tcg/optimize: Introduce fold_masks_zosa")

I think this is:
Fixes: 56f15f67ea1 ("tcg/optimize: Add one's mask to TempOptInfo")

> Reported-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>   tcg/optimize.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tcg/optimize.c b/tcg/optimize.c
> index c546e8910b..23278799af 100644
> --- a/tcg/optimize.c
> +++ b/tcg/optimize.c
> @@ -1088,8 +1088,9 @@ static bool fold_masks_zosa_int(OptContext *ctx, TCGOp *op,
>   
>       ti = ts_info(ts);
>       ti->z_mask = z_mask;
> +    ti->o_mask = o_mask;

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>


Re: [PATCH] tcg/optimize: Save o_mask in fold_masks_zosa_int
Posted by Pierrick Bouvier 1 month ago
On 1/6/26 2:52 PM, Richard Henderson wrote:
> When adding o_mask to this function, we used it in a
> couple of places but failed to save it for future use.
> Also, update a related comment.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: 9e397cc0df9 ("tcg/optimize: Introduce fold_masks_zosa")
> Reported-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>   tcg/optimize.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tcg/optimize.c b/tcg/optimize.c
> index c546e8910b..23278799af 100644
> --- a/tcg/optimize.c
> +++ b/tcg/optimize.c
> @@ -1088,8 +1088,9 @@ static bool fold_masks_zosa_int(OptContext *ctx, TCGOp *op,
>   
>       ti = ts_info(ts);
>       ti->z_mask = z_mask;
> +    ti->o_mask = o_mask;
>   
> -    /* Canonicalize s_mask and incorporate data from z_mask. */
> +    /* Canonicalize s_mask and incorporate data from [zo]_mask. */
>       rep = clz64(~s_mask);
>       rep = MAX(rep, clz64(z_mask));
>       rep = MAX(rep, clz64(~o_mask));

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>