Commit Graph

96609 Commits

Author SHA1 Message Date
Martin Jambor
8a1326b392 re PR tree-optimization/41775 (IPA-SRA: ice in rewrite_stmt, at tree-into-ssa.c:1302)
2009-10-29  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/41775
	* tree-sra.c (build_ref_for_offset): Unshare *expr if not NULL.
	(generate_subtree_copies): Do not unshare agg.
	(load_assign_lhs_subreplacements): Do not unshare rhs.
	(sra_modify_assign): Do not unshare exprs.
	(propagate_subacesses_accross_link): Renamed to
	propagate_subaccesses_across_link.

	* testsuite/g++.dg/torture/pr41775.C: New testcase.

From-SVN: r153699
2009-10-29 13:40:48 +01:00
Richard Earnshaw
162e4591aa arm.c (count_insns_for_constant): Rework to support counting for thumb2 immediates as well.
* arm.c (count_insns_for_constant): Rework to support counting for
	thumb2 immediates as well.
	(find_best_start): Split out from arm_gen_constant.
	(arm_gen_constant): Rework to support XOR with immediate.

From-SVN: r153698
2009-10-29 09:44:36 +00:00
Chao-ying Fu
d48a31968c mips.c (mips_emit_unary, [...]): New functions.
2009-10-29  Chao-ying Fu  <fu@mips.com>

	* config/mips/mips.c (mips_emit_unary, mips_force_unary): New
	functions.
	(mips_expand_synci_loop):  Use the length rtx to control the
	synci loop from the begin rtx that points to the first byte of
	the cache line.

From-SVN: r153696
2009-10-29 07:08:03 +00:00
GCC Administrator
18ab0fc8c7 Daily bump.
From-SVN: r153694
2009-10-29 00:17:14 +00:00
Janne Blomqvist
0e8bc11dcc PR fortran/41860 Treat vars as save with -fno-automatic
From-SVN: r153689
2009-10-29 01:25:08 +02:00
Rafael Avila de Espindola
aff4273cf1 lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of LDPL_ERROR
2009-10-28  Rafael Avila de Espindola  <espindola@google.com>

       * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
       LDPL_ERROR

From-SVN: r153687
2009-10-28 21:41:34 +00:00
Rafael Avila de Espindola
180a2539ee invoke.texi: Rename -use-linker-plugin -fuse-linker-plugin.
2009-10-28  Rafael Avila de Espindola  <espindola@google.com>

	* doc/invoke.texi: Rename -use-linker-plugin -fuse-linker-plugin.

From-SVN: r153686
2009-10-28 21:39:41 +00:00
Rafael Avila de Espindola
4d62b56ae8 trans-common.c (create_common): Set TREE_PUBLIC to false on fake variables.
2009-10-28  Rafael Avila de Espindola  <espindola@google.com>

	* trans-common.c (create_common): Set TREE_PUBLIC to false on
	fake variables.

2009-10-28  Rafael Avila de Espindola  <espindola@google.com>

	* dbxout.c (dbxout_common_check): Accept non public trees.
	* dwarf2out.c (fortran_common): Accept non public trees.

From-SVN: r153685
2009-10-28 20:44:47 +00:00
Rafael Avila de Espindola
da18ea94d9 common.opt (fuse-linker-plugin): New option.
2009-10-28  Rafael Avila de Espindola  <espindola@google.com>

	* common.opt (fuse-linker-plugin): New option.
	* gcc.c (LINK_COMMAND_SPEC, main): Rename use-linker-plugin to
	fuse-linker-plugin.
	* opts.c (common_handle_option): Ignore OPT_fuse_linker_plugin.

From-SVN: r153683
2009-10-28 18:40:42 +00:00
Jason Merrill
160594b061 Core issue 812, 861
Core issue 812, 861
	* name-lookup.c (set_decl_namespace): Deal properly with inline
	namespaces.
	(qualified_lookup_using_namespace): Overhaul.
	* pt.c (print_candidates): Handle getting an OVERLOAD.

change lookup algorithm

From-SVN: r153682
2009-10-28 14:39:36 -04:00
Jason Merrill
34ad94d88c * decl.c (cp_fname_init): Correct build_string argument.
From-SVN: r153681
2009-10-28 14:39:25 -04:00
Paolo Bonzini
c4bb78e9cd re PR target/39715 ([cond-optab] extra sign extensions on Thumb)
2009-10-28  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/39715
	* config/arm/arm.md (cstoresi4): Use gen_cstoresi_ltu_thumb1.
	(gen_cstoresi_ltu_thumb1): New splitter.

