Commit Graph

71758 Commits

Author SHA1 Message Date
Jerry DeLisle
740f04ef02 PR libgfortran/24699, 24700, 24719, 24785
2005-11-09  Jerry DeLisle <jvdelisle@gcc.gnu.org>

	PR libgfortran/24699, 24700, 24719, 24785
	* io/transfer.c (read_sf): Remove incorrect statement that was
	clearing bytes_left.
	(formatted_transfer_scalar): Add handling of end-of-record
	condition, setting values correctly to backup.  Handle x format
	when doing non-advancing write.
	(st_read): Initialize current_record.

From-SVN: r106797
2005-11-11 20:19:21 +00:00
Paolo Carlini
77633f4cd0 re PR libstdc++/24799 (std::tr1::hash missing inheritance)
2005-11-11  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24799
	* include/tr1/functional (hash): Inherit from std::unary_function.
	* testsuite/tr1/6_containers/unordered/hash/24799.cc: New.

	PR libstdc++/24805
	* include/tr1/boost_shared_ptr.h (swap(shared_ptr<>&, shared_ptr<>&),
	swap(weak_ptr<>&, weak_ptr<>&)): Move inside namespace tr1.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
	24805.cc: New.

	PR libstdc++/24809
	* include/tr1/type_traits (__is_polymorhpic_helper): Adjust destructor.
	* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
	24809.cc: New.

From-SVN: r106796
2005-11-11 20:10:20 +00:00
Steven Bosscher
a7f4ccb197 re PR target/24265 (ICE: in extract_insn, at recog.c:2084 with -O -fgcse -fmove-loop-invariants -mtune=pentiumpro)
PR 24265
	* loop-invariant.c (may_assign_reg_p): Make sure a hard register
	can be assigned to.
	(find_invariant_insn): Do the cheapest check, may_assign_reg_p,
	before check_maybe_invariant.
	(move_invariant_reg): Use gen_move_insn instead of replacing
	SET_DEST with the temporary for the invariant.
	(move_loop_invariants): If checking is enabled, do internal
	consistency checks after completing the pass.

From-SVN: r106795
2005-11-11 19:34:39 +00:00
David Edelsohn
d35a40fca5 re PR c/24644 (gcc-4.1 compiled ppc64 kernels do not boot)
PR 24644
        * common.opt (Wvolatile-register-var): New.
        * varasm.c (make_decl_rtl): Only emit warning when option
        specified.  Clarify warning message.
        * doc/invoke.texi (Wvolatile-register-var): Document new option.

        * doc/md.texi (copysign): Document standard named pattern.

From-SVN: r106791
2005-11-11 12:59:54 -05:00
Jie Zhang
51a641fdb2 bfin.c (bfin_expand_strmov): Correctly move the trailing bytes when align is 2.
* config/bfin/bfin.c (bfin_expand_strmov): Correctly move the trailing
	bytes when align is 2.
	* config/bfin/bfin.md (rep_movsi, rep_movhi): Make LSETUP be followed
	by the first instruction of the loop.

From-SVN: r106790
2005-11-11 17:58:31 +00:00
Jason Merrill
47b266bdfe fix
From-SVN: r106788
2005-11-11 12:16:53 -05:00
Jason Merrill
422dfbc43f re PR c++/24686 (ICE when building a variation of NMSTL)
PR c++/24686
        * gimplify.c (gimplify_cleanup_point_expr): Also save and restore
        the cleanup list.

From-SVN: r106787
2005-11-11 12:15:48 -05:00
Jason Merrill
df77f45463 re PR c++/24686 (ICE when building a variation of NMSTL)
PR c++/24686
        * gimplify.c (gimplify_cleanup_point_expr): Also save and restore
        the cleanup list.

From-SVN: r106786
2005-11-11 12:14:49 -05:00
Zdenek Dvorak
301a8f9577 re PR rtl-optimization/22509 (elemental.f90 testsuite failure (-fweb))
PR rtl-optimization/22509
	* local-alloc.c (memref_used_between_p): Check whether a function call
	could not reference the memref.

