public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770
@ 2021-08-14 21:15 giulio.benetti at benettiengineering dot com
2021-08-16 9:10 ` [Bug target/101915] " rguenth at gcc dot gnu.org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: giulio.benetti at benettiengineering dot com @ 2021-08-14 21:15 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
Bug ID: 101915
Summary: Microblaze ICE: in extract_insn, at recog.c:2770
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: giulio.benetti at benettiengineering dot com
Target Milestone: ---
When building package lmbench on buildroot we get this error:
'''
/home/giuliobenetti/git/upstream/output-microblaze-lmbench-gcc11/host/bin/microblazeel-buildroot-linux-uclibc-gcc
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g0
-I/home/giuliobenetti/git/upstream/output-microblaze-lmbench-gcc11/host/bin/../microblazeel-buildroot-linux-uclibc/sysroot/usr/include/tirpc
-fno-tree-loop-distribute-patterns -DHAVE_off64_t -DHAVE_lseek64 -DRUSAGE
-DHAVE_uint=1 -DHAVE_int64_t=1 -DHAVE_pmap_clnt_h -DHAVE_socklen_t
-DHAVE_DRAND48 -DHAVE_SCHED_SETAFFINITY=1 -o ../bin/microblazeel/stream
stream.c ../bin/microblazeel/lmbench.a
-L/home/giuliobenetti/git/upstream/output-microblaze-lmbench-gcc11/host/bin/../microblazeel-buildroot-linux-uclibc/sysroot/usr/lib
-ltirpc
-L/home/giuliobenetti/git/upstream/output-microblaze-lmbench-gcc11/host/bin/../microblazeel-buildroot-linux-uclibc/sysroot/usr/lib
-ltirpc -lm
par_ops.c: In function ‘int64_bit_2’:
par_ops.c:94:1: error: unrecognizable insn:
94 | }
| ^
par_ops.c:99:9: note: in expansion of macro ‘BENCHMARK’
99 | BENCHMARK(benchmark, 2, REPEAT_2)
\
| ^~~~~~~~~
par_ops.c:215:1: note: in expansion of macro ‘PARALLEL_BENCHMARKS’
215 | PARALLEL_BENCHMARKS(int64_bit)
| ^~~~~~~~~~~~~~~~~~~
(insn 353 354 352 3 (set (reg/v:DI 24 r24 [orig:74 i0 ] [74])
(plus:DI (reg:DI 26 r26 [orig:48 _9 ] [48])
(const_int -1 [0xffffffffffffffff]))) -1
(nil))
during RTL pass: cprop_hardreg
par_ops.c:94:1: internal compiler error: in extract_insn, at recog.c:2770
94 | }
| ^
par_ops.c:99:9: note: in expansion of macro ‘BENCHMARK’
99 | BENCHMARK(benchmark, 2, REPEAT_2)
\
| ^~~~~~~~~
par_ops.c:215:1: note: in expansion of macro ‘PARALLEL_BENCHMARKS’
215 | PARALLEL_BENCHMARKS(int64_bit)
| ^~~~~~~~~~~~~~~~~~~
0x122170e diagnostic_impl(rich_location*, diagnostic_metadata const*, int, char
const*, __va_list_tag (*) [1], diagnostic_t)
???:0
0x12225ce internal_error(char const*, ...)
???:0
0x57a818 fancy_abort(char const*, int, char const*)
???:0
0x55c92f _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
???:0
0x55c951 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
???:0
0x55bc9e extract_insn(rtx_insn*) [clone .cold]
???:0
0xa24fec extract_constrain_insn(rtx_insn*)
???:0
0xa292c7 copyprop_hardreg_forward_1(basic_block_def*, value_data*) [clone
.isra.0]
???:0
0xa29fbd (anonymous namespace)::pass_cprop_hardreg::execute(function*)
???:0
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://bugs.buildroot.net/> for instructions.
make[3]: *** [Makefile:453: ../bin/microblazeel/par_ops] Error 1
make[2]: *** [Makefile:114: lmbench] Error 2
make[1]: *** [package/pkg-generic.mk:270:
/home/giuliobenetti/git/upstream/output-microblaze-lmbench-gcc11/build/lmbench-3.0-a9/.stamp_built]
Error 2
make: *** [Makefile:23: _all] Error 2
'''
To reproduce the bug:
'''
# git clone git://git.busybox.net/buildroot
# wget https://git.busybox.net/buildroot-test/tree/utils/br-reproduce-build
- modify BASE_GIT=... with your buildroot path in br-reproduce-build then:
# chmod a+x br-reproduce-build
# ./br-reproduce-build c6849f0f45b32e1f484fa5442b9d313fff4b2e8c
'''
I've found that it can be worked around disabling the optimization passing -O0
to CFLAGS.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
@ 2021-08-16 9:10 ` rguenth at gcc dot gnu.org
2021-08-16 9:20 ` giulio.benetti at benettiengineering dot com
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-08-16 9:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
what GCC version is this?
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
2021-08-16 9:10 ` [Bug target/101915] " rguenth at gcc dot gnu.org
@ 2021-08-16 9:20 ` giulio.benetti at benettiengineering dot com
2021-08-19 20:56 ` thomas.petazzoni@free-electrons.com
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: giulio.benetti at benettiengineering dot com @ 2021-08-16 9:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
--- Comment #2 from Giulio Benetti <giulio.benetti at benettiengineering dot com> ---
Ah yes, I’ve forgotten. I’ve tested up to gcc version 11.1.0, but I suspect it
happens on master branch too.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
2021-08-16 9:10 ` [Bug target/101915] " rguenth at gcc dot gnu.org
2021-08-16 9:20 ` giulio.benetti at benettiengineering dot com
@ 2021-08-19 20:56 ` thomas.petazzoni@free-electrons.com
2021-08-20 17:49 ` giulio.benetti at benettiengineering dot com
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: thomas.petazzoni@free-electrons.com @ 2021-08-19 20:56 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
Thomas Petazzoni <thomas.petazzoni@free-electrons.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |thomas.petazzoni@free-elect
| |rons.com
--- Comment #3 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> ---
Giulio: please provide a pre-processed version of the file that causes the
build issue, so that gcc developers can be more easily reproduce. They are
probably not familiar with Buildroot, and it takes a while to do the whole
build. Thanks!
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
` (2 preceding siblings ...)
2021-08-19 20:56 ` thomas.petazzoni@free-electrons.com
@ 2021-08-20 17:49 ` giulio.benetti at benettiengineering dot com
2021-08-20 18:04 ` giulio.benetti at benettiengineering dot com
2021-08-23 8:18 ` marxin at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: giulio.benetti at benettiengineering dot com @ 2021-08-20 17:49 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
--- Comment #4 from Giulio Benetti <giulio.benetti at benettiengineering dot com> ---
Created attachment 51333
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51333&action=edit
Pre-processed par_ops.c(par_ops.i)
As suggested by Thomas here is pre-processed par_ops.c(par_ops.i) to help you
fix the bug.
Hope this is enough, otherwise ask me and I'll provide what you need.
Thank you
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
` (3 preceding siblings ...)
2021-08-20 17:49 ` giulio.benetti at benettiengineering dot com
@ 2021-08-20 18:04 ` giulio.benetti at benettiengineering dot com
2021-08-23 8:18 ` marxin at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: giulio.benetti at benettiengineering dot com @ 2021-08-20 18:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
--- Comment #5 from Giulio Benetti <giulio.benetti at benettiengineering dot com> ---
Created attachment 51336
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51336&action=edit
Pre-processed par_ops.c(par_ops.s)
Here is the assembler file too.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/101915] Microblaze ICE: in extract_insn, at recog.c:2770
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
` (4 preceding siblings ...)
2021-08-20 18:04 ` giulio.benetti at benettiengineering dot com
@ 2021-08-23 8:18 ` marxin at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-08-23 8:18 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101915
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |marxin at gcc dot gnu.org
Last reconfirmed| |2021-08-23
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
Reduced test-case:
$ cat par_ops.i
typedef int int64_t __attribute__((__mode__(__DI__)));
typedef int64_t int64;
int64 int64_bit_3_r0, int64_bit_3_s0, int64_bit_3_r1, int64_bit_3_s1,
int64_bit_3_r3, int64_bit_3_s3;
int int64_bit_3_iterations;
void
int64_bit_3() {
int64 i0 = (int64_bit_3_s0 << 2) - 1;
while (int64_bit_3_iterations--) {
i0 -= 1;
int64_bit_3_s0 ^= int64_bit_3_r0 |= i0;
int64_bit_3_s1 ^= int64_bit_3_r1 |= int64_bit_3_s3 ^= int64_bit_3_r3 |=
int64_bit_3_s3;
}
}
$ ./xgcc -B. par_ops.i -c -O2
par_ops.i: In function ‘int64_bit_3’:
par_ops.i:16:1: error: unrecognizable insn:
16 | }
| ^
(insn 179 180 119 3 (set (reg/v:DI 4 r4 [orig:53 i0 ] [53])
(plus:DI (reg:DI 10 r10 [orig:42 _2 ] [42])
(const_int -1 [0xffffffffffffffff]))) -1
(nil))
during RTL pass: cprop_hardreg
par_ops.i:16:1: internal compiler error: in extract_insn, at recog.c:2769
0x665017 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
/home/marxin/Programming/gcc2/gcc/rtl-error.c:108
0x665033 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
/home/marxin/Programming/gcc2/gcc/rtl-error.c:116
0x6632e5 extract_insn(rtx_insn*)
/home/marxin/Programming/gcc2/gcc/recog.c:2769
0xcef2b8 extract_constrain_insn(rtx_insn*)
/home/marxin/Programming/gcc2/gcc/recog.c:2668
0xcf4167 copyprop_hardreg_forward_1
/home/marxin/Programming/gcc2/gcc/regcprop.c:825
0xcf5053 execute
/home/marxin/Programming/gcc2/gcc/regcprop.c:1390
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-08-23 8:18 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-14 21:15 [Bug c/101915] New: Microblaze ICE: in extract_insn, at recog.c:2770 giulio.benetti at benettiengineering dot com
2021-08-16 9:10 ` [Bug target/101915] " rguenth at gcc dot gnu.org
2021-08-16 9:20 ` giulio.benetti at benettiengineering dot com
2021-08-19 20:56 ` thomas.petazzoni@free-electrons.com
2021-08-20 17:49 ` giulio.benetti at benettiengineering dot com
2021-08-20 18:04 ` giulio.benetti at benettiengineering dot com
2021-08-23 8:18 ` marxin at gcc dot gnu.org
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).