From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17748 invoked by alias); 11 Jan 2010 15:54:51 -0000 Received: (qmail 17644 invoked by alias); 11 Jan 2010 15:54:36 -0000 Date: Mon, 11 Jan 2010 15:54:00 -0000 Message-ID: <20100111155436.17643.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug lto/42665] Internal compiler exception in with gfortran when using -fwhole-program -flto -fopenmp In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenther at suse dot de" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-01/txt/msg01243.txt.bz2 ------- Comment #8 from rguenther at suse dot de 2010-01-11 15:54 ------- Subject: Re: Internal compiler exception in with gfortran when using -fwhole-program -flto -fopenmp On Mon, 11 Jan 2010, jjcogliati-r1 at yahoo dot com wrote: > > > ------- Comment #7 from jjcogliati-r1 at yahoo dot com 2010-01-11 15:50 ------- > (In reply to comment #6) > > > Try > > > > Index: gcc/gimple.c > > =================================================================== > > --- gcc/gimple.c (revision 155739) > > +++ gcc/gimple.c (working copy) > > @@ -3707,8 +3707,10 @@ iterative_hash_gimple_type (tree type, h > > /* For integer types hash the types min/max values and the string flag. > > */ > > if (TREE_CODE (type) == INTEGER_TYPE) > > { > > - v = iterative_hash_expr (TYPE_MIN_VALUE (type), v); > > - v = iterative_hash_expr (TYPE_MAX_VALUE (type), v); > > + if (TYPE_MIN_VALUE (type)) > > + v = iterative_hash_expr (TYPE_MIN_VALUE (type), v); > > + if (TYPE_MAX_VALUE (type)) > > + v = iterative_hash_expr (TYPE_MAX_VALUE (type), v); > > v = iterative_hash_hashval_t (TYPE_STRING_FLAG (type), v); > > } > > > > > > > I tried that patch. Still errors out with backtrace: > #0 iterative_hash_expr (t=0x7ffff1e96b70, val=154387133) > at ../../gcc-4.5-20100107/gcc/tree.c:6592 > #1 0x00000000005ee1fc in iterative_hash_gimple_type (type=0x7ffff1df3888, > val=, sccstack=0x7fffffffda38, sccstate=0x126a440, > sccstate_obstack=0x7fffffffd9e0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3713 > #2 0x00000000005ee843 in visit (t=0x7ffff1df3888, state=0x126b4b0, > v=1159414094, sccstack=0x7fffffffda38, sccstate=0x126a440, > sccstate_obstack=0x7fffffffd9e0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3599 > #3 0x00000000005ee276 in iterative_hash_gimple_type (type=0x7ffff1df37e0, > val=, sccstack=0x7fffffffda38, sccstate=0x126a440, > sccstate_obstack=0x7fffffffd9e0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3722 > #4 0x00000000005ee843 in visit (t=0x7ffff1df37e0, state=0x126b4a0, > v=4237831805, sccstack=0x7fffffffda38, sccstate=0x126a440, > sccstate_obstack=0x7fffffffd9e0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3599 > #5 0x00000000005ee180 in iterative_hash_gimple_type (type=0x7ffff1df3bd0, > val=, sccstack=0x7fffffffda38, sccstate=0x126a440, > sccstate_obstack=0x7fffffffd9e0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3703 > #6 0x00000000005ee6eb in gimple_type_hash (p=0x7ffff1df3bd0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3831 > #7 0x0000000000bfb821 in htab_find_slot (htab=0x11de980, > element=0x7ffff1df3bd0, insert=INSERT) > at ../../gcc-4.5-20100107/libiberty/hashtab.c:681 > #8 0x00000000005f76e3 in gimple_register_type (t=0x7ffff1df3bd0) > at ../../gcc-4.5-20100107/gcc/gimple.c:3873 > #9 0x00000000005f76c6 in gimple_register_type (t=0x7ffff1df3738) > at ../../gcc-4.5-20100107/gcc/gimple.c:3868 > #10 0x000000000048cbb7 in lto_read_in_decl_state (data=, > state=) at ../../gcc-4.5-20100107/gcc/lto/lto.c:174 > #11 0x000000000048f036 in lto_read_decls (resolutions=, > data=, decl_data=) > at ../../gcc-4.5-20100107/gcc/lto/lto.c:237 > #12 lto_file_read (resolutions=, > data=, decl_data=) > at ../../gcc-4.5-20100107/gcc/lto/lto.c:377 > #13 read_cgraph_and_symbols (resolutions=, > data=, decl_data=) > at ../../gcc-4.5-20100107/gcc/lto/lto.c:1839 > #14 lto_main (resolutions=, data=, > decl_data=) > at ../../gcc-4.5-20100107/gcc/lto/lto.c:2061 > #15 0x000000000073fc26 in compile_file () > at ../../gcc-4.5-20100107/gcc/toplev.c:1053 > #16 do_compile () at ../../gcc-4.5-20100107/gcc/toplev.c:2405 > #17 toplev_main () at ../../gcc-4.5-20100107/gcc/toplev.c:2447 > #18 0x000000378c01eb1d in __libc_start_main (main=, > argc=, ubp_av=, > init=, fini=, > rtld_fini=, stack_end=) > at libc-start.c:220 > > Same generally looking types as above (ERROR_MARK, INTEGER_TYPE ...) > > Is there anyway for me to find out what filename and line number are being > compiled at this point? That would help me figure out a smaller testcase. Not really. A big testcase is ok - we have automated tools to reduce it. Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42665