From-SVN: r106783
2005-11-11 13:38:07 +00:00
Ulrich Weigand
8a4c09c833 postreload.c (reload_cse_simplify_operands): Fix bug in sorting algorithm so as to choose the best, not the worst, alternative.
* postreload.c (reload_cse_simplify_operands): Fix bug in sorting
	algorithm so as to choose the best, not the worst, alternative.
	Reset accumulated register class before processing next alternative.

From-SVN: r106780
2005-11-11 09:38:52 +00:00
Paul Thomas
a5df14d4e5 re PR fortran/15976 (ICE: assertion failure in trans-array.c)
PR fortran/15976
* resolve.c (resolve_symbol): Disallow automatic arrays in module scope.
* gfortran.dg/automatic_module_variable.f90: New test.



Co-Authored-By: Steven G. Kargl <kargls@comcast.net>

From-SVN: r106777
2005-11-11 04:44:16 +00:00
Kaz Kojima
f2d186905a re PR target/24445 ("unable to find a register to spill in class 'R0_REGS")
PR target/24445
	* calls.c (expand_call): Copy a return value to a plain register
	if needed.

	* gcc.dg/pr24445.c: New test.

From-SVN: r106774
2005-11-11 02:12:42 +00:00
GCC Administrator
253109d2ee Daily bump.
From-SVN: r106767
2005-11-11 00:17:03 +00:00
Paul Thomas
9081e356a1 re PR fortran/24655 (ICE with statement function)
2005-11-10  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/24655
	PR fortran/24755
	* match.c (recursive_stmt_fcn): Add checks that symtree exists
	for the expression to weed out inline intrinsic functions and
	parameters.

	PR fortran/24409
	* module.c (mio_symtree_ref): Correct the patch of 0923 so that
	a symbol is not substituted for by a the symbol for the module
	itself and to prevent the promotion of a formal argument.

2005-11-10  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/24655
	PR fortran/24755
	* gfortran.dg/recursive_statement_functions.f90: Add statement 
	functions using inline intrinsic functions and parameters to test
	that they no longer seg-fault.

	PR fortran/24409
	gfortran.dg/nested_modules_4.f90: New test.
	gfortran.dg/nested_modules_5.f90: New test.

From-SVN: r106756
2005-11-10 22:24:28 +00:00
Tobias Schlüter
c040ffff75 re PR fortran/24643 (Unclassifiable statement on implicitly typed character substring)
fortran/
PR fortran/24643
* primary.c (match_varspec): Check for implicitly typed CHARACTER
variables before matching substrings.

testsuite/
PR fortran/24643
* gfortran.dg/implicit_6.f90, gfortran.dg/implicit_7.f90: New.

From-SVN: r106753
2005-11-10 22:49:29 +01:00
Alexandre Oliva
5f4b73288d attr-weakref-1.c: Add exit (0) to avoid spurious failures.
* gcc.dg/attr-weakref-1.c: Add exit (0) to avoid spurious
failures.

From-SVN: r106750
2005-11-10 20:44:02 +00:00
Alexandre Oliva
a114b45547 re PR target/24778 (Assembler errors during bootstrap)
PR target/24778
* varasm.c (assemble_name): Recompute name only for transparent
aliases.

From-SVN: r106749
2005-11-10 19:54:06 +00:00
Hans-Peter Nilsson
f5d7990b73 * tree-ssa-structalias.c (heapvar_lookup): Fix typo: stmt to from.
From-SVN: r106746
2005-11-10 18:53:24 +00:00
Jeff Law
ae14e67b2f tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Do not perform reassociation if the parent statement will not die as a result...
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Do not
        perform reassociation if the parent statement will not die as
        a result of the optimization.

From-SVN: r106744
2005-11-10 11:31:07 -07:00
Daniel Berlin
c900f6aa99 tree-ssa-alias.c (compute_may_aliases): Remove call to delete_old_heap_vars.
2005-11-10  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-alias.c (compute_may_aliases): Remove call to 
	delete_old_heap_vars.
	* tree-dfa.c (referenced_var_remove): Remove function.
	* tree-ssa.c (init_tree_ssa): Call init_alias_heapvars.
	(delete_tree_ssa): Remove call to delete_old_heapvars.
	Add call to delete_alias_heapvars.
	* tree-flow.h (referenced_var_remove): Remove prototype
	(init_alias_heapvars): New prototype.
	(delete_alias_heapvars): Ditto.
	* Makefile.in (tree-ssa-structalias.o): Add
	gt-tree-ssa-structalias.o
	(GTFILES): Add tree-ssa-structalias.h and
	tree-ssa-structalias.c.
	(s-gtype): Add gt-tree-ssa-structalias.h.
	* tree-ssa-structalias.c (heapvars): Remove.
	(oldheapvars): Remove.
	(heapvar_for_stmt): New variable.
	(heapvar_lookup): New function.
	(heapvar_insert): Ditto.
	(get_constraint_for): See if we have an old heapvar
	to reuse.
	(init_alias_heapvars): New function.
	(delete_alias_heapvars): Ditto.
	Add include of gt-tree-ssa-structalias.h.