2009-10-28  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/39715
	* gcc.target/arm/thumb-ltu.c: New.

From-SVN: r153678
2009-10-28 16:44:08 +00:00
Richard Guenther
cfee9aa4c9 re PR lto/41808 (error: non-trivial conversion at assignment)
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.

From-SVN: r153671
2009-10-28 14:48:34 +00:00
Jakub Jelinek
a1c6569544 re PR middle-end/41837 (Using '-O -fipa-struct-reorg -fwhole-program -fprofile-generate' gives 'internal compiler error: Segmentation fault')
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.

From-SVN: r153670
2009-10-28 15:45:03 +01:00
Jakub Jelinek
f46835f5ad re PR debug/41801 (VTA: ICE in loc_cmp.)
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.

From-SVN: r153669
2009-10-28 15:43:04 +01:00
Jakub Jelinek
6ac719d38e re PR target/41762 (internal compiler error when compiling xorg-server)
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.

From-SVN: r153667
2009-10-28 15:39:06 +01:00
Jakub Jelinek
7cf720118d var-tracking.c (emit_note_insn_var_location): Don't call the second vt_expand_loc unnecessarily when...
* 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.

From-SVN: r153666
2009-10-28 15:37:24 +01:00
Richard Sandiford
e70545b0a5 var-tracking.c (emit_note_insn_var_location): Get the mode of a variable part from its REG, MEM or VALUE.
* var-tracking.c (emit_note_insn_var_location): Get the mode of
	a variable part from its REG, MEM or VALUE.

From-SVN: r153665
2009-10-28 15:36:28 +01:00
Richard Guenther
f883d99770 gimple.c (gimple_get_alias_set): Fix comment typo.
2009-10-28  Richard Guenther  <rguenther@suse.de>

        * gimple.c (gimple_get_alias_set): Fix comment typo.

From-SVN: r153664
2009-10-28 14:33:17 +00:00
Arnaud Charlet
68523ddb28 [multiple changes]
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.

From-SVN: r153663
2009-10-28 15:22:09 +01:00
Arnaud Charlet
66a63e0d32 [multiple changes]
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.

From-SVN: r153662
2009-10-28 15:14:05 +01:00
Arnaud Charlet
fc475a082c [multiple changes]
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

From-SVN: r153661
2009-10-28 15:09:12 +01:00
Arnaud Charlet
4d8f8ffee4 * gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r153660
2009-10-28 15:07:16 +01:00
Richard Guenther
14cf68d935 tree.c (free_lang_data_in_type): Do not call get_alias_set.
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.

From-SVN: r153659
2009-10-28 13:52:20 +00:00
Arnaud Charlet
69ba91edf4 [multiple changes]
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)

From-SVN: r153658
2009-10-28 14:50:10 +01:00
Arnaud Charlet
5f3f175d79 [multiple changes]
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.

From-SVN: r153657
2009-10-28 14:41:05 +01:00
Arnaud Charlet
b87971f33e [multiple changes]
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.

From-SVN: r153656
2009-10-28 14:31:51 +01:00
Richard Guenther
1307c758a3 re PR middle-end/41855 (ICE in refs_may_alias_p_1, at tree-ssa-alias.c:855)
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.

From-SVN: r153655
2009-10-28 13:28:32 +00:00
Paolo Carlini
de5b9f12c5 stl_iterator_base_funcs.h: (next): Change template parameter name consistently with the resolution of DR...
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).

From-SVN: r153654
2009-10-28 13:07:00 +00:00
Paolo Bonzini
e5bb5009e4 re PR rtl-optimization/41812 (test 20071030-1.c fails execution on powerpc64)
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.

From-SVN: r153652
2009-10-28 12:37:30 +00:00
Paolo Bonzini
5d49d0ea6c re PR target/39715 ([cond-optab] extra sign extensions on Thumb)
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.

From-SVN: r153651
2009-10-28 10:27:15 +00:00
Paolo Bonzini
582021baa7 re PR target/40741 (code size explosion for integer comparison)
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.

