https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121394
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[16 Regression][gcn] Since |[14/15/16 Regression] Since
|r16-2595-gf1c80147641783: |r16-2595-gf1c80147641783:
|link-time error: |link-time error:
|libm_a-e_atan2.o):(.rodata. |libm_a-e_atan2.o):(.rodata.
|cst32): SHF_MERGE section |cst32): SHF_MERGE section
|size (56) must be a |size (56) must be a
|multiple of sh_entsize (32) |multiple of sh_entsize (32)
Target Milestone|16.0 |14.4
Component|target |middle-end
Target|gcn |gcn i?86
--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Found a C++ testcase which shows the same issue starting in GCC 14
(r14-1500-g4d935f52b0d5c0), happens on i?86 (or x86_64 with -m32):
```
#include <initializer_list>
std::initializer_list<long double> a = {0.3l};
```
We get:
```
.section .rodata.cst16,"aM",@progbits,16
.align 16
.type _ZGR1a_, @object
.size _ZGR1a_, 12
_ZGR1a_:
.long -1717986918
.long -1717986919
.long 16381
.text
```
Which is wrong and missed the .align there.
The patch I have fixes both.