From-SVN: r106743
2005-11-10 17:23:49 +00:00
Andreas Jaeger
0618ee3194 libgfortran.h: Add proper defines where needed.
* libgfortran.h: Add proper defines where needed.

From-SVN: r106741
2005-11-10 18:14:26 +01:00
Eric Botcazou
cd9ed4b4eb re PR middle-end/22127 (register window not preserved after getcontext call)
PR middle-end/22127
	* calls.c (special_function_p): Set ECF_RETURNS_TWICE for getcontext.

From-SVN: r106739
2005-11-10 16:58:56 +00:00
Eric Botcazou
d25f3b83ce tree.c (int_fits_type_p): Only look at the base type if it has the same precision as the original type.
* tree.c (int_fits_type_p): Only look at the base type
	if it has the same precision as the original type.

From-SVN: r106738
2005-11-10 16:24:54 +00:00
Paolo Carlini
c579887923 enable_shared_from_this/not_shared.cc: Adjust, remove xfail.
2005-11-10  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared.cc: Adjust, remove xfail.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared2.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared3.cc: Likewise.

From-SVN: r106736
2005-11-10 15:13:15 +00:00
Jakub Jelinek
6d3e3e6aa9 re PR other/4372 (#pragma weak pthread* inclusion causes applications to crash without a linker error when one forgets to link with -lpthread)
PR other/4372
	* varasm.c (assemble_alias): Use %q+D in the error
	message instead of %J and %qD.

From-SVN: r106735
2005-11-10 14:14:05 +01:00
Richard Guenther
35b5442aff gcse.c (free_ldst_entry): Only free hashtable if it exists.
2005-11-10  Richard Guenther  <rguenther@suse.de>

	* gcse.c (free_ldst_entry): Only free hashtable if
	it exists.

From-SVN: r106734
2005-11-10 12:44:19 +00:00
Paolo Carlini
a15024e630 boost_shared_ptr.h (_Sp_counted_base::release, [...]): Protect barriers with __GTHREADS.
2005-11-10  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
	weak_release): Protect barriers with __GTHREADS.

From-SVN: r106733
2005-11-10 12:03:50 +00:00
Eric Botcazou
f45ddfe08e re PR ada/23995 (ICE on misaligned rep clause)
PR ada/23995
	* trans.c (call_to_gnu): Restore statement lost in translation.

From-SVN: r106731
2005-11-10 11:32:56 +00:00
Andreas Jaeger
e82726f937 libgfortran.h: Add missing prototypes for internal_pack functions.
* libgfortran.h: Add missing prototypes for internal_pack
        functions.

From-SVN: r106730
2005-11-10 12:21:53 +01:00
Paolo Carlini
7fd6021841 boost_shared_ptr.h (_Sp_counted_base::release): Optimize by manually inlining weak_release.
2005-11-10  Paolo Carlini  <pcarlini@suse.de>
	    Peter Dimov  <pdimov@mmltd.net>

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release):
	Optimize by manually inlining weak_release.

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
	weak_release): Use explicit memory barriers.

	

Co-Authored-By: Peter Dimov <pdimov@mmltd.net>