From-SVN: r153650
2009-10-28 10:17:29 +00:00
Johannes Singler
15e2a6c05e re PR libstdc++/40852 ([parallel-mode] parallel sort run time increases ~10 fold when vector size gets over ~4*10^9)
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.

From-SVN: r153648
2009-10-28 10:04:03 +00:00
Paolo Bonzini
533d4b998d expmed.c (emit_store_flag): Check costs before transforming to the opposite representation.
2009-10-28  Paolo Bonzini  <bonzini@gnu.org>

	* expmed.c (emit_store_flag): Check costs before
	transforming to the opposite representation.

From-SVN: r153647
2009-10-28 09:54:01 +00:00
Paolo Bonzini
42663bf194 sh.md (cbranchfp4_media): Remove hack extending cstore result to DImode.
2009-10-28  Paolo Bonzini  <bonzini@gnu.org>

	* config/sh/sh.md (cbranchfp4_media): Remove hack extending
	cstore result to DImode.

From-SVN: r153646
2009-10-28 09:49:58 +00:00
Kaz Kojima
f60e5a2065 sh.md (stuff_delay_slot): Move const_int pattern inside the unspec vector.
* config/sh/sh.md (stuff_delay_slot): Move const_int pattern
	inside the unspec vector.

From-SVN: r153643
2009-10-28 04:22:21 +00:00
GCC Administrator
5690de8f28 Daily bump.
From-SVN: r153621
2009-10-28 00:16:59 +00:00
Richard Henderson
9ba0399e73 * cgraphunit.c (cgraph_optimize): Maintain timevar stack properly.
From-SVN: r153618
2009-10-27 16:25:54 -07:00
Jason Merrill
b77068f27b 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().

From-SVN: r153617
2009-10-27 17:58:09 -04:00
Eric Botcazou
73d2803438 decl.c (purpose_member_field): New static function.
* gcc-interface/decl.c (purpose_member_field): New static function.
	(annotate_rep): Use it instead of purpose_member.

From-SVN: r153616
2009-10-27 20:24:31 +00:00
Richard Henderson
b7da9fd42d re PR c++/41819 (ICE with try/catch and -fno-exceptions)
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.

From-SVN: r153615
2009-10-27 13:09:07 -07:00
Eric Botcazou
df66d16528 raise-gcc (db_region_for): Use _Unwind_GetIPInfo instead of _Unwind_GetIP if HAVE_GETIPINFO is defined.
* raise-gcc (db_region_for): Use _Unwind_GetIPInfo instead of
	_Unwind_GetIP if HAVE_GETIPINFO is defined.
	(db_action_for): Likewise.

From-SVN: r153613
2009-10-27 19:41:13 +00:00
Dmitry Gorbachev
4c0f4b0b2f re PR lto/41652 (LTO plugin misconfiguration)
2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>

	PR lto/41652
	* configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
	* configure: Regenerate.

From-SVN: r153610
2009-10-27 18:17:13 +00:00
Kai Tietz
41ca8d0846 mingw32.h (CHECK_EXECUTE_STACK_ENABLED): New macro.
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

From-SVN: r153606
2009-10-27 18:14:47 +01:00
Uros Bizjak
2c9062e2c1 ChangeLog: Fix formatting.
* ChangeLog: Fix formatting.
	* testsuite/ChangeLog: Ditto.

From-SVN: r153604
2009-10-27 18:03:47 +01:00
Richard Guenther
5c245b956c tree-ssa-structalias.c (find_func_aliases): In IPA mode handle calls to externally visible functions like in regular mode.
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.

From-SVN: r153600
2009-10-27 15:52:44 +00:00
Jakub Jelinek
06302a02c0 re PR c/41842 (ICE on invalid variable length array declaration)
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.

From-SVN: r153599
2009-10-27 16:50:50 +01:00
Richard Guenther
b57d8e6f0c tree-complex.c (expand_complex_div_wide): Check for INTEGER_CST, not TREE_CONSTANT on comparison folding result.
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.

From-SVN: r153598
2009-10-27 15:16:35 +00:00
Robert Dewar
65a07a30aa s-fileio.adb, [...]: Minor reformatting
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

From-SVN: r153597
2009-10-27 15:14:44 +01:00
Arnaud Charlet
3d9d6c8e59 Minor doc updates.
From-SVN: r153596
2009-10-27 15:07:19 +01:00