Commit Graph

94426 Commits

Author SHA1 Message Date
Ben Elliston 2011dbb082 unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move pc_low and pc_high declarations to the top of the function.
* unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move
	pc_low and pc_high declarations to the top of the function.

From-SVN: r149167
2009-07-02 14:50:20 +10:00
Jason Merrill c57801d4ac * cp-tree.h (DECL_CLASS_TEMPLATE_P): Use DECL_IMPLICIT_TYPEDEF_P.
From-SVN: r149166
2009-07-01 23:51:04 -04:00
Jason Merrill 62e3e13ab3 pt.c (register_specialization): Use duplicate_decls to merge the argument with a previous specialization.
* pt.c (register_specialization): Use duplicate_decls to merge
	the argument with a previous specialization.
	(check_explicit_specialization): Call register_specialization to
	merge the TEMPLATE_DECL with a previous version.
	(determine_specialization): Return the args even if fn is a template.

From-SVN: r149165
2009-07-01 23:50:57 -04:00
DJ Delorie f2082f9028 mep.c (mep_handle_option): Leave IVC2 control registers as fixed.
* config/mep/mep.c (mep_handle_option): Leave IVC2 control
registers as fixed.
(mep_interrupt_saved_reg): Save appropriate IVC2 control
registers.
* config/mep/mep-ivc2.cpu: Add VOLATILE to insns that make
unspecified accesses to control registers.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.

From-SVN: r149164
2009-07-01 22:16:32 -04:00
Anthony Green 9df748c0ca Tweak moxie prologue and epilogue code.
From-SVN: r149163
2009-07-02 01:18:42 +00:00
GCC Administrator b0f0c81783 Daily bump.
From-SVN: r149162
2009-07-02 00:16:50 +00:00
Richard Henderson 997704f18b re PR bootstrap/40347 (i386-darwin ICEs while building libgcc during stage2)
PR bootstrap/40347
	* function.c (reposition_prologue_and_epilogue_notes): If epilogue
	contained no insns, reposition note before last insn.

From-SVN: r149158
2009-07-01 16:21:17 -07:00
Richard Henderson 9f2af3cef8 re PR debug/40431 (ICE in div_data_align, at dwarf2out.c:533 while configuring sparcv9 libgcc)
PR debug/40431
	* dwarf2out.c (def_cfa_1): Revert 2009-06-11 change for
	DW_CFA_def_cfa_offset and DW_CFA_def_cfa.

From-SVN: r149157
2009-07-01 16:16:06 -07:00
Michael Meissner d66a97e281 Fix PR 40558, undo part of June 25th patch
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Revital Eres <eres@il.ibm.com>

From-SVN: r149155
2009-07-01 22:34:26 +00:00
Adam Nemet 479b101323 combine.c (force_to_mode): Handle TRUNCATE.
* combine.c (force_to_mode): Handle TRUNCATE.  Factor out
	truncation from operands in binary operations.

testsuite/
	* gcc.target/mips/truncate-4.c: New testcase.

From-SVN: r149154
2009-07-01 21:34:58 +00:00
Adam Nemet c600a15524 revert: expmed.c (store_bit_field_1): Properly truncate the paradoxical subreg of op0 to the original op0.
Revert:
	2009-01-11  Adam Nemet  <anemet@caviumnetworks.com>
	* expmed.c (store_bit_field_1): Properly truncate the paradoxical
	subreg of op0 to the original op0.

	* expmed.c (store_bit_field_1): Use a temporary as the destination
	instead of a paradoxical subreg when we need to truncate the result.

From-SVN: r149153
2009-07-01 21:22:28 +00:00
Eric Botcazou bf92f919e9 Fix nits
From-SVN: r149152
2009-07-01 20:20:25 +00:00
DJ Delorie a12e9a5f69 mep-ivc2.cpu (cmov, [...]): Add intrinsic names to VLIW variants.
* config/mep/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic names to VLIW variants.
(ivc2rm, ivc2crn): Make data type consistent with non-VLIW variants.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.

From-SVN: r149151
2009-07-01 16:07:41 -04:00
Jakub Jelinek 2a5bd62a7f re PR debug/40462 (ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2773 while compiling mlib-tgt.adb)
PR debug/40462
	* jump.c (returnjump_p): Revert last patch.
	* dwarf2out.c (dwarf2out_begin_epilogue): Handle SEQUENCEs.

