public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/111643] New: __attribute__((flatten)) with -O1 runs out of memory (killed cc1)
@ 2023-09-29 19:49 lukas.graetz@tu-darmstadt.de
  2023-09-29 19:52 ` [Bug ipa/111643] " pinskia at gcc dot gnu.org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: lukas.graetz@tu-darmstadt.de @ 2023-09-29 19:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111643

            Bug ID: 111643
           Summary: __attribute__((flatten)) with -O1 runs out of memory
                    (killed cc1)
           Product: gcc
           Version: 13.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: lukas.graetz@tu-darmstadt.de
  Target Milestone: ---

Created attachment 56017
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56017&action=edit
C file

When I run

    gcc -c -O0 runs_out_of_memory.i -o runs_out_of_memory.o

(see the attached .i file) everything is fine. But when I run

    gcc -c -O1 runs_out_of_memory.i -o runs_out_of_memory.o

then I get:

    gcc: fatal error: Killed signal terminated program cc1

Apparently, quickly runs out of memory. I have 16 GB ram and the program is
rather simple. I tested it with gcc versions 9.4.0, 5.1 and 13.2 (target
x86_64-linux-gnu) on ubuntu 20.04.

I believe the problem is the __attribute__((flatten)) on several methods.

How I created the source file: The code comes from busybox (file
coreutils/expr.c) and musl header files. Additionally, I replaced every
function 'name' with 'name_original' and added a wrapper with
__attribute__((flatten)), for later instrumentation (I did this with a script).
I used that attribute, because to reduce the overhead of the wrapper functions
and I believe this should be fine. My reason why I introduced the wrappers in
the first place was to allow a fine-grained instrumentation of these functions.

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2023-10-06 22:03 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-29 19:49 [Bug c/111643] New: __attribute__((flatten)) with -O1 runs out of memory (killed cc1) lukas.graetz@tu-darmstadt.de
2023-09-29 19:52 ` [Bug ipa/111643] " pinskia at gcc dot gnu.org
2023-09-29 20:39 ` glisse at gcc dot gnu.org
2023-09-30  6:19 ` lukas.graetz@tu-darmstadt.de
2023-10-01  0:53 ` lukas.graetz@tu-darmstadt.de
2023-10-01  1:13 ` pinskia at gcc dot gnu.org
2023-10-04  9:21 ` rguenth at gcc dot gnu.org
2023-10-05  8:26 ` cvs-commit at gcc dot gnu.org
2023-10-05  9:02 ` rguenth at gcc dot gnu.org
2023-10-06 16:34 ` lukas.graetz@tu-darmstadt.de
2023-10-06 16:45 ` amonakov at gcc dot gnu.org
2023-10-06 21:31 ` lukas.graetz@tu-darmstadt.de
2023-10-06 21:37 ` pinskia at gcc dot gnu.org
2023-10-06 21:40 ` pinskia at gcc dot gnu.org
2023-10-06 22:03 ` lukas.graetz@tu-darmstadt.de

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).