https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126180
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |14.5
Component|target |middle-end
Last reconfirmed| |2026-07-09
CC| |jsm28 at gcc dot gnu.org
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed. There's a single double typed constant in the initializer:
<constructor 0x7ffff69dd678
type <vector_type 0x7ffff69ccb28 __m512
type <real_type 0x7ffff68252a0 float SF
size <integer_cst 0x7ffff681f1e0 constant 32>
unit-size <integer_cst 0x7ffff681f1f8 constant 4>
align:32 warn_if_not_align:0 symtab:0 alias-set 2 canonical-type
0x7ffff68252a0 precision:32
pointer_to_this <pointer_type 0x7ffff6825930>>
sizes-gimplified BLK
size <integer_cst 0x7ffff681f660 constant 512>
unit-size <integer_cst 0x7ffff69ac690 constant 64>
align:512 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7ffff69cc9d8
attributes <tree_list 0x7ffff69cb988
purpose <identifier_node 0x7ffff69fc140 may_alias>> nunits:16>
constant static length:16
idx <integer_cst 0x7ffff681f018 type <integer_type 0x7ffff681d0a8
bitsizetype> constant 0>
val <real_cst 0x7ffff681c0f0 type <real_type 0x7ffff68252a0 float>
...
idx <integer_cst 0x7ffff69dd558 type <integer_type 0x7ffff681d0a8
bitsizetype> constant 15>
val <nop_expr 0x7ffff69beca0 type <real_type 0x7ffff68252a0 float>
constant
arg:0 <real_cst 0x7ffff681c3c0 type <real_type 0x7ffff6825348 double>
constant
1.000000000000000055511151231257827021181583404541015625e-1>>>
since this is a runtime initializer we shouldn't have gimplified it to
try
{
v = *.LC0;
out = v;
}
finally
{
v = {CLOBBER(eos)};
}
we do have to reflect the current rounding mode for non-static initializer
IIRC.