Bug 41821 - ICE in LTO when linking
Summary: ICE in LTO when linking
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: lto (show other bugs)
Version: lto
: P3 normal
Target Milestone: ---
Assignee: Richard Biener
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-25 01:14 UTC by James McKelvey
Modified: 2009-10-27 11:31 UTC (History)
4 users (show)

See Also:
Host: alphaev56-unknown-linux-gnu
Target: alphaev56-unknown-linux-gnu
Build: alphaev56-unknown-linux-gnu
Known to work:
Known to fail:
Last reconfirmed: 2009-10-27 09:37:54


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description James McKelvey 2009-10-25 01:14:47 UTC
I get this error when linking in most of my project's regression tests, but always at the same address in gimple.c.


/usr/local/bin/g++  -O3 -DNDEBUG     -DUSE_INTL=1 -DUSE_MUTEX=1 -findirect-inlining -Winline -flto -pedantic-errors -Werror -ansi -fno-common -Wall -Wold-style-cast -Wsign-promo -Wpointer-arith -Wundef -Wwrite-strings -Winvalid-pch -Woverloaded-virtual -Wcast-qual -Wextra -Wredundant-decls -Wshadow -Wcast-align -Wcomment -fstrict-aliasing -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wlogical-op -Wconversion -Wsign-conversion -Wmissing-declarations -Wdeprecated -ftree-switch-conversion -Wuninitialized -Wparentheses -Wunused -fvisibility-inlines-hidden -MMD      -fimplicit-templates  -Wl,-warn-common -L.. -o stest0.exe stest0.o -lPatternDriver -lintl -lpthread
lto1: internal compiler error: in gimple_types_compatible_p, at gimple.c:3488
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper: /usr/local/bin/g++ returned 1 exit status
collect2: lto-wrapper returned 1 exit status



uname -a
Linux alpha1 2.4.9-40 #1 Mon Sep 23 08:14:02 EDT 2002 alpha unknown

g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/alphaev56-unknown-linux-gnu/4.5.0/lto-wrapper
Target: alphaev56-unknown-linux-gnu
Configured with: ../gcc/configure --verbose --enable-languages=c++ --disable-linux-futex --disable-nls --disable-tls --enable-lto
Thread model: posix
gcc version 4.5.0 20091023 (experimental) (GCC) 

BUILDING:
alias CONFIGURECVS='../gcc/configure --verbose --enable-languages=c++ --disable-linux-futex --disable-nls --disable-tls --enable-lto 2>&1 | tee clog'