From-SVN: r106729
2005-11-10 10:46:27 +00:00
Benjamin Kosnik
720e2f72c3 re PR libstdc++/22203 (std::numeric_limits<int>::traps is wrong on PPC)
2005-11-09  Benjamin Kosnik  <bkoz@redhat.com>
	    Paolo Carlini  <pcarlini@suse.de>
            Gabriel Dos Reis  <gdr@integrable-solutions.net>

	PR libstdc++/22203
	* numeric_limits.cc: Split into...
	* numeric_limits/specialization.cc: ..this.
	* numeric_limits/is_iec559.cc: Same.
	* numeric_limits/sign.cc: Same.
	* numeric_limits/quiet_NaN.cc: Same.
	* numeric_limits/digits10.cc: Same.
	* numeric_limits/denorm_min.cc: Same.
	* numeric_limits/min_max.cc: Same.
	* numeric_limits/epsilon.cc: Same.
	* numeric_limits/infinity.cc: Same.
	* numeric_limits/traps.cc: New.


Co-Authored-By: Gabriel Dos Reis <gdr@integrable-solutions.net>
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r106727
2005-11-10 02:05:13 +00:00
GCC Administrator
bc33cab29c Daily bump.
From-SVN: r106723
2005-11-10 00:17:13 +00:00
Eric Botcazou
9070115b6c function.c (assign_stack_local_1): Issue an error message if the frame size overflows in the signed target arithmetics.
* function.c (assign_stack_local_1): Issue an error message if
	the frame size overflows in the signed target arithmetics.

From-SVN: r106717
2005-11-09 23:28:59 +00:00
Eric Botcazou
7e854c00d0 tree.c (build_qualified_type): Chain the new type to the original type's TYPE_NEXT_PTR_TO or TYPE_NEXT_REF_TO...
* tree.c (build_qualified_type): Chain the new type to the original
	type's TYPE_NEXT_PTR_TO or TYPE_NEXT_REF_TO linked lists if it is
	a POINTER_TYPE or a REFERENCE_TYPE respectively.
	(build_pointer_type_for_mode): Only return unqualified types.
	(build_reference_type_for_mode): Likewise.

From-SVN: r106716
2005-11-09 23:13:08 +00:00
Steven G. Kargl
378e957760 Fix typo in comment.
From-SVN: r106709
2005-11-09 21:40:11 +00:00
Jakub Jelinek
63b5e789b0 Makefile.in (gnucompare): Do comparison of all files using one of the chosen methods and only afterwards...
* Makefile.in (gnucompare): Do comparison of all files using one of
	the chosen methods and only afterwards decide if just warning should
	be issued or comparison failure raised.

From-SVN: r106707
2005-11-09 22:36:06 +01:00
Eric Botcazou
c8e90f4053 ifcvt.c (noce_get_alt_condition): Use prev_nonnote_insn.
* ifcvt.c (noce_get_alt_condition): Use prev_nonnote_insn.
	(noce_try_abs): Negate if the comparison is reversed.
	Look only one instruction backwards for a REG_EQUAL note.

