{
rtx x = builder.elt (i + nelts_reqd - n_trailing_constants);
if (!valid_for_const_vector_p (elem_mode, x))
- x = const0_rtx;
+ x = CONST0_RTX (elem_mode);
v.quick_push (x);
}
rtx const_vec = v.build ();
--- /dev/null
+/* { dg-options "-mcpu=neoverse-512tvb -frounding-math -msve-vector-bits=512" } */
+
+typedef float __attribute__((__vector_size__ (64))) F;
+
+F
+foo (void)
+{
+ return (F){68435453, 0, 0, 0, 0, 0, 0, 5, 0, 431144844};
+}
--- /dev/null
+/* { dg-options "-mcpu=neoverse-512tvb -msve-vector-bits=512" } */
+
+typedef float __attribute__((__vector_size__ (64))) F;
+
+F
+foo (float t)
+{
+ return (F){t, 0, 0, 0, 0, 0, 0, 5, 0, t};
+}
--- /dev/null
+/* { dg-options "-mcpu=neoverse-v1 -frounding-math -msve-vector-bits=256" } */
+
+typedef _Float16 __attribute__((__vector_size__ (32))) F;
+
+F
+foo (void)
+{
+ return (F){0, 6270, 0, 0, 0, 0, 0, 0, 3229, 0, 40};
+}