alias BUILD='nice gmake CFLAGS='\'''\'' BOOT_CFLAGS='\'''\'' LIBCFLAGS='\''-g'\'' LIBCXXFLAGS='\''-g'\'' bootstrap 2>&1 | tee log'
Comment 1 James McKelvey 2009-10-25 01:27:11 UTC
I presume that you will need stest0.o and libPatternDriver.a to recreate, but tarring and bz2ing those together yields about 25M, too much to attach. Please advise.
Comment 2 Richard Biener 2009-10-25 11:04:34 UTC
Can you instead launch the link command-line with -v -save-temps appended
and from the output re-run the lto1 command invocation inside gdb and do

(gdb) b internal_error
(gdb) run
(gdb) up 2

you should be at gimple.c:3488 now, if not go up/down frames until you are

(gdb) call debug_tree (t1)

and paste the output of that here?  If t1 is optimized out at that point
try going up one more frame and try again there with the proper call
argument.

Thanks.
Comment 3 James McKelvey 2009-10-25 16:32:17 UTC
(In reply to comment #2)
> Can you instead launch the link command-line with -v -save-temps appended
> and from the output re-run the lto1 command invocation inside gdb and do
> 
> (gdb) b internal_error
> (gdb) run
> (gdb) up 2
> 
> you should be at gimple.c:3488 now, if not go up/down frames until you are
> 
> (gdb) call debug_tree (t1)
> 
> and paste the output of that here?  If t1 is optimized out at that point
> try going up one more frame and try again there with the proper call
> argument.

t1 is not available anywhere. Should I rebuild gcc with CFLAGS set to -g -O0?
Comment 4 rguenther@suse.de 2009-10-25 16:39:14 UTC
Subject: Re:  ICE in LTO when linking

On Sun, 25 Oct 2009, mckelvey at maskull dot com wrote:

> 
> 
> ------- Comment #3 from mckelvey at maskull dot com  2009-10-25 16:32 -------
> (In reply to comment #2)
> > Can you instead launch the link command-line with -v -save-temps appended
> > and from the output re-run the lto1 command invocation inside gdb and do
> > 
> > (gdb) b internal_error
> > (gdb) run
> > (gdb) up 2
> > 
> > you should be at gimple.c:3488 now, if not go up/down frames until you are
> > 
> > (gdb) call debug_tree (t1)
> > 
> > and paste the output of that here?  If t1 is optimized out at that point
> > try going up one more frame and try again there with the proper call
> > argument.
> 
> t1 is not available anywhere. Should I rebuild gcc with CFLAGS set to -g -O0?

that would be nice! (remember to use --disable-bootstrap)

thanks.
Comment 5 James McKelvey 2009-10-27 01:04:01 UTC
(In reply to comment #4)
> Subject: Re:  ICE in LTO when linking
> 
> On Sun, 25 Oct 2009, mckelvey at maskull dot com wrote:
> 
> > 
> > 
> > ------- Comment #3 from mckelvey at maskull dot com  2009-10-25 16:32 -------
> > (In reply to comment #2)
> > > Can you instead launch the link command-line with -v -save-temps appended
> > > and from the output re-run the lto1 command invocation inside gdb and do
> > > 
> > > (gdb) b internal_error
> > > (gdb) run
> > > (gdb) up 2
> > > 
> > > you should be at gimple.c:3488 now, if not go up/down frames until you are
> > > 
> > > (gdb) call debug_tree (t1)
> > > 
> > > and paste the output of that here?  If t1 is optimized out at that point
> > > try going up one more frame and try again there with the proper call
> > > argument.
> > 
> > t1 is not available anywhere. Should I rebuild gcc with CFLAGS set to -g -O0?
> 
> that would be nice! (remember to use --disable-bootstrap)
> 
> thanks.
> 

OK, here we go:


(gdb) down
#2  0x0000000120321d50 in gimple_types_compatible_p (t1=0x2000048cdc0, 
    t2=0x2000048cd10) at ../../gcc/gcc/gimple.c:3488
3488          gcc_unreachable ();
(gdb) call debug_tree(t1) 
 <offset_type 0x2000048cdc0
    type <integer_type 0x20000427080 pdversion unsigned DI
        size <integer_cst 0x20000318510 constant 64>
        unit size <integer_cst 0x20000318540 constant 8>
        align 64 symtab 0 alias set -1 canonical type 0x200003346e0 precision 64 min <integer_cst 0x20000318570 0> max <integer_cst 0x200003184e0 18446744073709551615>>
    DI size <integer_cst 0x20000318510 64> unit size <integer_cst 0x20000318540 8>
    align 64 symtab 0 alias set -1 canonical type 0x2000048ce70 basetype <record_type 0x2000048c420 Match>>
(gdb)
Comment 6 Andrew Pinski 2009-10-27 01:17:59 UTC
> stest0.o and libPatternDriver.a

Actually since you are not using the gold linker plugin we only really need the preprocessed source for stest0.o .  Since collect2 does not understand archives right now.
Comment 7 Richard Biener 2009-10-27 09:37:54 UTC
Doh, thanks.  It's obvious to me what is wrong.
Comment 8 Richard Biener 2009-10-27 11:31:12 UTC
Subject: Bug 41821

Author: rguenth
Date: Tue Oct 27 11:30:59 2009
New Revision: 153589

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=153589
Log:
2009-10-27  Richard Guenther  <rguenther@suse.de>

	PR lto/41821
	* gimple.c (gimple_types_compatible_p): Handle OFFSET_TYPE.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple.c

Comment 9 Richard Biener 2009-10-27 11:31:23 UTC
Fixed.
Comment 10 Jeffrey A. Law 2009-10-29 16:50:08 UTC
Subject: Bug 41821

Author: law
Date: Thu Oct 29 16:48:00 2009
New Revision: 153715

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=153715
Log:
Recorded merge of revisions 153580-153581,153584,153586-153600,153604,153606,153610,153613,153615-153618,153621,153643,153646-153648,153650-153652,153654-153667,153669-153671 via svnmerge from 
svn+ssh://law@gcc.gnu.org/svn/gcc/trunk

........
  r153580 | gccadmin | 2009-10-26 18:17:26 -0600 (Mon, 26 Oct 2009) | 1 line
  
  Daily bump.
........
  r153581 | paolo | 2009-10-26 19:18:10 -0600 (Mon, 26 Oct 2009) | 6 lines
  
  2009-10-26  Paolo Carlini  <paolo.carlini@oracle.com>
  
  	* include/std/chrono (duration<>::duration(const duration<>&)): Fix
  	per the straightforward resolution of DR 974.
  	* testsuite/20_util/duration/cons/dr974.cc: Add.
........
  r153584 | carrot | 2009-10-27 03:06:36 -0600 (Tue, 27 Oct 2009) | 16 lines
  
  	* target.h (have_conditional_execution): Add a new target hook function.
  	* target-def.h (TARGET_HAVE_CONDITIONAL_EXECUTION): Likewise.
  	* targhooks.h (default_have_conditional_execution): Likewise.
  	* targhooks.c (default_have_conditional_execution): Likewise.
  	* doc/tm.texi (TARGET_HAVE_CONDITIONAL_EXECUTION): Document it.
  	* config/arm/arm.c (TARGET_HAVE_CONDITIONAL_EXECUTION): Define it.
  	(arm_have_conditional_execution): New function.
  	* ifcvt.c (noce_process_if_block, find_if_header,
  	cond_exec_find_if_block, dead_or_predicable): Change the usage of macro
  	HAVE_conditional_execution to a target hook call.
  	* recog.c (peephole2_optimize): Likewise.
  	* sched-rgn.c (add_branch_dependences): Likewise.
  	* final.c (asm_insn_count, final_scan_insn): Likewise.
  	* bb-reorder.c (HAVE_conditional_execution): Remove it.
........
  r153586 | ebotcazou | 2009-10-27 04:09:04 -0600 (Tue, 27 Oct 2009) | 1 line
  
  Fix nits
........
  r153587 | jakub | 2009-10-27 04:28:48 -0600 (Tue, 27 Oct 2009) | 3 lines
  
  	PR c++/41020
  	* g++.dg/lookup/extern-c-redecl5.C: Fix up regexp.
........
  r153588 | aldyh | 2009-10-27 05:18:12 -0600 (Tue, 27 Oct 2009) | 5 lines
  
  	PR bootstrap/41451
  	* fold-const.c (fold_binary_loc): Do not call
  	protected_set_expr_location.
........
  r153589 | rguenth | 2009-10-27 05:30:59 -0600 (Tue, 27 Oct 2009) | 5 lines
  
  2009-10-27  Richard Guenther  <rguenther@suse.de>
  
  	PR lto/41821
  	* gimple.c (gimple_types_compatible_p): Handle OFFSET_TYPE.
........
  r153590 | revitale | 2009-10-27 05:46:07 -0600 (Tue, 27 Oct 2009) | 1 line
  
  Fix PR40648 -- Fix misaligned store vectorizer patch
........
  r153591 | charlet | 2009-10-27 07:06:06 -0600 (Tue, 27 Oct 2009) | 16 lines
  
  2009-10-27  Arnaud Charlet  <charlet@adacore.com>
  
  	* exp_aggr.adb: Fix comment.
  
  2009-10-27  Emmanuel Briot  <briot@adacore.com>
  
  	* prj-err.adb (Error_Msg): take into account continuation lines when
  	computing whether we have a warning.
  
  2009-10-27  Vasiliy Fofanov  <fofanov@adacore.com>
  
  	* make.adb, s-os_lib.adb, s-os_lib.ads (Create_Temp_Output_File): New
  	routine that is designed to create temp file descriptor specifically
  	for redirecting an output stream.
........
  r153592 | charlet | 2009-10-27 07:16:48 -0600 (Tue, 27 Oct 2009) | 45 lines
  
  2009-10-27  Vincent Celier  <celier@adacore.com>
  
  	* makeutl.adb (Check_Source_Info_In_ALI): Do not recompile if a subunit
  	from the runtime is found, except if gnatmake switch -a is used and this
  	subunit cannot be found.
  
  2009-10-27  Ed Schonberg  <schonberg@adacore.com>
  
  	* gnatbind.adb (gnatbind): When the -R option is selected, list subunits
  	as well, for tools that need the complete closure of the main program.
  
  2009-10-27  Sergey Rybin  <rybin@adacore.com>
  
  	* gnat_ugn.texi: Minor updates.
  
  2009-10-27  Emmanuel Briot  <briot@adacore.com>
  
  	* prj-tree.adb (Free): Fix memory leak.
  
  2009-10-27  Vasiliy Fofanov  <fofanov@adacore.com>
  
  	* adaint.c, s-os_lib.adb (__gnat_create_output_file_new): New function
  	that ensures the file that is created is new. Use this function to make
  	sure there is no race condition if several processes are creating temp
  	files concurrently.
  
  	* s-os_lib.ads: Update comment.
  
  2009-10-27  Thomas Quinot  <quinot@adacore.com>
  
  	* sem_ch12.adb: Minor reformatting
  
  2009-10-27  Javier Miranda  <miranda@adacore.com>
  
  	* exp_ch4.ads (Integer_Promotion_Possible): New subprogram.
  	* exp_ch4.adb (Integer_Promotion_Possible): New subprogram.
  	(Expand_N_Type_Conversion): Replace code that checks if the integer
  	promotion of the operands is possible by a call to the new function
  	Integer_Promotion_Possible. Minor reformating because an enclosing
  	block is now not needed.
  	* checks.adb (Apply_Arithmetic_Overflow_Check): Add missing check to
  	see if the integer promotion is possible; in such case the runtime
  	checks are not generated.
........
  r153593 | charlet | 2009-10-27 07:22:25 -0600 (Tue, 27 Oct 2009) | 17 lines
  
  2009-10-27  Thomas Quinot  <quinot@adacore.com>
  
  	* sem_ch12.adb (Install_Formal_Packages): Do not omit installation of
  	visible entities when the formal package doesn't have a box.
  
  	* checks.adb: Minor reformatting.
  
  2009-10-27  Vincent Celier  <celier@adacore.com>
  
  	* prj-part.adb (Parse): Catch exception Types.Unrecoverable_Error and
  	set Project to Empty_Node.
  
  2009-10-27  Robert Dewar  <dewar@adacore.com>
  
  	* gnatbind.adb: Minor reformatting
........
  r153594 | charlet | 2009-10-27 07:51:46 -0600 (Tue, 27 Oct 2009) | 18 lines
  
  2009-10-27  Robert Dewar  <dewar@adacore.com>
  
  	* s-os_lib.ads, s-os_lib.adb, prj-err.adb, makeutl.adb: Minor
  	reformatting.
  
  2009-10-27  Ed Schonberg  <schonberg@adacore.com>
  
  	* sem.util.ads, sem_util.adb (Denotes_Same_Object,
  	Denotes_Same_Prefix): New functions to detect overlap between actuals
  	that are not by-copy in a call, when one of them is in-out.
  	* sem_warn.ads, sem_warn.adb (Warn_On_Overlapping_Actuals): New
  	procedure,  called on a subprogram call to warn when an in-out actual
  	that is not by-copy overlaps with another actual, thus leadind to
  	potentially dangerous aliasing in the body of the called subprogram.
  	Currently the warning is under control of the -gnatX switch.
  	* sem_res.adb (resolve_call): call Warn_On_Overlapping_Actuals.
........
  r153595 | charlet | 2009-10-27 08:02:58 -0600 (Tue, 27 Oct 2009) | 6 lines
  
  2009-10-27  Robert Dewar  <dewar@adacore.com>
  
  	* sem_warn.adb, sem_util.adb, sem_util.ads: Minor reformatting. Add
  	comments.
........
  r153596 | charlet | 2009-10-27 08:07:19 -0600 (Tue, 27 Oct 2009) | 2 lines
  
  Minor doc updates.
........
  r153597 | charlet | 2009-10-27 08:14:44 -0600 (Tue, 27 Oct 2009) | 6 lines
  
  2009-10-27  Robert Dewar  <dewar@adacore.com>
  
  	* s-fileio.adb, s-fileio.ads, sem_util.adb, sem_warn.adb,
  	sem_warn.ads: Minor reformatting
........
  r153598 | rguenth | 2009-10-27 09:16:35 -0600 (Tue, 27 Oct 2009) | 5 lines
  
  2009-10-27  Richard Guenther  <rguenther@suse.de>
  
  	* tree-complex.c (expand_complex_div_wide): Check for
  	INTEGER_CST, not TREE_CONSTANT on comparison folding result.
........
  r153599 | jakub | 2009-10-27 09:50:50 -0600 (Tue, 27 Oct 2009) | 6 lines
  
  	PR c/41842
  	* c-typeck.c (convert_arguments): Return -1 if any of the arguments is
  	error_mark_node.
  
  	* gcc.dg/pr41842.c: New test.
........
  r153600 | rguenth | 2009-10-27 09:52:44 -0600 (Tue, 27 Oct 2009) | 14 lines
  
  2009-10-27  Richard Guenther  <rguenther@suse.de>
  
  	* tree-ssa-structalias.c (find_func_aliases): In IPA mode
  	handle calls to externally visible functions like in regular mode.
  	(create_variable_info_for): Do not create function infos here.
  	(have_alias_info): Remove write-only variable.
  	(solve_constraints): New function split out from common code
  	in compute_points_to_sets and ipa_pta_execute.
  	(compute_points_to_sets): Adjust.
  	(ipa_pta_execute): Likewise.  Handle clones and externally visible
  	functions like in non-IPA mode.
  
  	* gcc.dg/torture/ipa-pta-1.c: Adjust testcase.
........
  r153604 | uros | 2009-10-27 11:03:47 -0600 (Tue, 27 Oct 2009) | 3 lines
  
  	* ChangeLog: Fix formatting.
  	* testsuite/ChangeLog: Ditto.
........
  r153606 | ktietz | 2009-10-27 11:14:47 -0600 (Tue, 27 Oct 2009) | 11 lines
  
  2009-10-27  Kai Tietz <kai.tietz@onevision.com>
  
          PR/41799
          * config/i386/mingw32.h (CHECK_EXECUTE_STACK_ENABLED): New macro.
          * config/i386/mingw.opt: Add fset-stack-executable.
          * config/i386/i386.c (ix86_trampoline_init): Make call to
          emit_library_call conditional, if CHECK_EXECUTE_STACK_ENABLED is
          defined and its value is not zero.
          * doc/invoke.texi
........
  r153610 | espindola | 2009-10-27 12:17:13 -0600 (Tue, 27 Oct 2009) | 7 lines
  
  2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
  
  	PR lto/41652
  	* configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
  	* configure: Regenerate.
........
  r153613 | ebotcazou | 2009-10-27 13:41:13 -0600 (Tue, 27 Oct 2009) | 4 lines
  
  	* raise-gcc (db_region_for): Use _Unwind_GetIPInfo instead of
  	_Unwind_GetIP if HAVE_GETIPINFO is defined.
  	(db_action_for): Likewise.
........
  r153615 | rth | 2009-10-27 14:09:07 -0600 (Tue, 27 Oct 2009) | 7 lines
  
          PR c++/41819
          * tree-eh.c (eh_region_may_contain_throw_map): Rename from
          eh_region_may_contain_throw; update users.
          (eh_region_may_contain_throw): New function.
          (lower_catch): Check flag_exceptions before creating exception region.
          (lower_eh_filter, lower_eh_must_not_throw): Likewise.
          (lower_cleanup): Tidy existing flag_exceptions check to match.
........
  r153616 | ebotcazou | 2009-10-27 14:24:31 -0600 (Tue, 27 Oct 2009) | 3 lines
  
  	* gcc-interface/decl.c (purpose_member_field): New static function.
  	(annotate_rep): Use it instead of purpose_member.
........
  r153617 | jason | 2009-10-27 15:58:09 -0600 (Tue, 27 Oct 2009) | 10 lines
  
  	Allow no-capture lambdas to convert to function pointer.
  	* semantics.c (maybe_add_lambda_conv_op): New.
  	* parser.c (cp_parser_lambda_expression): Call it.
  	(cp_parser_lambda_declarator_opt): Make op() static if
  	no captures.
  	* mangle.c (write_closure_type_name): Adjust.
  	* semantics.c (finish_this_expr): Adjust.
  	* decl.c (grok_op_properties): Allow it.
  	* call.c (build_user_type_conversion_1): Handle static conversion op.
  	(build_op_call): And op().
........
  r153618 | rth | 2009-10-27 17:25:54 -0600 (Tue, 27 Oct 2009) | 1 line
  
          * cgraphunit.c (cgraph_optimize): Maintain timevar stack properly.
........
  r153621 | gccadmin | 2009-10-27 18:16:59 -0600 (Tue, 27 Oct 2009) | 1 line
  
  Daily bump.
........
  r153643 | kkojima | 2009-10-27 22:22:21 -0600 (Tue, 27 Oct 2009) | 4 lines
  
  	* config/sh/sh.md (stuff_delay_slot): Move const_int pattern
  	inside the unspec vector.
........
  r153646 | bonzini | 2009-10-28 03:49:58 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	* config/sh/sh.md (cbranchfp4_media): Remove hack extending
  	cstore result to DImode.
........
  r153647 | bonzini | 2009-10-28 03:54:01 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	* expmed.c (emit_store_flag): Check costs before
  	transforming to the opposite representation.
........
  r153648 | singler | 2009-10-28 04:04:03 -0600 (Wed, 28 Oct 2009) | 8 lines
  
  2009-10-28  Johannes Singler  <singler@kit.edu>
  
          PR libstdc++/40852
          * include/parallel/multiseq_selection.h
          (multiseq_partition, multiseq_selection):  Avoid intermediate
          values exceeding the integer type range for very large inputs.
........
  r153650 | bonzini | 2009-10-28 04:17:29 -0600 (Wed, 28 Oct 2009) | 15 lines
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	PR rtl-optimization/40741
  	* config/arm/arm.c (thumb1_rtx_costs): IOR or XOR with
  	a small constant is cheap.
  	* config/arm/arm.md (andsi3, iorsi3): Try to place the result of
  	force_reg on the LHS.
  	(xorsi3): Likewise, and split the XOR if the constant is complex
  	and not in Thumb mode.
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	PR rtl-optimization/40741
  	* gcc.target/arm/thumb-branch1.c: New.
........
  r153651 | bonzini | 2009-10-28 04:27:15 -0600 (Wed, 28 Oct 2009) | 13 lines
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	PR rtl-optimization/39715
  	* combine.c (simplify_comparison): Use extensions to
  	widen comparisons.  Try an ANDing first.
  
  testsuite:
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	PR rtl-optimization/39715
  	* gcc.target/arm/thumb-bitfld1.c: New.
........
  r153652 | bonzini | 2009-10-28 06:37:30 -0600 (Wed, 28 Oct 2009) | 13 lines
  
  2009-10-28  Paolo Bonzini  <bonzini@gnu.org>
  
  	PR rtl-optimization/41812
  
  	Revert:
  	2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
  
  	* df-problems.c (df_md_scratch): New.
  	(df_md_alloc, df_md_free): Allocate/free it.
  	(df_md_local_compute): Only include live registers in init.
  	(df_md_transfer_function): Prune the in-set computed by
  	the confluence function, and the gen-set too.
........
  r153654 | paolo | 2009-10-28 07:07:00 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  2009-10-28  Paolo Carlini  <paolo.carlini@oracle.com>
  
  	* include/bits/stl_iterator_base_funcs.h: (next): Change
  	template parameter name consistently with the resolution
  	of DR 1011 ([Ready] in Santa Cruz).
........
  r153655 | rguenth | 2009-10-28 07:28:32 -0600 (Wed, 28 Oct 2009) | 14 lines
  
  2009-10-28  Richard Guenther  <rguenther@suse.de>
  
  	PR middle-end/41855
  	* tree-ssa-alias.c (refs_may_alias_p_1): Deal with CONST_DECLs
  	(ref_maybe_used_by_call_p_1): Fix bcopy handling.
  	(call_may_clobber_ref_p_1): Likewise.
  	* tree-ssa-structalias.c (find_func_aliases): Likewise.
  	* alias.c (nonoverlapping_memrefs_p): Deal with CONST_DECLs.
  
  	* gfortran.dg/lto/20091028-1_0.f90: New testcase.
  	* gfortran.dg/lto/20091028-1_1.c: Likewise.
  	* gfortran.dg/lto/20091028-2_0.f90: Likewise.
  	* gfortran.dg/lto/20091028-2_1.c: Likewise.
........
  r153656 | charlet | 2009-10-28 07:31:51 -0600 (Wed, 28 Oct 2009) | 25 lines
  
  2009-10-28  Robert Dewar  <dewar@adacore.com>
  
  	* a-ztexio.adb, a-ztexio.ads, a-witeio.ads, a-witeio.adb,
  	a-textio.ads, a-textio.adb: Reorganize (moving specs from private part
  	to body).
  	(Initialize_Standard_Files): New procedure.
  	* a-tienau.adb: Minor change to make EOF directly visible
  	* a-tirsfi.ads, a-wrstfi.adb, a-wrstfi.ads, a-zrstfi.adb,
  	a-zrstfi.ads, a-tirsfi.adb: New unit, initial version.
  	* gnat_rm.texi: Add documentation for
  	Ada.[Wide_[Wide_]]Text_IO.Reset_Standard_Files.
  	* Makefile.rtl: Add entries for
  	Ada.[Wide_[Wide_]]Text_IO.Reset_Standard_Files
  
  2009-10-28  Thomas Quinot  <quinot@adacore.com>
  
  	* exp_ch9.ads: Minor reformatting
  	* sem_ch3.adb: Minor reformatting
  	* sem_aggr.adb: Minor reformatting.
  	* sem_attr.adb: Minor reformatting
  	* tbuild.adb, tbuild.ads, par-ch4.adb, exp_ch4.adb (Tbuild.New_Op_Node):
  	New subprogram.
  	Minor code reorganization/factoring.
........
  r153657 | charlet | 2009-10-28 07:41:05 -0600 (Wed, 28 Oct 2009) | 29 lines
  
  2009-10-28  Thomas Quinot  <quinot@adacore.com>
  
  	* exp_ch4.adb (Expand_N_Type_Conversion): Perform Integer promotion for
  	the operand of the unary minus and ABS operators.
  
  	* sem_type.adb (Covers): A concurrent type and its corresponding record
  	type are compatible.
  	* exp_attr.adb (Expand_N_Attribute_Reference): Do not rewrite a 'Access
  	attribute reference for the current instance of a protected type while
  	analyzing an access discriminant constraint in a component definition.
  	Such a reference is handled in the corresponding record's init proc,
  	while initializing the constrained component.
  	* exp_ch9.adb (Expand_N_Protected_Type_Declaration): When creating the
  	corresponding record type, propagate components'
  	Has_Per_Object_Constraint flag.
  	* exp_ch3.adb (Build_Init_Procedure.Build_Init_Statements):
  	For a concurrent type, set up concurrent aspects before initializing
  	components with a per object constrain, because they may be controlled,
  	and their initialization may call entries or protected subprograms of
  	the enclosing concurrent object.
  
  2009-10-28  Emmanuel Briot  <briot@adacore.com>
  
  	* prj-nmsc.adb (Add_If_Not_In_List): New subprogram, for better sharing
  	of code.
  	(Find_Source_Dirs): resolve links if Opt.Follow_Links_For_Dirs when
  	processing the directories specified explicitly in the project file.
........
  r153658 | charlet | 2009-10-28 07:50:10 -0600 (Wed, 28 Oct 2009) | 10 lines
  
  2009-10-28  Robert Dewar  <dewar@adacore.com>
  
  	* exp_attr.adb, exp_ch9.adb, prj-nmsc.adb, tbuild.adb, ali.adb,
  	types.ads: Minor reformatting
  
  2009-10-28  Tristan Gingold  <gingold@adacore.com>
  
  	* init.c: Fix __gnat_error_handler for Darwin10 (Snow Leopard)
........
  r153659 | rguenth | 2009-10-28 07:52:20 -0600 (Wed, 28 Oct 2009) | 11 lines
  
  2009-10-28  Richard Guenther  <rguenther@suse.de>
  
  	* tree.c (free_lang_data_in_type): Do not call get_alias_set.
  	(free_lang_data): Unconditionally compute alias sets for all
  	standard integer types.  Bail out if gate bailed out previously.
  	Do not reset the types_compatible_p langhook.
  	(gate_free_lang_data): Remove.
  	(struct pass_ipa_free_lang_data): Enable unconditionally.
  	* gimple.c (gimple_get_alias_set): Use the same alias-set for
  	all pointer types.
........
  r153660 | charlet | 2009-10-28 08:07:16 -0600 (Wed, 28 Oct 2009) | 2 lines
  
  	* gcc-interface/Make-lang.in: Update dependencies.
........
  r153661 | charlet | 2009-10-28 08:09:12 -0600 (Wed, 28 Oct 2009) | 22 lines
  
  2009-10-28  Vincent Celier  <celier@adacore.com>
  
  	* prj-nmsc.adb (Add_To_Or_Remove_From_List): New name of procedure
  	Add_If_Not_In_List to account to the fact that a directory may be
  	removed from the list. Only remove directory if Removed is True.
  
  2009-10-28  Gary Dismukes  <dismukes@adacore.com>
  
  	* a-textio.ads, a-textio.ads: Put back function EOF_Char in private
  	part. Put back body of function EOF_Char.
  	* a-tienau.adb: Remove with of Interfaces.C_Streams and change EOF back
  	to EOF_Char.
  
  2009-10-28  Emmanuel Briot  <briot@adacore.com>
  
  	* prj-tree.adb (Free): Fix memory leak.
  
  2009-10-28  Thomas Quinot  <quinot@adacore.com>
  
  	* s-fileio.adb: Minor reformatting
........
  r153662 | charlet | 2009-10-28 08:14:05 -0600 (Wed, 28 Oct 2009) | 9 lines
  
  2009-10-28  Thomas Quinot  <quinot@adacore.com>
  
  	* s-crtl.ads (System.CRTL.strerror): New function.
  
  2009-10-28  Ed Schonberg  <schonberg@adacore.com>
  
  	* sem_type.adb: Add guard to recover some type errors.
........
  r153663 | charlet | 2009-10-28 08:22:09 -0600 (Wed, 28 Oct 2009) | 12 lines
  
  2009-10-28  Bob Duff  <duff@adacore.com>
  
  	* s-fileio.adb: Give more information in exception messages.
  
  2009-10-28  Robert Dewar  <dewar@adacore.com>
  
  	* gnat_ugn.texi: Document new -gnatyt requirement for space after right
  	paren if next token starts with digit or letter.
  	* styleg.adb (Check_Right_Paren): New rule for space after if next
  	character is a letter or digit.
........
  r153664 | rguenth | 2009-10-28 08:33:17 -0600 (Wed, 28 Oct 2009) | 4 lines
  
  2009-10-28  Richard Guenther  <rguenther@suse.de>
  
          * gimple.c (gimple_get_alias_set): Fix comment typo.
........
  r153665 | jakub | 2009-10-28 08:36:28 -0600 (Wed, 28 Oct 2009) | 3 lines
  
  	* var-tracking.c (emit_note_insn_var_location): Get the mode of
  	a variable part from its REG, MEM or VALUE.
........
  r153666 | jakub | 2009-10-28 08:37:24 -0600 (Wed, 28 Oct 2009) | 4 lines
  
  	* var-tracking.c (emit_note_insn_var_location): Don't call the second
  	vt_expand_loc unnecessarily when location is not a register nor
  	memory.
........
  r153667 | jakub | 2009-10-28 08:39:06 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  	PR target/41762
  	* config/i386/i386.c (ix86_pic_register_p): Don't call
  	rtx_equal_for_cselib_p for VALUEs discarded as useless.
  
  	* gcc.dg/pr41762.c: New test.
........
  r153669 | jakub | 2009-10-28 08:43:04 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  	PR debug/41801
  	* builtins.c (get_builtin_sync_mem): Expand loc in ptr_mode,
  	call convert_memory_address on addr.
  
  	* g++.dg/ext/sync-3.C: New test.
........
  r153670 | jakub | 2009-10-28 08:45:03 -0600 (Wed, 28 Oct 2009) | 6 lines
  
  	PR middle-end/41837
  	* ipa-struct-reorg.c (find_field_in_struct_1): Return NULL if
  	fields don't have DECL_NAME.
  
  	* gcc.dg/pr41837.c: New test.
........
  r153671 | rguenth | 2009-10-28 08:48:34 -0600 (Wed, 28 Oct 2009) | 15 lines
  
  2009-10-28  Richard Guenther  <rguenther@suse.de>
  
  	PR lto/41808
  	PR lto/41839
  	* tree-ssa.c (useless_type_conversion_p): Do not treat
  	conversions to pointers to incomplete types as useless.
  	* gimple.c (gimple_types_compatible_p): Compare struct tags,
  	not typedef names.
  
  	* gcc.dg/lto/20091027-1_0.c: New testcase.
  	* gcc.dg/lto/20091027-1_1.c: Likewise.
  	* g++.dg/lto/20091026-1_0.C: Likewise.
  	* g++.dg/lto/20091026-1_1.C: Likewise.
  	* g++.dg/lto/20091026-1_a.h: Likewise.
........

Modified:
    branches/reload-v2a/   (props changed)

Propchange: branches/reload-v2a/
            ('svnmerge-integrated' modified)