mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-19 05:10:25 +08:00
[VECT] pr97929 fix
This addresses pr97929. The case for WIDEN_PLUS and WIDEN_MINUS were missing in vect_get_smallest_scalar_type. gcc/ChangeLog: PR tree-optimization/97929 * tree-vect-data-refs.c (vect_get_smallest_scalar_type): Add WIDEN_PLUS/WIDEN_MINUS case. gcc/testsuite/ChangeLog: * gcc.dg/vect/pr97929.c: New test.
This commit is contained in:
parent
703d2ac06f
commit
f5b902a9af
10
gcc/testsuite/gcc.dg/vect/pr97929.c
Normal file
10
gcc/testsuite/gcc.dg/vect/pr97929.c
Normal file
@ -0,0 +1,10 @@
|
||||
/* { dg-do compile } */
|
||||
#include <stdint.h>
|
||||
#define ARR_SIZE 1024
|
||||
extern void foo (int32_t *bar, int16_t a)
|
||||
{
|
||||
for( int i = 0; i < ARR_SIZE;i++)
|
||||
{
|
||||
bar[i] = a + 1;
|
||||
}
|
||||
}
|
@ -136,6 +136,8 @@ vect_get_smallest_scalar_type (stmt_vec_info stmt_info,
|
||||
|| gimple_assign_rhs_code (assign) == WIDEN_SUM_EXPR
|
||||
|| gimple_assign_rhs_code (assign) == WIDEN_MULT_EXPR
|
||||
|| gimple_assign_rhs_code (assign) == WIDEN_LSHIFT_EXPR
|
||||
|| gimple_assign_rhs_code (assign) == WIDEN_PLUS_EXPR
|
||||
|| gimple_assign_rhs_code (assign) == WIDEN_MINUS_EXPR
|
||||
|| gimple_assign_rhs_code (assign) == FLOAT_EXPR))
|
||||
{
|
||||
tree rhs_type = TREE_TYPE (gimple_assign_rhs1 (assign));
|
||||
|
Loading…
x
Reference in New Issue
Block a user