https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94683
Bug ID: 94683
Summary: ICE in forwprop when folding to a VEC_PERM_EXPR
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: rsandifo at gcc dot gnu.org
Target Milestone: ---
Compiling this with -march=armv8.2-a+sve -msve-vector-bits=256 -O3:
#include <arm_sve.h>
typedef float v8sf __attribute__((vector_size(32)));
svfloat32_t
f (svbool_t pg, svfloat32_t x, svfloat32_t y)
{
v8sf a = svadd_x (pg, x, 1);
v8sf b = { a[0], a[0], a[2], a[2], a[4], a[4], a[6], a[6] };
return svdiv_x (pg, b, y);
}
gives:
foo.c: In function ‘f’:
foo.c:16:1: error: non-trivial conversion in ‘ssa_name’
16 | }
| ^
v8sf
__SVFloat32_t
b_17 = _16;
during GIMPLE pass: forwprop
dump file: foo.031t.forwprop1