From-SVN: r149150
2009-07-01 21:25:52 +02:00
Richard Sandiford edd3a61c4a libffi-dg.exp (libffi-init): Set ld_library_path to "" before adding paths.
libffi/
	* testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path
	to "" before adding paths.  (This reinstates an assignment that
	was removed by my 2009-06-30 commit, but changes the initial
	value from "." to "".)

From-SVN: r149149
2009-07-01 19:15:33 +00:00
Jakub Jelinek e904d28b2c HTML_401F.java (defineElements): Split this huge method into...
* gnu/javax/swing/text/html/parser/HTML_401F.java (defineElements):
	Split this huge method into...
	(defineElements1, defineElements2, defineElements3, defineElements4,
	defineElements5, defineElements6): ... these smaller methods.

From-SVN: r149148
2009-07-01 21:13:03 +02:00
Ian Lance Taylor 96f9e8545d * g++spec.c (lang_specific_driver): Bump num_args by 1.
From-SVN: r149147
2009-07-01 18:46:09 +00:00
John David Anglin 882e35a6f2 re PR ada/40609 (Ada build fails)
PR ada/40609
	init.c (__gnat_error_handler): Add ATTRIBUTE_UNUSED to ucontext
	argument.

From-SVN: r149146
2009-07-01 18:10:45 +00:00
H.J. Lu 33d1a550c7 re PR testsuite/40601 (Errors in "make check")
2009-07-01  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/40601
	* testsuite/lib/libffi-dg.exp (libffi-init): Properly set
	gccdir.  Adjust ld_library_path for gcc only if gccdir isn't
	empty.

From-SVN: r149145
2009-07-01 10:07:31 -07:00
John David Anglin 4aa7f896a9 re PR target/40575 (FAIL: gcc.dg/falign-labels-1.c execution test)
PR target/40575
	* pa.md (casesi32p): Use jump table label to determine the offset
	of the jump table.
	(casesi64p): Likewise.

From-SVN: r149144
2009-07-01 16:53:26 +00:00
John David Anglin 3232e9d8b8 pa.c (forward_branch_p): Return bool type.
* pa.c (forward_branch_p): Return bool type.  Use instruction addresses
	when available.  Assert that INSN has a jump label.
	(pa_adjust_insn_length): Don't call forward_branch_p if INSN doesn't
	have a jump label.

From-SVN: r149141
2009-07-01 15:47:33 +00:00
Richard Guenther 14c41b9bb9 re PR tree-optimization/19831 (Missing DSE/malloc/free optimization)
2009-07-01  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/19831
	* tree-ssa-dce.c (propagate_necessity): Calls to functions
	that only act as barriers do not make any previous stores
	necessary.
	* tree-ssa-structalias.c (handle_lhs_call): Delay making
	HEAP variables global, do not add a constraint from nonlocal.
	(find_func_aliases): Handle escapes through return statements.
	(compute_points_to_sets): Make escaped HEAP variables global.

	* gcc.dg/tree-ssa/20041122-1.c: Enable TBAA, scan FRE dump,
	make allocated memory escape.  Un-XFAIL.
	* gcc.dg/vect/pr21591.c: Make allocated memory escape.
	* gcc.dg/vect/pr31699.c: Likewise.
	* gcc.dg/tree-ssa/ssa-dce-7.c: New testcase.

	libmudflap/
	* testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
	escape.
	* testsuite/libmudflap.c/fail12-frag.c: Likewise.
	* testsuite/libmudflap.c/fail16-frag.c: Likewise.
	* testsuite/libmudflap.c/fail31-frag.c: Likewise.

From-SVN: r149140
2009-07-01 12:27:33 +00:00
Tobias Grosser f6e0880aa0 MAINTAINERS: Move myself to the Graphite Reviewers.
2009-07-01  Tobias Grosser  <grosser@fim.uni-passau.de>

	* MAINTAINERS: Move myself to the Graphite Reviewers.

From-SVN: r149138
2009-07-01 12:13:57 +00:00
Paolo Bonzini 1ed20a40b8 re PR bootstrap/40597 (Powerpc bootstrap is broken due to changes in expmed.c)
2009-07-01  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/40597
	* expmed.c (emit_store_flag): Perform a conversion if necessary,
	after reducing a DImode cstore to SImode.

