https://gcc.gnu.org/g:d95d65c4a6277aa026cfd39c4564939ae298a0ba

commit r16-7657-gd95d65c4a6277aa026cfd39c4564939ae298a0ba
Author: Richard Biener <[email protected]>
Date:   Tue Feb 24 09:50:17 2026 +0100

    tree-optimization/123117 - fix sign conversion check
    
    The following fixes the sign conversion check added to properly check
    whether the BIT_FIELD_REF does a sign conversion on the original
    vector elements instead of a conversion to the target constructor
    element type.  This avoids disabling all unpacking conversions.
    
            PR tree-optimization/123117
            PR target/120234
            * tree-ssa-forwprop.cc (simplify_vector_constructor): Fix
            sign conversion check guarding unpacking.

Diff:
---
 gcc/tree-ssa-forwprop.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/tree-ssa-forwprop.cc b/gcc/tree-ssa-forwprop.cc
index 931c0798a813..b5544414ca6e 100644
--- a/gcc/tree-ssa-forwprop.cc
+++ b/gcc/tree-ssa-forwprop.cc
@@ -4080,7 +4080,7 @@ simplify_vector_constructor (gimple_stmt_iterator *gsi)
                  == TYPE_PRECISION (TREE_TYPE (type)))
              && orig_elem_type[0]
              && useless_type_conversion_p (orig_elem_type[0],
-                                           TREE_TYPE (type))
+                                           TREE_TYPE (TREE_TYPE (orig[0])))
              && mode_for_vector (as_a <scalar_mode>
                                  (TYPE_MODE (TREE_TYPE (TREE_TYPE (orig[0])))),
                                  nelts * 2).exists ()
@@ -4122,7 +4122,7 @@ simplify_vector_constructor (gimple_stmt_iterator *gsi)
                       == 2 * TYPE_PRECISION (TREE_TYPE (type)))
                   && orig_elem_type[0]
                   && useless_type_conversion_p (orig_elem_type[0],
-                                                TREE_TYPE (type))
+                                                TREE_TYPE (TREE_TYPE 
(orig[0])))
                   && mode_for_vector (as_a <scalar_mode>
                                         (TYPE_MODE
                                           (TREE_TYPE (TREE_TYPE (orig[0])))),

Reply via email to