public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: gcc 3.1 ICE in make_label_edge on hppa1.1-hp-hpux10.20--bootstrap fails
@ 2001-07-17 10:10 Jan Hubicka
  0 siblings, 0 replies; 2+ messages in thread
From: Jan Hubicka @ 2001-07-17 10:10 UTC (permalink / raw)
  To: dave, gcc

Hi,

> Frame 2 doesn't match up with a call so the program may have gone wild.
> If I was to guess, I think the failure is caused by Jan Hubicka's patch
> to delete unnecessary labels.  Note that label=0x0 in the last call to
> make_label_edge.
Please try to CC me next time, so I will not miss the email.  The volume of
gcc lists is high and I can't say I am reading everything.

Sadly for me I would also guess that my CFG work is the purpose for the failure.

I've sent short time ago fix to redirect_edge, that should fix many misterious
problems that have appeared recently.  Can you please try that one and let me
know if it works?  If not, can I have the preprocessed file, so I can try it on
cross-compiler?

I am attaching the patch.
Thanks,
Honza

Tue Jul 17 18:48:08 CEST 2001  Jan Hubicka  <jh@suse.cz>

	* flow.c (redirect_edge_and_branch): Bail out on the complex edges.

Index: flow.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/flow.c,v
retrieving revision 1.429
diff -c -3 -p -r1.429 flow.c
*** flow.c	2001/07/17 04:55:23	1.429
--- flow.c	2001/07/17 16:47:03
*************** redirect_edge_and_branch (e, target)
*** 1777,1782 ****
--- 1777,1785 ----
    basic_block src = e->src;
    rtx insn = src->end;
  
+   if (e->flags & EDGE_COMPLEX)
+     return false;
+ 
    if (try_redirect_by_replacing_jump (e, target))
      return true;
    /* Do this fast path late, as we want above code to simplify for cases

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

* gcc 3.1 ICE in make_label_edge on hppa1.1-hp-hpux10.20--bootstrap fails
@ 2001-07-17  9:18 John David Anglin
  0 siblings, 0 replies; 2+ messages in thread
From: John David Anglin @ 2001-07-17  9:18 UTC (permalink / raw)
  To: gcc

The following ICE occurs building gcc 3.1 on hppa1.1-hp-hpux10.20 with
yesterdays cvs source:

/xxx/gnu/gcc-3.1/objdir/gcc/xgcc -B/xxx/gnu/gcc-3.1/objdir/gcc/ -nostdinc++ -L/xxx/gnu/gcc-3.1/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3/src -L/xxx/gnu/gcc-3.1/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3/src/.libs -B/usr/local/hppa1.1-hp-hpux10.20/bin/ -B/usr/local/hppa1.1-hp-hpux10.20/lib/ -isystem /usr/local/hppa1.1-hp-hpux10.20/include -I../../../../libstdc++-v3/../gcc -I../../../../libstdc++-v3/../include -I/xxx/gnu/gcc-3.1/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3/include/hppa1.1-hp-hpux10.20 -I/xxx/gnu/gcc-3.1/objdir/hppa1.1-hp-hpux10.20/libstdc++-v3/include -I../../../../libstdc++-v3/libsupc++ -g -O2 -fno-implicit-templates -Wall -Wno-format -W -Wwrite-strings -Winline -fdiagnostics-show-location=once -g -c ../../../../libstdc++-v3/libsupc++/eh_personality.cc
cc1plus: warning: changing search order for system directory "/usr/local/hppa1.1-hp-hpux10.20/include"
cc1plus: warning:   as it has already been specified as a system directory
In file included from ../../../../libstdc++-v3/libsupc++/eh_personality.cc:37:
../../../../gcc/unwind-pe.h: In function `unsigned int 
   size_of_encoded_value(unsigned char)':
../../../../gcc/unwind-pe.h:77: warning: control reaches end of non-void 
   function
../../../../gcc/unwind-pe.h: In function `_Unwind_Ptr 
   base_of_encoded_value(unsigned char, _Unwind_Context*)':
../../../../gcc/unwind-pe.h:105: warning: control reaches end of non-void 
   function
../../../../gcc/unwind-pe.h: In function `const unsigned char* 
   read_encoded_value_with_base(unsigned char, unsigned int, const unsigned 
   char*, _Unwind_Ptr*)':
../../../../gcc/unwind-pe.h:127: warning: `_Unwind_Ptr result' might be used 
   uninitialized in this function
../../../../libstdc++-v3/libsupc++/eh_personality.cc: In function `void 
   __cxa_call_unexpected(_Unwind_Exception*)':
../../../../libstdc++-v3/libsupc++/eh_personality.cc:403: warning: new 
   declaration `void __cxa_call_unexpected(_Unwind_Exception*)'
../../../../libstdc++-v3/libsupc++/eh_personality.cc:403: warning: ambiguates 
   built-in declaration `void __cxa_call_unexpected(void*)'
../../../../libstdc++-v3/libsupc++/eh_personality.cc: In function `void 
   __cxa_call_unexpected(_Unwind_Exception*)':
../../../../libstdc++-v3/libsupc++/eh_personality.cc:443: Internal error: 
   Segmentation fault

The error occurs here:

ion&) void __cxa_call_unexpected(_Unwind_Exception*)
Program received signal SIGSEGV, Segmentation fault.
make_label_edge (edge_cache=0x400b0908, src=0x400b4970, label=0x0, flags=20)
    at ../../gcc/flow.c:1419
1419      if (GET_CODE (label) != CODE_LABEL)

The backtrace is a bit strange:

(gdb) bt
#0  make_label_edge (edge_cache=0x400b0908, src=0x400b4970, label=0x0,
    flags=20) at ../../gcc/flow.c:1419
#1  0x29e528 in make_label_edge (edge_cache=0x400b0908, src=0x400b4970,
    label=0x0, flags=20) at ../../gcc/flow.c:1430
#2  0x29df4c in make_edges (label_value_list=0x7ab49100)
    at ../../gcc/flow.c:1221
#3  0x29cd30 in find_basic_blocks (f=0x7ab58d60, nregs=1074481520, file=0x0)
    at ../../gcc/flow.c:550
#4  0x1a504c in finish_eh_generation () at ../../gcc/except.c:2374
#5  0x22c4b8 in rest_of_compilation (decl=0x7adcbd20)
    at ../../gcc/toplev.c:2907
...

Frame 2 doesn't match up with a call so the program may have gone wild.
If I was to guess, I think the failure is caused by Jan Hubicka's patch
to delete unnecessary labels.  Note that label=0x0 in the last call to
make_label_edge.

On a different subject, when are we going to get a fix to the "changing
search order" problem?  This was noted well over a week ago and affects
different system configurations with varying severity.  I believe that
Harinath's comments < http://gcc.gnu.org/ml/gcc/2001-07/msg01163.html >
are bang on.  In my case, the install directory
"/usr/local/lib/gcc-lib/hppa1.1-hp-hpux10.20/3.1" exists, and this causes
the cpp pass to find "/usr/local/hppa1.1-hp-hpux10.20/include" as
"/usr/local/lib/gcc-lib/hppa1.1-hp-hpux10.20/3.1/../../../../hppa1.1-hp-hpux10.20/include"
and makes the "-isystem" in the command redundant.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)

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

end of thread, other threads:[~2001-07-17 10:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-07-17 10:10 gcc 3.1 ICE in make_label_edge on hppa1.1-hp-hpux10.20--bootstrap fails Jan Hubicka
  -- strict thread matches above, loose matches on Subject: below --
2001-07-17  9:18 John David Anglin

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).