[Bug lto/85248] [6/7/8 Regression] Miscompilation when using error function that returns
marxin at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Apr 9 11:50:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85248
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Unfortunately the test ICE for couple of MPX test-cases compiled with LTO (I
wish we had MPX already removed). So:
$ gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/lto/pr66221_*.c -flto
-mmpx -fcheck-pointer-bounds -O2
during IPA pass: comdats
lto1: internal compiler error: in ipa_comdats, at ipa-comdats.c:355
0x19c154c ipa_comdats
../../gcc/ipa-comdats.c:355
0x19c1744 execute
../../gcc/ipa-comdats.c:415
Problem is that one MPX clone is identified as nothrow, and then we do not
merge decls:
Merging nodes for test1.chkp. Candidates:
test1.chkp/5 (test1.chkp) @0x7ffff65af2e0
Type: function
Visibility: external public
next sharing asm name: 12
References:
Referring:
Read from file: pr66221_0.o
First run: 0
Function flags:
Called by: main.chkp/2 (1073741825 (estimated locally),1.00 per call)
Calls:
Is instrumented version.
test1.chkp/12 (test1.chkp) @0x7ffff65af8a0
Type: function definition analyzed
Visibility: externally_visible prevailing_def_ironly public artificial
previous sharing asm name: 5
References:
Referring: test1/11 (chkp)
Read from file: pr66221_1.o
First run: 0
Function flags: count: 1073741826 (estimated locally)
Called by: test1/11
Calls: __builtin_ia32_bndcu/16 (1073741825 (estimated locally),1.00 per call)
__builtin_ia32_bndcl/15 (1073741825 (estimated locally),1.00 per call)
Is instrumented version.
Not merging decls; DECL_ATTRIBUTES mismatch
And then we ICE in ipa-comdat. Ideas how to handle that? Should I somehow
ignore chkp clones in lto_symtab_merge_p?
More information about the Gcc-bugs
mailing list