public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM)
@ 2012-10-29 16:01 christophe.lyon at st dot com
2012-10-29 16:03 ` [Bug gcov-profile/55121] " christophe.lyon at st dot com
` (15 more replies)
0 siblings, 16 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
Bug #: 55121
Summary: ICE in if-convertion with PGO (ARM)
Classification: Unclassified
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: gcov-profile
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: christophe.lyon@st.com
Created attachment 28555
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28555
patch 1
Hi,
As discussed in
http://gcc.gnu.org/ml/gcc/2012-10/msg00330.html
then
http://gcc.gnu.org/ml/gcc/2012-10/msg00341.html
there is an ICE when compiling SPEC2k's GAP bench with GCC for ARM using
profiling data.
My tests are based upon SVN rev #191819, with 4 patches (attached)
submitted by Matthew Gretton-Dann.
You can reproduce the ICE with:
$ XXXX/cc1 -fpreprocessed eval.i -quiet -dumpbase eval.c -march=armv7-a
-mtune=cortex-a9 -mthumb -mfpu=neon -mvectorize-with-neon-quad
-mfloat-abi=softfp -mtls-dialect=gnu -auxbase-strip eval.o -g -O3 -version
-fprofile-use=YYY -fno-common -o eval.s
eval.c: In function 'Ge':
eval.c:792:1: internal compiler error: in df_compact_blocks, at df-core.c:1570
0x6917c1 df_compact_blocks()
/work1/lyon/Work/ARM/Linaro/sources/gcc-fsf-hot-cold-pgo/gcc/df-core.c:1570
0x62c3f6 compact_blocks()
/work1/lyon/Work/ARM/Linaro/sources/gcc-fsf-hot-cold-pgo/gcc/cfg.c:165
0x659b89 relink_block_chain(bool)
/work1/lyon/Work/ARM/Linaro/sources/gcc-fsf-hot-cold-pgo/gcc/cfgrtl.c:3112
0xeb7061 reorder_basic_blocks
/work1/lyon/Work/ARM/Linaro/sources/gcc-fsf-hot-cold-pgo/gcc/bb-reorder.c:2172
0xeb71b8 rest_of_handle_reorder_blocks
/work1/lyon/Work/ARM/Linaro/sources/gcc-fsf-hot-cold-pgo/gcc/bb-reorder.c:2237
It could be that calls to merge_blocks() in merge_if_block() should be
guarded by e.g. can_merge_blocks_p (combo_bb, join_bb).
Adding this line before calling
merge_blocks (combo_bb, join_bb);
makes the compilation succeed.
However, the resulting code is still not functional but that problem
may come from another module of the bench.
Also attached: eval.i and eval.gcda
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
@ 2012-10-29 16:03 ` christophe.lyon at st dot com
2012-10-29 16:04 ` christophe.lyon at st dot com
` (14 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:03 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #1 from christophe.lyon at st dot com 2012-10-29 16:03:16 UTC ---
Created attachment 28556
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28556
patch2
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
2012-10-29 16:03 ` [Bug gcov-profile/55121] " christophe.lyon at st dot com
2012-10-29 16:04 ` christophe.lyon at st dot com
@ 2012-10-29 16:04 ` christophe.lyon at st dot com
2012-10-29 16:05 ` christophe.lyon at st dot com
` (12 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #3 from christophe.lyon at st dot com 2012-10-29 16:04:42 UTC ---
Created attachment 28558
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28558
patch4
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
2012-10-29 16:03 ` [Bug gcov-profile/55121] " christophe.lyon at st dot com
@ 2012-10-29 16:04 ` christophe.lyon at st dot com
2012-10-29 16:04 ` christophe.lyon at st dot com
` (13 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #2 from christophe.lyon at st dot com 2012-10-29 16:03:56 UTC ---
Created attachment 28557
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28557
patch3
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (2 preceding siblings ...)
2012-10-29 16:04 ` christophe.lyon at st dot com
@ 2012-10-29 16:05 ` christophe.lyon at st dot com
2012-10-29 16:06 ` christophe.lyon at st dot com
` (11 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #4 from christophe.lyon at st dot com 2012-10-29 16:05:30 UTC ---
Created attachment 28559
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28559
pre-processed source
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (3 preceding siblings ...)
2012-10-29 16:05 ` christophe.lyon at st dot com
@ 2012-10-29 16:06 ` christophe.lyon at st dot com
2012-10-29 23:08 ` steven at gcc dot gnu.org
` (10 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-29 16:06 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #5 from christophe.lyon at st dot com 2012-10-29 16:06:24 UTC ---
Created attachment 28560
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28560
profiling data
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (4 preceding siblings ...)
2012-10-29 16:06 ` christophe.lyon at st dot com
@ 2012-10-29 23:08 ` steven at gcc dot gnu.org
2012-10-29 23:22 ` steven at gcc dot gnu.org
` (9 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-29 23:08 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-10-29
CC| |steven at gcc dot gnu.org
AssignedTo|unassigned at gcc dot |steven at gcc dot gnu.org
|gnu.org |
Ever Confirmed|0 |1
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (5 preceding siblings ...)
2012-10-29 23:08 ` steven at gcc dot gnu.org
@ 2012-10-29 23:22 ` steven at gcc dot gnu.org
2012-10-29 23:26 ` steven at gcc dot gnu.org
` (8 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-29 23:22 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #6 from Steven Bosscher <steven at gcc dot gnu.org> 2012-10-29 23:22:00 UTC ---
Can you please also add your configuration (cat gcc/configargs.h from your
build directory)?
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (6 preceding siblings ...)
2012-10-29 23:22 ` steven at gcc dot gnu.org
@ 2012-10-29 23:26 ` steven at gcc dot gnu.org
2012-10-29 23:41 ` steven at gcc dot gnu.org
` (7 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-29 23:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #7 from Steven Bosscher <steven at gcc dot gnu.org> 2012-10-29 23:25:48 UTC ---
(In reply to comment #0)
> eval.c: In function 'Ge':
> eval.c:792:1: internal compiler error: in df_compact_blocks, at df-core.c:1570
> 0x6917c1 df_compact_blocks()
This is not at r191819 or you're not sharing all your patches. Line
df-core.c:1570 at r191819 is a comment.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (7 preceding siblings ...)
2012-10-29 23:26 ` steven at gcc dot gnu.org
@ 2012-10-29 23:41 ` steven at gcc dot gnu.org
2012-10-29 23:54 ` steven at gcc dot gnu.org
` (6 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-29 23:41 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |WAITING
--- Comment #8 from Steven Bosscher <steven at gcc dot gnu.org> 2012-10-29 23:41:33 UTC ---
I cannot reproduce the problem with a cross-compiler from
powerpc64-unknown-linux-gnu to arm-eabi at r191819 with the
patches and flags from comment #0.
I verified that the profile is read back in correctly.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (8 preceding siblings ...)
2012-10-29 23:41 ` steven at gcc dot gnu.org
@ 2012-10-29 23:54 ` steven at gcc dot gnu.org
2012-10-30 0:00 ` steven at gcc dot gnu.org
` (5 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-29 23:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #9 from Steven Bosscher <steven at gcc dot gnu.org> 2012-10-29 23:54:10 UTC ---
Can you please also attach the output of -fdump-ipa-profile-all
which should be eval.c.041i.profile. I have my dump here, it should
be the same as yours.
Are you working on a 32-bit host? The counts are quite high, there
are some places where the count is multiplied by REG_BR_PROB_BASE
which is 10000. The highest count in my .profile dump is 42974935,
if such high counts are multiplied somewhere for scaling then this
may be an overflow issue that I can't see on powerpc64.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (9 preceding siblings ...)
2012-10-29 23:54 ` steven at gcc dot gnu.org
@ 2012-10-30 0:00 ` steven at gcc dot gnu.org
2012-10-30 12:53 ` christophe.lyon at st dot com
` (4 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu.org @ 2012-10-30 0:00 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |ASSIGNED
--- Comment #10 from Steven Bosscher <steven at gcc dot gnu.org> 2012-10-30 00:00:17 UTC ---
(In reply to comment #8)
> I cannot reproduce the problem with a cross-compiler from
> powerpc64-unknown-linux-gnu to arm-eabi at r191819 with the
> patches and flags from comment #0.
Ah, needs -freorder-blocks-and-partition too, of course.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (10 preceding siblings ...)
2012-10-30 0:00 ` steven at gcc dot gnu.org
@ 2012-10-30 12:53 ` christophe.lyon at st dot com
2012-10-30 12:55 ` christophe.lyon at st dot com
` (3 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-30 12:53 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #11 from christophe.lyon at st dot com 2012-10-30 12:53:23 UTC ---
Created attachment 28574
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28574
configargs.h
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (11 preceding siblings ...)
2012-10-30 12:53 ` christophe.lyon at st dot com
@ 2012-10-30 12:55 ` christophe.lyon at st dot com
2012-10-30 12:57 ` christophe.lyon at st dot com
` (2 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-30 12:55 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #12 from christophe.lyon at st dot com 2012-10-30 12:55:09 UTC ---
(In reply to comment #7)
> (In reply to comment #0)
> > eval.c: In function 'Ge':
> > eval.c:792:1: internal compiler error: in df_compact_blocks, at df-core.c:1570
> > 0x6917c1 df_compact_blocks()
>
> This is not at r191819 or you're not sharing all your patches. Line
> df-core.c:1570 at r191819 is a comment.
It is the revision suggested by my git clone; I believe it's OK, as hadn't
removed a couple debugging printf calls.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (12 preceding siblings ...)
2012-10-30 12:55 ` christophe.lyon at st dot com
@ 2012-10-30 12:57 ` christophe.lyon at st dot com
2012-10-30 13:18 ` christophe.lyon at st dot com
2012-10-30 13:23 ` christophe.lyon at st dot com
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-30 12:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #13 from christophe.lyon at st dot com 2012-10-30 12:57:21 UTC ---
(In reply to comment #10)
> (In reply to comment #8)
> > I cannot reproduce the problem with a cross-compiler from
> > powerpc64-unknown-linux-gnu to arm-eabi at r191819 with the
> > patches and flags from comment #0.
>
> Ah, needs -freorder-blocks-and-partition too, of course.
Yes sorry, I guess I had a cut & paste issue when I copied the options.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (13 preceding siblings ...)
2012-10-30 12:57 ` christophe.lyon at st dot com
@ 2012-10-30 13:18 ` christophe.lyon at st dot com
2012-10-30 13:23 ` christophe.lyon at st dot com
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-30 13:18 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #14 from christophe.lyon at st dot com 2012-10-30 13:18:15 UTC ---
Created attachment 28576
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28576
eval.c.041i.profile
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug gcov-profile/55121] ICE in if-convertion with PGO (ARM)
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
` (14 preceding siblings ...)
2012-10-30 13:18 ` christophe.lyon at st dot com
@ 2012-10-30 13:23 ` christophe.lyon at st dot com
15 siblings, 0 replies; 17+ messages in thread
From: christophe.lyon at st dot com @ 2012-10-30 13:23 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55121
--- Comment #15 from christophe.lyon at st dot com 2012-10-30 13:23:19 UTC ---
(In reply to comment #9)
> Can you please also attach the output of -fdump-ipa-profile-all
> which should be eval.c.041i.profile. I have my dump here, it should
> be the same as yours.
Done.
> Are you working on a 32-bit host? The counts are quite high, there
> are some places where the count is multiplied by REG_BR_PROB_BASE
> which is 10000. The highest count in my .profile dump is 42974935,
> if such high counts are multiplied somewhere for scaling then this
> may be an overflow issue that I can't see on powerpc64.
No, I am working on an x86_64 machine, and I expect configure to have auto
detected it (I didn't force --host)
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2012-10-30 13:23 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-29 16:01 [Bug gcov-profile/55121] New: ICE in if-convertion with PGO (ARM) christophe.lyon at st dot com
2012-10-29 16:03 ` [Bug gcov-profile/55121] " christophe.lyon at st dot com
2012-10-29 16:04 ` christophe.lyon at st dot com
2012-10-29 16:04 ` christophe.lyon at st dot com
2012-10-29 16:05 ` christophe.lyon at st dot com
2012-10-29 16:06 ` christophe.lyon at st dot com
2012-10-29 23:08 ` steven at gcc dot gnu.org
2012-10-29 23:22 ` steven at gcc dot gnu.org
2012-10-29 23:26 ` steven at gcc dot gnu.org
2012-10-29 23:41 ` steven at gcc dot gnu.org
2012-10-29 23:54 ` steven at gcc dot gnu.org
2012-10-30 0:00 ` steven at gcc dot gnu.org
2012-10-30 12:53 ` christophe.lyon at st dot com
2012-10-30 12:55 ` christophe.lyon at st dot com
2012-10-30 12:57 ` christophe.lyon at st dot com
2012-10-30 13:18 ` christophe.lyon at st dot com
2012-10-30 13:23 ` christophe.lyon at st dot com
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).