[Bug bootstrap/102527] [12 regression] out of memory compiling insn-emit.c
ro at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Sep 29 21:04:41 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102527
--- Comment #7 from Rainer Orth <ro at gcc dot gnu.org> ---
(In reply to Aldy Hernandez from comment #4)
> Can it be reproduced on a cross? If so, could you post the .ii file with
> your include file peculiarities?
I haven't tried, but expect it should work, provided you run on a 32-bit host
and perhaps limit VM consumption. I expect that depending on the host OSes
VM layout cc1plus may be able to use more of the 4 GB address space on one OS
than the other.
That said, there's a weird problem:
If I run a regular build, I get the `out of memory' error reported. Just
adding
-save-temps to the command line produces a couple of weird warnings/errors:
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_495(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_496(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_497(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_498(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_499(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_500(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_501(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md: In function ‘rtx_insn*
gen_split_502(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20130:29: error: this statement
may fall through [-Werror=implicit-fallthrough=]
20130 | code = swap_condition (code);
| ~~~~~~~~~~~~~~~^~~~~~
/var/gcc/reghunt/master/gcc/config/i386/i386.md:20133:5: note: here
20133 | case GE: case GEU:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/sse.md: In function ‘rtx_insn*
gen_split_2186(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/sse.md:18256:19: error: this statement
may fall through [-Werror=implicit-fallthrough=]
18256 | operands[1] = tmp;
| ~~~~~~~~~~~~^~~~~
/var/gcc/reghunt/master/gcc/config/i386/sse.md:18258:5: note: here
18258 | case 32:
| ^~~~
/var/gcc/reghunt/master/gcc/config/i386/sse.md: In function ‘rtx_insn*
gen_split_2187(rtx_insn*, rtx_def**)’:
/var/gcc/reghunt/master/gcc/config/i386/sse.md:18256:19: error: this statement
may fall through [-Werror=implicit-fallthrough=]
18256 | operands[1] = tmp;
| ~~~~~~~~~~~~^~~~~
/var/gcc/reghunt/master/gcc/config/i386/sse.md:18258:5: note: here
18258 | case 32:
| ^~~~
and (if adding -Wno-error to avoid that) while cc1plus still consumes in excess
of 3 GB VM space, the compilation finally succeeds.
I'm attaching the preprocessed output nonetheless; maybe it's still helpful.
More information about the Gcc-bugs
mailing list