From-SVN: r106706
2005-11-09 21:34:31 +00:00
Alexandre Oliva
7ef67393c7 re PR other/4372 (#pragma weak pthread* inclusion causes applications to crash without a linker error when one forgets to link with -lpthread)
gcc/ChangeLog:
PR other/4372
* gthr-dce.h, gthr-posix.h, gthr-posix95.h, gthr-solaris.h,
gthr-tpf.h: Define __gthrw.  For all identifiers that might
be weak, introduce weakrefs or non-weak aliases with __gthrw,
and prefix all uses with __ghtrw.
libobjc/ChangeLog:
PR other/4372
* thr-objc.c (_XOPEN_SOURCE): Define.

From-SVN: r106704
2005-11-09 20:57:30 +00:00
Alexandre Oliva
a0203ca711 re PR other/4372 (#pragma weak pthread* inclusion causes applications to crash without a linker error when one forgets to link with -lpthread)
PR other/4372
* tree.h (IDENTIFIER_TRANSPARENT_ALIAS): New.
(TREE_DEPRECATED): Adjust comment.  Check for a DECL.
* c-common.c (handle_weakref_attribute): New.
(c_common_attribute_table): Add weakref.
* configure.ac (HAVE_GAS_WEAKREF): Check for weakref support
in the assembler.
* configure, config.in: Rebuilt.
* defaults.h (ASM_OUTPUT_WEAKREF): Define if HAVE_GAS_WEAKREF.
* doc/extend.texi: Document weakref attribute.
* varasm.c (ultimate_transparent_alias_target): New
(assemble_name): Use it.
(weak_finish_1): Split out of...
(weak_finish): ... and deal with weakrefs in...
(weakref_targets): ... new list.
(globalize_decl): Clean up weakref_targets.
(do_assemble_alias): Handle weakrefs.
(finish_aliases_1): Do not reject weakrefs to external symbols.
(assemble_alias): Handle weakrefs.

From-SVN: r106703
2005-11-09 20:13:41 +00:00
Tom Tromey
317adebb1f jacks.xfail (non-jls-zip-2): Now passes.
* testsuite/libjava.jacks/jacks.xfail (non-jls-zip-2): Now
	passes.

From-SVN: r106702
2005-11-09 19:15:30 +00:00
Richard Guenther
874caa0019 re PR tree-optimization/24716 (Wrong code generated when optimising)
2005-11-09  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/24716
	* tree-scalar-evolution.c (analyze_evolution_in_loop): Use
	t_bool to track results from follow_ssa_edge.

	* gcc.c-torture/execute/pr24716.c: New testcase.

From-SVN: r106700
2005-11-09 18:00:59 +00:00
Eric Botcazou
b8176fe4bb final.c (force_source_line): New global variable.
* final.c (force_source_line): New global variable.
	(final_scan_insn): Set it to true instead of clearing last_filename.
	(notice_source_line): Return true if force_source_line is true,
	unless source info is absent.

From-SVN: r106699
2005-11-09 17:11:53 +00:00
Andrew Pinski
fcc207bfd7 re PR c/24644 (gcc-4.1 compiled ppc64 kernels do not boot)
2005-11-09  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c/24644
        * dwarf2-out.c (add_name_and_src_coords_attributes): Don't add
        a linkage name for a variable if it a register variable.
        * c-decl.c (grokdeclarator): Global register variables
        should be set as PUBLIC.

From-SVN: r106693
2005-11-09 04:33:59 -08:00
Andreas Krebbel
3a64e86053 Added PR number.
From-SVN: r106692
2005-11-09 12:26:06 +00:00
Andreas Krebbel
375fa7c39b pr24624.c: Disable for non S/390 targets.
2005-11-09  Andreas Krebbel  <krebbel1@de.ibm.com>

	* gcc.dg/pr24624.c: Disable for non S/390 targets.

From-SVN: r106691
2005-11-09 12:17:22 +00:00
Andreas Krebbel
71923548c7 Moved testsuite changes from gcc/ChangeLog to gcc/testsuite/ChangeLog
From-SVN: r106690
2005-11-09 12:00:52 +00:00
Paolo Carlini
8180951683 boost_shared_ptr.h: Trivial formatting fixes.
2005-11-09  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/boost_shared_ptr.h: Trivial formatting fixes.

From-SVN: r106689
2005-11-09 11:47:30 +00:00
Andreas Krebbel
fb3712f61f s390.c (struct s390_frame_layout): New fields first_save_gpr_slot and last_save_gpr_slot.
2005-11-09  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (struct s390_frame_layout): New fields 
	first_save_gpr_slot and last_save_gpr_slot.
	(cfun_grps_save_area_size, s390_frame_info, s390_emit_prologue,  
	s390_emit_epilogue, s390_initial_elimination_offset): Replaced 
	first_save_gpr and last_save_gpr with the _slot variants.
	(s390_register_info): Calculate first_save_gpr_slot and 
	last_save_gpr_slot using regs_ever_live.
	* testsuite/gcc.dg/pr24624.c: Testcase added.

From-SVN: r106688
2005-11-09 11:45:01 +00:00
Andreas Krebbel
297a777d47 s390.c (s390_regs_ever_clobbered): Only save live eh regs for a function containing a landing pad.
2005-11-09  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_regs_ever_clobbered): Only save live eh regs
	for a function containing a landing pad.
	* testsuite/g++.dg/other/pr24623.C: Testcase added.

From-SVN: r106687
2005-11-09 11:42:38 +00:00
Andreas Krebbel
7221b4a18c flow.c (mark_set_1): Handle CLOBBERs like SETs if the register is live afterwards.
2005-11-09  Andreas Krebbel  <krebbel1@de.ibm.com>

	* flow.c (mark_set_1): Handle CLOBBERs like SETs if the register
	is live afterwards.

From-SVN: r106686
2005-11-09 11:34:56 +00:00