From-SVN: r149137
2009-07-01 12:05:56 +00:00
Paolo Bonzini ce3aea3586 expr.c (expand_expr_real_1): Reinstate fallthrough to TRUTH_ANDIF_EXPR if do_store_flag returns NULL.
2009-07-01  Paolo Bonzini  <bonzini@gnu.org>

	* expr.c (expand_expr_real_1): Reinstate fallthrough to
	TRUTH_ANDIF_EXPR if do_store_flag returns NULL.

From-SVN: r149136
2009-07-01 11:50:12 +00:00
Eric Botcazou c29fe0c8bd * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
From-SVN: r149135
2009-07-01 09:08:27 +00:00
Maciej W. Rozycki 1df34d4da7 vax.h (TARGET_BSD_DIVMOD): New macro.
* config/vax/vax.h (TARGET_BSD_DIVMOD): New macro.  Set to 1.
	* config/vax/linux.h (TARGET_BSD_DIVMOD): New macro.  Redefine the
	to 0.
	* config/vax/vax.c (vax_init_libfuncs): Only redefine udiv_optab
	and umod_optab if TARGET_BSD_DIVMOD.
	* config/vax/lib1funcs.asm: New file.
	* config/vax/t-linux: New file.
	* config.gcc (vax-*-linux*): Set tmake_file to vax/t-linux.

From-SVN: r149128
2009-07-01 01:23:54 +00:00
GCC Administrator 429a907c9a Daily bump.
From-SVN: r149126
2009-07-01 00:16:57 +00:00
Jakub Jelinek 5ccde5a06a re PR c++/40566 (rejects promoted throw)
PR c++/40566
	* convert.c (convert_to_integer) <case COND_EXPR>: Don't convert
	to type arguments that have void type.

	* g++.dg/parse/cond5.C: New test.

From-SVN: r149121
2009-07-01 00:04:36 +02:00
Jakub Jelinek 085e05ac8f re PR debug/40573 (DWARF for inlined subroutines refers to the outlined copy)
PR debug/40573
	* dwarf2out.c (gen_formal_parameter_die): Call
	equate_decl_number_to_die if node is different from origin.

