[PATCH] compiler-gcc.h: Remove ancient workaround for gcc PR 58670
Christophe Leroy
christophe.leroy at csgroup.eu
Fri Aug 26 17:38:41 AEST 2022
Le 26/08/2022 à 09:02, Christophe Leroy a écrit :
>
>
> Le 25/08/2022 à 20:08, Segher Boessenkool a écrit :
>> Hi!
>>
>> On Thu, Aug 25, 2022 at 04:00:52PM +0530, Naveen N. Rao wrote:
>>> This is causing a build issue on ppc64le with a new patch replacing use
>>> of unreachable() with __builtin_unreachable() in __WARN_FLAGS():
>>> https://lore.kernel.org/linuxppc-dev/20220808114908.240813-2-sv@linux.ibm.com/
>>
>> What is the compiler version? If this is a GCC version that is still
>> supported, could you please open a PR? <https://gcc.gnu.org/bugs.html>
>>
>>> during RTL pass: combine
>>> In file included from /linux/kernel/locking/rtmutex_api.c:9:
>>> /linux/kernel/locking/rtmutex.c: In function
>>> '__rt_mutex_slowlock.constprop':
>>> /linux/kernel/locking/rtmutex.c:1612:1: internal compiler error: in
>>> purge_dead_edges, at cfgrtl.c:3369
>>> 1612 | }
>>> | ^
>>> 0x142817c internal_error(char const*, ...)
>>> ???:0
>>> 0x5c8a1b fancy_abort(char const*, int, char const*)
>>> ???:0
>>> 0x72017f purge_all_dead_edges()
>>> ???:0
>>> Please submit a full bug report,
>>> with preprocessed source if appropriate.
>>> Please include the complete backtrace with any bug report.
>>> See <file:///usr/share/doc/gcc-11/README.Bugs> for instructions.
>>
>> (For some reason your compiler does not show compiler source code file
>> names or line numbers.)
>>
>> So it is GCC 11... is it 11.3? If not, please try with that.
>
> With gcc 11.3 I get:
>
> CC kernel/locking/rtmutex_api.o
> during RTL pass: combine
> In file included from kernel/locking/rtmutex_api.c:9:
> kernel/locking/rtmutex.c: In function '__rt_mutex_slowlock.constprop':
> kernel/locking/rtmutex.c:1612:1: internal compiler error: in
> purge_dead_edges, at cfgrtl.c:3369
> 1612 | }
> | ^
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <https://gcc.gnu.org/bugs/> for instructions.
> make[2]: *** [scripts/Makefile.build:249 : kernel/locking/rtmutex_api.o]
> Erreur 1
> make[1]: *** [scripts/Makefile.build:465 : kernel/locking] Erreur 2
> make: *** [Makefile:1857 : kernel] Erreur 2
>
>
> With gcc 12.2 I get:
>
> CC kernel/locking/rtmutex_api.o
> during RTL pass: combine
> In file included from kernel/locking/rtmutex_api.c:9:
> kernel/locking/rtmutex.c: In function '__rt_mutex_slowlock.constprop':
> kernel/locking/rtmutex.c:1612:1: internal compiler error: in
> purge_dead_edges, at cfgrtl.cc:3347
> 1612 | }
> | ^
> Please submit a full bug report, with preprocessed source (by using
> -freport-bug).
> See <https://gcc.gnu.org/bugs/> for instructions.
> make[2]: *** [scripts/Makefile.build:249 : kernel/locking/rtmutex_api.o]
> Erreur 1
> make[1]: *** [scripts/Makefile.build:465 : kernel/locking] Erreur 2
> make: *** [Makefile:1857 : kernel] Erreur 2
>
Same problem with 10.3, 9.5, 8.5 and 5.5
>
>>
>>> So, it looks like gcc still has issues with certain uses of asm goto.
>>
>> Could be. Please attach preprocessed code (or reduced code that shows
>> the same problem if you have that / can make that). Thanks!
>>
>>
>> Segher
More information about the Linuxppc-dev
mailing list