From-SVN: r149120
2009-07-01 00:03:27 +02:00
Nathan Froyd 92ce2174f6 gen-vect-25.c (n): New variable.
* gcc.dg/tree-ssa/gen-vect-25.c (n): New variable.
	(main): Pass n to main_1 instead.
	* gcc.dg/tree-ssa/gen-vect-28.c (off): New variable.
	(main_1): New function, split off from...
	(main): ...here.  Pass `off' to main_1 instead.

From-SVN: r149119
2009-06-30 21:10:14 +00:00
Jason Merrill 0db906f185 re PR c++/40595 ([C++0x] ICE trying to use sfinae with variadic template pack expansion)
PR c++/40595
	* pt.c (tsubst_pack_expansion): Handle unexpanded packs in an
	EXPR_PACK_EXPANSION.

From-SVN: r149117
2009-06-30 15:36:36 -04:00
Eric Botcazou 342f368cd9 utils2.c (build_binary_op): Do not use the type of the left operand if...
* gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
	the type of the left operand if it pads a self-referential type when
	the right operand is a constructor.

	* gcc-interface/lang-specs.h: Fix copyright date.

From-SVN: r149115
2009-06-30 19:20:24 +00:00
Anthony Green 9fb374d6a8 Enable building with g++.
From-SVN: r149114
2009-06-30 18:59:41 +00:00
Richard Sandiford b30bfd402f gcc-defs.exp (gcc-set-multilib-library-path): Delete.
gcc/testsuite/
	* lib/gcc-defs.exp (gcc-set-multilib-library-path): Delete.
	* lib/target-libpath.exp (ld_library_path_vars): New variable.
	(init_ld_library_path_env_vars): New function, replacing the
	orig_*_saved assignments.  Call it after defining it.
	(set_ld_library_path_env_vars): Rewrite to use ld_library_path_vars.
	(restore_ld_library_path_env_vars): Likewise.
	(add_path, find_libgcc_s): New functions.
	* lib/objc.exp (objc_init): Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	(objc_target_compile): Don't add "." to ld_library_path.
	Use add_path.
	* lib/gfortran.exp (gfortran_link_flags): Don't add "." to
	ld_library_path.  Use add_path.  Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	* lib/g++.exp (g++_link_flags): Likewise.
	* lib/obj-c++.exp (obj-c++_link_flags): Likewise.
	* lib/c-torture.exp: Do not manipulate ld_library_path at the
	top level; do it...
	(c-torture-execute): ...here instead.  Use $ld_library_path_multilib
	to tell when this needs to happen.  Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	* lib/gcc-dg.exp: Likewise.
	* lib/gnat.exp (gnat_target_compile): Don't add "." to ld_library_path.
	* g++.dg/compat/compat.exp (alt_ld_library_path): Don't add "."
	unless it is in $ALT_LD_LIBRARY_PATH.
	* g++.dg/compat/struct-layout-1.exp (alt_ld_library_path): Likewise.

libffi/
	* testsuite/lib/libffi-dg.exp (libffi-init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s
	to ld_library_path, not every libgcc multilib directory.

libgomp/
	* testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
	ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.
	* testsuite/libgomp.c/c.exp (ld_library_path): Don't call
	gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
	* testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
	Use add_path.
	* testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.

libjava/
	* testsuite/lib/libjava.exp (libjava_init): Just add
	find_libgcc_s to libjava_libgcc_s_path, rather than every
	libgcc multilib directory.
	(libjava_arguments): Explain why we add "." to ld_library_path.
	(gcj_invoke, exec_gij, libjava_invoke): Use add_path.

libmudflap/
	* testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.

libstdc++-v3/
	* testsuite/lib/libstdc++.exp (libstdc++_init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.

From-SVN: r149113
2009-06-30 18:37:57 +00:00
Eric Botcazou f82a627cf5 cgraphunit.c (cgraph_finalize_compilation_unit): Call finalize_size_functions before further processing.
* cgraphunit.c (cgraph_finalize_compilation_unit): Call
	finalize_size_functions before further processing.
	* stor-layout.c: Include cgraph.h, tree-inline.h and tree-dump.h.
	(variable_size): Call self_referential_size on size expressions
	that contain a PLACEHOLDER_EXPR.
	(size_functions): New static variable.
	(copy_self_referential_tree_r): New static function.
	(self_referential_size): Likewise.
	(finalize_size_functions): New global function.
	* tree.c: Include tree-inline.h.
	(push_without_duplicates): New static function.
	(find_placeholder_in_expr): New global function.
	(substitute_in_expr) <tcc_declaration>: Return the replacement object
	on equality.
	<tcc_expression>: Likewise.
	<tcc_vl_exp>: If the replacement object is a constant, try to inline
	the call in the expression.
	* tree.h (finalize_size_functions): Declare.
	(find_placeholder_in_expr): Likewise.
	(FIND_PLACEHOLDER_IN_EXPR): New macro.
	(substitute_placeholder_in_expr): Update comment.
	* tree-inline.c (remap_decl): Do not unshare trees if do_not_unshare
	is true.
	(copy_tree_body_r): Likewise.
	(copy_tree_body): New static function.
	(maybe_inline_call_in_expr): New global function.
	* tree-inline.h (struct copy_body_data): Add do_not_unshare field.
	(maybe_inline_call_in_expr): Declare.
	* Makefile.in (tree.o): Depend on TREE_INLINE_H.
	(stor-layout.o): Depend on CGRAPH_H, TREE_INLINE_H, TREE_DUMP_H and
	GIMPLE_H.
ada/
	* gcc-interface/decl.c: Include tree-inline.h.
	(annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
	* gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
	* gcc-interface/utils2.c: Include tree-inline.
	(known_alignment) <CALL_EXPR>: Likewise.

From-SVN: r149112
2009-06-30 17:26:32 +00:00
Thomas Koenig c1a5cfab17 re PR fortran/40576 (Endless loop in internal write)
2009-06-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/40576
	* gfortran.dg/internal_write_1.f90:  New testcase.

From-SVN: r149109
2009-06-30 17:10:06 +00:00
Janus Weil 3e6d828d52 re PR fortran/40594 (wrong-code)
2009-06-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40594
	* trans-types.c (gfc_get_derived_type): Bugfix, reverting one hunk from
	r147206.


2009-06-30  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40594
	* gfortran.dg/derived_pointer_recursion_2.f90: New.

From-SVN: r149108
2009-06-30 19:06:27 +02:00
Richard Guenther 67635176a2 tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always continue walking.
2009-06-30  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always
	continue walking.
	(propagate_necessity): Do not mark reaching defs of stores
	as necessary.

	* gcc.dg/tree-ssa/ssa-dce-6.c: New testcase.

From-SVN: r149103
2009-06-30 15:23:39 +00:00
Jan Hubicka ca89096d93 Revert accidental commit.
From-SVN: r149102
2009-06-30 14:57:54 +00:00
Jan Hubicka 2de58650f9 cfgloopanal.c (check_irred): Move into ...
* cfgloopanal.c (check_irred): Move into ...
	(mark_irreducible_loops): ... here; return true if ireducible
	loops was found.
	* ipa-pure-const.c: Include cfgloop.h and tree-scalar-evolution.h
	(analyze_function): Try to prove loop finiteness.
	* cfgloop.h (mark_irreducible_loops): Update prototype.
	* Makefile.in (ipa-pure-const.o): Add dependency on SCEV and CFGLOOP.

From-SVN: r149101
2009-06-30 14:56:37 +00:00
Basile Starynkevitch 46db44ccae Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.
2009-06-30  Basile Starynkevitch  <basile@starynkevitch.net>

	* gcc/Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.

From-SVN: r149100
2009-06-30 14:36:55 +00:00
H.J. Lu 8088e9ee87 Remove testsuite in filenames.
From-SVN: r149098
2009-06-30 06:58:43 -07:00
Paolo Carlini a0560e75a7 re PR libstdc++/40600 (pair& operator=(pair&& __p) doesn't work without inlining)
2009-06-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40600
	* testsuite/25_algorithms/minmax/2.cc: Fix consistently with
	std::minmax return type.
	* testsuite/25_algorithms/minmax/3.cc: Likewise.

From-SVN: r149094
2009-06-30 12:09:57 +00:00
Wei Guozhi d8dc68cb63 ssa-sink-5.c: Change the compiler option "-O2 -Os" to "-Os".
* gcc.dg/tree-ssa/ssa-sink-5.c: Change the compiler option "-O2 -Os"
	to "-Os".

From-SVN: r149093
2009-06-30 12:01:40 +00:00
Ira Rosen 1825a1f3ca re PR tree-optimization/40542 (vectorizes access to volatile array)
PR tree-optimization/40542
	* tree-vect-stmts.c (vect_analyze_stmt): Don't vectorize volatile 
	types.

From-SVN: r149090
2009-06-30 11:33:27 +00:00
Paolo Carlini 0dca215363 re PR libstdc++/40511 (Bootstrap Failure in stage3: c++locale - Recent SVN)
2009-06-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40511
	* config/locale/gnu/c_locale.cc: Don't use LC_CTYPE_MASK together
	with glibc2.2.x.

From-SVN: r149089
2009-06-30 10:45:54 +00:00
Martin Jambor 71d4d3eb2e re PR tree-optimization/40582 (ice for non-trivial conversion at assignment with -O2)
2009-06-30  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/40582
	* tree-sra.c (build_ref_for_offset_1): Use types_compatible_p rather
	than useless_type_conversion_p.
	(generate_subtree_copies): Increment sra_stats.subtree_copies at a
	proper place.

	* testsuite/gcc.c-torture/compile/pr40582.c: New test.

From-SVN: r149088
2009-06-30 12:10:29 +02:00
Martin Jambor f57017cdbb re PR middle-end/40554 (Revision 148941 miscompiled 447.dealII in SPEC CPU 2006)
2009-06-30  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/40554
	* tree-sra.c (sra_modify_expr): Add access->offset to start_offset.

From-SVN: r149087
2009-06-30 12:03:26 +02:00
Richard Guenther 42bc61e056 tree-ssa-alias.c (walk_aliased_vdefs_1): Change interface to use ao_ref references.
2009-06-30  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-alias.c (walk_aliased_vdefs_1): Change interface to
	use ao_ref references.
	(walk_aliased_vdefs): Likewise.
	* tree-ssa-alias.h (walk_aliased_vdefs): Adjust prototype.
	* tree-ssa-dce.c (struct ref_data): Remove.
	(mark_aliased_reaching_defs_necessary_1): Use the ao_ref argument.
	(mark_aliased_reaching_defs_necessary): Adjust.
	(mark_all_reaching_defs_necessary_1): Likewise.

From-SVN: r149086
2009-06-30 09:55:34 +00:00