Commit Graph

80811 Commits

Author SHA1 Message Date
Paul Thomas eb77cddf42 re PR fortran/30746 (50th Anniversary Bug - Forward reference to contained function)
2007-05-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30746
	* resolve.c (check_host_association): New function that detects
	incorrect host association and corrects it.
	(gfc_resolve_expr): Call the new function for variables and
	functions.
	* match.h : Remove prototype for gfc_match_rvalue.
	* gfortran.h : Add prototype for gfc_match_rvalue.

2007-05-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30746
	* gfortran.dg/host_assoc_function_1.f90: New test.

From-SVN: r124633
2007-05-12 06:19:43 +00:00
GCC Administrator e39187d4f3 Daily bump.
From-SVN: r124631
2007-05-12 00:18:05 +00:00
Steve Ellcey cf63664aec re PR c++/31829 (FAIL: g++.dg/warn/multiple-overflow-warn-3.C (test for warnings, line 8))
PR c++/31829
	* g++.dg/warn/multiple-overflow-warn-3.C: Change wchar_t to short.

From-SVN: r124628
2007-05-11 22:56:10 +00:00
Paolo Carlini 538075fe42 pod_char_traits.h (char_traits<>::move): Use __builtin_memmove.
2007-05-11  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/pod_char_traits.h (char_traits<>::move):
	Use __builtin_memmove.
	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
	collate_byname(const char*, size_t)): Use __builtin_strcmp.
	* include/bits/locale_facets.h: Use __builtin_mem* and
	__builtin_str* everywhere.
	* include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
	Use __builtin_strcmp.
	* include/bits/char_traits.h: Use __builtin_mem* everywhere.
	* include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
	Use __builtin_memcpy and __builtin_memmove.
	* include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
	size_t __refs)): Use __builtin_strcmp.
	* include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
	* config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
	and __builtin_memcpy.
	* config/locale/gnu/messages_members.h: Likewise.
	* config/locale/gnu/time_members.h: Likewise.
	* config/locale/generic/c_locale.h: Likewise.
	* config/locale/generic/messages_members.h: Likewise.
	* config/locale/generic/time_members.h: Likewise.
	* config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
	* config/os/tpf/ctype_noninline.h: Likewise.
	* config/locale/generic/codecvt_members.cc: Include <cstring>. 
	* config/locale/generic/ctype_members.cc: Likewise.
	* config/locale/generic/collate_members.cc: Likewise.
	* config/locale/gnu/c++locale_internal.h: Likewise.
	* config/locale/darwin/ctype_members.cc: Likewise.
	* src/ctype.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
	* config/locale/gnu/messages_members.cc: Avoid strdup.
	* config/locale/gnu/monetary_members.cc: Likewise.
	* config/locale/gnu/time_members.cc: Likewise.	
	* config/locale/gnu/time_members.cc: Likewise.
	* config/locale/generic/c_locale.cc: Likewise.

From-SVN: r124623
2007-05-11 18:58:08 +00:00
Silvius Rus 79bedddc8f Makefile.in (OBJS-common): Add tree-ssa-alias-warnings.o.
gcc/
        * Makefile.in (OBJS-common): Add tree-ssa-alias-warnings.o.
        * c-common.c (strict_aliasing_warning): Modify -Wstrict-aliasing logic.
        * c-common.h (strict_aliasing_warning): Change return type.
        * c-opts.c (c_common_handle_option): Add call to set_Wstrict_aliasing.
        * c-typeck.c (build_indirect_ref): Add call to strict_aliasing_warning.
        (build_c_cast): Condition call to strict_aliasing_warning.
        * doc/invoke.texi: Update description of -Wstrict-aliasing[=n].
        * flags.h (set_Wstrict_aliasing): Declare.
        * opts.c (set_Wstrict_alising): Define, add call to.
        * tree-flow.h (strict_aliasing_warning_backend): Declare.
        * tree-ssa-alias-warnings.c: New file.
        * tree-ssa-alias.c (compute_may_aliases): Add call to
        strict_aliasing_warning_backend.

gcc/cp
        * cp/typeck.c (build_indirect_ref): Add call to
        strict_aliasing_warning.
        (build_reinterpret_cast_1): Condition call to
        strict_aliasing_warning.

gcc/testsuite
        * gcc.dg/Wstrict-aliasing-bogus-const-ptr-nonconst-ptr.c: New test.
        * gcc.dg/Wstrict-aliasing-bogus-never-dereferenced.c: New test.
        * gcc.dg/Wstrict-aliasing-bogus-struct-included.c: New test.
        * gcc.dg/Wstrict-aliasing-converted-assigned.c: New test.
        * gcc.dg/Wstrict-aliasing-float-ptr-int-obj.c: New test.
        * gcc.dg/alias-1.c: Update option: -Wstrict-aliasing=2.
        * gcc.dg/alias-9.c: Update option: -Wstrict-aliasing=2.
        * g++.dg/warn/Wstrict-aliasing-7.C: Update option: -Wstrict-aliasing=2.
        * g++.dg/warn/Wstrict-aliasing-bogus-base-derived.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-char-1.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-const.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-nested-arrays.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-signed-unsigned.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-struct-included.C: New test.
        * g++.dg/warn/Wstrict-aliasing-bogus-union.C: New test.
        * g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: New test.

From-SVN: r124622
2007-05-11 16:20:08 +00:00
Benjamin Kosnik 8339896e55 stdexcept: Remove extra spacing.
2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>

       * include/std/stdexcept: Remove extra spacing.

        * testsuite/19_diagnostics/stdexceptions.cc: Break into...
        * testsuite/19_diagnostics/bad_exception: ...this. Populate.
        * testsuite/19_diagnostics/logic_error: ... this.
        * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
        * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
        * testsuite/19_diagnostics/runtime_error: ...this.
        * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
        * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
        * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
        * testsuite/19_diagnostics/23591_thread-1.c: Move...
        * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.

From-SVN: r124621
2007-05-11 16:05:57 +00:00
Silvius Rus 23f24034cb MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r124620
2007-05-11 15:54:44 +00:00
Zdenek Dvorak 9ba025a2c1 tree-loop-linear.c (gather_interchange_stats, [...]): Use loop_depth and loop_outer accessor functions.
* tree-loop-linear.c (gather_interchange_stats, try_interchange_loops):
	Use loop_depth and loop_outer accessor functions.
	* tree-ssa-loop-im.c (outermost_invariant_loop, set_level,
	determine_invariantness_stmt, move_computations_stmt): Ditto.
	* cfgloopmanip.c (fix_bb_placement, fix_loop_placement, remove_path,
	add_loop, loopify, unloop, fix_loop_structure): Ditto.
	* tree-ssa-loop-manip.c (find_uses_to_rename_use): Ditto.
	* tree-scalar-evolution.c (interpret_loop_phi,
	compute_scalar_evolution_in_loop, analyze_scalar_evolution_in_loop,
	instantiate_parameters_1, scev_const_prop): Ditto.
	* cfghooks.c (make_forwarder_block): Ditto.
	* cfgloopanal.c (mark_irreducible_loops, mark_loop_exit_edges): Ditto.
	* modulo-sched.c (loop_canon_p): Ditto.
	* tree-vectorizer.c (slpeel_tree_duplicate_loop_to_edge_cfg,
	slpeel_can_duplicate_loop_p): Ditto.
	* lambda-code.c (invariant_in_loop_and_outer_loops): Ditto.
	* tree-cfg.c (tree_duplicate_sese_region): Ditto.
	* cfgloop.c (flow_loop_dump, flow_loop_nodes_find, rescan_loop_exit,
	cancel_loop, verify_loop_structure): Ditto.
	(flow_loop_nested_p, superloop_at_depth, flow_loop_free,
	add_bb_to_loop, remove_bb_from_loops, find_common_loop): Use the
	superloops vector instead of "pred" array.
	(establish_preds): Take father loop as an argument.  Initialize the
	superloops vector.
	(flow_loop_tree_node_add): Pass father loop to establish_preds.  Do not
	initialize loop->outer.
	(flow_loop_tree_node_remove): Truncate the superloops vector.
	* cfgloop.h (struct loop): Removed field "outer", fields "depth" and
	"pred" merged to "superloops" vector.
	(loop_depth, loop_outer): New.
	(fel_init): Use loop_outer.

From-SVN: r124619
2007-05-11 15:52:01 +00:00
Jan Hubicka 7be8227904 semantics.c (expand_or_defer_fn): Do not call c_record_cdtor_fn.
* semantics.c (expand_or_defer_fn): Do not call c_record_cdtor_fn.
	* decl2.c (start_objects): ctors and dtors are no longer public.
	(cp_write_global_declarations): Do not call c_build_cdtor_fns.

	* cgraphunit.c: Include gt-cgraphunit.h
	(static_ctors, static_dtors): New static vars.
	(record_cdtor_fn, build_cdtor, cgraph_build_cdtor_fns): New functions,
	based on implementation in c-common.c
	(cgraph_finalize_function): Call record_cdtor_fn.
	(cgraph_optimize): Call cgraph_build_cdtor_fns.
	* decl.c (finish_function): Do not call c_record_cdtor_fn.
	(c_write_global_declarations): Do not call c_build_cdtor_fns.
	* c-common.c (static_ctors, static_dtors, c_record_cdtor_fn,
	build_cdtor, c_build_cdtor_fns): Remove.
	* c-common.h (static_ctors, static_dtors, c_record_cdtor_fn,
	c_build_cdtor_fns): Remove prototype.

From-SVN: r124618
2007-05-11 12:18:17 +00:00
Paolo Carlini 2a5fce6d48 re PR other/31852 (Missing __builtin_memchr)
2007-05-11  Paolo Carlini  <pcarlini@suse.de>

	PR other/31852
	* builtin-types.def: Add BT_FN_PTR_CONST_PTR_INT_SIZE.
	* builtins.def: Add BUILT_IN_MEMCHR, use the latter.
	* builtins.c (fold_builtin_memchr): New.
	(expand_builtin_memchr): Call the latter.
	(expand_builtin, fold_builtin_3): Deal with BUILT_IN_MEMCHR.
	* doc/extend.texi ([Other built-in functions provided by GCC]):
	Document memchr.

/testsuite
2007-05-11  Paolo Carlini  <pcarlini@suse.de>

	PR other/31852
	* gcc.c-torture/execute/builtins/memchr.c: New.
	* gcc.c-torture/execute/builtins/memchr-lib.c: New.
	* gcc.c-torture/execute/builtins/lib/memchr.c: New.

From-SVN: r124617
2007-05-11 11:49:29 +00:00
Paul Thomas fc2d8680dd re PR fortran/30876 (Array valued recursive function rejected)
2007-05-11 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/30876
	* trans-expr.c (gfc_conv_function_call): Reduce indirection for
	direct assignments of recursive array valued functions.
	* primary.c (gfc_match_rvalue): Correct error for recursive
	function calls such that directly recursive calls of scalar
	function without an explicit result are disallowed.

2007-05-11 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/30876
	* gfortran.dg/recursive_reference_1.f90: Put error at correct
	line.
	* gfortran.dg/recursive_reference_2.f90: New test.

From-SVN: r124616
2007-05-11 11:46:47 +00:00
Paul Thomas 847b053dd2 re PR fortran/30878 (Rejects function f1; namelist /nml/ f1)
2007-05-11 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/30878
	* resolve.c (resolve_fl_namelist): It is not an error if the
	namelist element is the result variable of the enclosing
	function.  Search for the symbol in current and all parent
	namespaces for a potential conflict.
	* symbol.c (check_conflict): Remove the conflict between
	'in_namelist' and 'FL_PROCEDURE' because the symbol info
	is not available to exclude function result variables.
	* trans-io.c (nml_get_addr_expr): Use the fake result decl
	if the symbol is an implicit result variable.

2007-05-11 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/30878
	* gfortran.dg/namelist_29.f90: New test.

From-SVN: r124615
2007-05-11 11:42:56 +00:00
Andreas Krebbel 35dd9a0e6d s390.md (GPR0_REGNUM, [...]): Constants added.
2007-05-11  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.md (GPR0_REGNUM, FPR0_REGNUM, FPR2_REGNUM,
	PFPO_CONVERT, PFPO_OP_TYPE_SF, PFPO_OP_TYPE_DF, PFPO_OP_TYPE_TF,
	PFPO_OP_TYPE_SD, PFPO_OP_TYPE_DD, PFPO_OP_TYPE_TD, PFPO_OP0_TYPE_SHIFT,
	PFPO_OP1_TYPE_SHIFT): Constants added.
	(DFP_ALL): Mode macro defined.
	("*trunc<BFP:mode><DFP_ALL:mode>2", "*trunc<DFP_ALL:mode><BFP:mode>2",
	"*extend<BFP:mode><DFP_ALL:mode>2", "*extend<DFP_ALL:mode><BFP:mode>2"):
	Insn definitions added.
	("trunc<BFP:mode><DFP_ALL:mode>2", "trunc<DFP_ALL:mode><BFP:mode>2",
	"extend<BFP:mode><DFP_ALL:mode>2", "extend<DFP_ALL:mode><BFP:mode>2"):
	Expanders added.

From-SVN: r124614
2007-05-11 08:40:52 +00:00
Paul Thomas 6c12686bc7 re PR fortran/31474 (ENTRY & procedural pointer: insert_bbt(): Duplicate key found!)
2007-05-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31474
	* decl.c (get_proc_name): If an entry has already been declared
	as a module procedure, pick up the symbol and the symtree and
	use them for the entry.

2007-05-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31474
	* gfortran.dg/entry_10.f90: New test.

From-SVN: r124613
2007-05-11 06:19:57 +00:00
Paolo Carlini 1b716e906b 11.cc: Include <cstring>.
2007-05-10  Paolo Carlini  <pcarlini@suse.de>

	* 27_io/objects/wchar_t/11.cc: Include <cstring>.
	* 27_io/objects/wchar_t/10.cc: Likewise.
	* 27_io/objects/wchar_t/12.cc: Likewise.
	* 27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
	* 27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
	* 27_io/basic_streambuf/overflow/char/1.cc: Likewise.
	* 27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
	* 27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
	* 27_io/basic_streambuf/sputn/char/1.cc: Likewise.
	* 27_io/basic_ios/cons/char/3.cc: Likewise.
	* 27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
	* 27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
	* 27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
	* 27_io/basic_istream/extractors_character/char/4.cc: Likewise.
	* 27_io/fpos/mbstate_t/1.cc: Likewise.
	* 27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
	* 27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
	* 25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
	* 25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
	* 19_diagnostics/stdexceptions.cc: Likewise.
	* 21_strings/char_traits/requirements/short/1.cc: Likewise.
	* 21_strings/basic_string/compare/char/1.cc: Likewise.
	* 21_strings/basic_string/capacity/1.cc: Likewise.
	* ext/codecvt/char-1.cc: Likewise.
	* ext/codecvt/char-2.cc: Likewise.
	* ext/codecvt/1.cc: Likewise.
	* ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
	* ext/stdio_sync_filebuf/char/1.cc: Likewise.
	* ext/stdio_filebuf/char/2.cc: Likewise.
	* ext/stdio_filebuf/char/10063-1.cc: Likewise.
	* 22_locale/ctype/narrow/char/19955.cc: Likewise.
	* 22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
	* 22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
	* 22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
	* 22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
	* 22_locale/codecvt/unshift/char/1.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/1.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/2.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/3.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/4.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/5.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/6.cc: Likewise.
	* 22_locale/codecvt/length/wchar_t/7.cc: Likewise.
	* 22_locale/codecvt/always_noconv/char/1.cc: Likewise.
	* 22_locale/codecvt/encoding/char/1.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/1.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/2.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/3.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/4.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/5.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/6.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/7.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/8.cc: Likewise.
	* 22_locale/codecvt/in/wchar_t/9.cc: Likewise.
	* 22_locale/codecvt/in/char/1.cc: Likewise.
	* 22_locale/codecvt/max_length/char/1.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/1.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/2.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/3.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/4.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/5.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/6.cc: Likewise.
	* 22_locale/codecvt/out/wchar_t/7.cc: Likewise.
	* 22_locale/codecvt/out/char/1.cc: Likewise.
	* 22_locale/locale/cons/5.cc: Likewise.
	* 22_locale/collate_byname/named_equivalence.cc: Likewise.

From-SVN: r124610
2007-05-11 00:55:17 +00:00
GCC Administrator 81cfbea3d1 Daily bump.
From-SVN: r124607
2007-05-11 00:17:46 +00:00
Zdenek Dvorak e71d7f88ba re PR tree-optimization/31885 (Not removing empty loop, scev not finding the correct result)
PR tree-optimization/31885
	* tree-chrec.c (chrec_contains_undetermined): Do not consider NULL_TREE
	to be undetermined.
	(automatically_generated_chrec_p): Return false for NULL.

	* gcc.dg/tree-ssa/loop-29.c: New test.

From-SVN: r124602
2007-05-10 21:33:11 +00:00
Roman Zippel 5635c26e57 ffi.c (ffi_prep_incoming_args_SYSV, [...]): New, add closure support.
* src/m68k/ffi.c (ffi_prep_incoming_args_SYSV,
	ffi_closure_SYSV_inner,ffi_prep_closure): New, add closure support.
	* src/m68k/sysv.S(ffi_closure_SYSV,ffi_closure_struct_SYSV): Likewise.
	* src/m68k/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise.
	(FFI_CLOSURES): Enable closure support.

From-SVN: r124601
2007-05-10 21:29:04 +00:00
Roman Zippel e6fbf387cf configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
* configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* src/m68k/sysv.S (CFI_STARTPROC,CFI_ENDPROC,
	CFI_OFFSET,CFI_DEF_CFA): New macros.
	(ffi_call_SYSV): Add callframe annotation.

From-SVN: r124600
2007-05-10 21:20:02 +00:00
Roman Zippel b5296e520d ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix numerous test suite failures.
* src/m68k/ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix
	numerous test suite failures.
	* src/m68k/sysv.S (ffi_call_SYSV): Likewise.

From-SVN: r124599
2007-05-10 21:06:55 +00:00
Dominique d'Humieres 8b42b2fb96 assumed_dummy_1.f90: Fix dg directive.
2007-05-10 Dominique d'Humieres <dominiq@lps.ens.fr>
* assumed_dummy_1.f90: Fix dg directive.
* char_initialiser_actual.f90: Likewise.
* nested_modules_2.f90: Likewise.
* shift-alloc.f90: Likewise.

From-SVN: r124598
2007-05-10 13:11:45 -07:00
Mike Stump 40790141b7 Improve comment...
From-SVN: r124597
2007-05-10 18:52:03 +00:00
Bernd Schmidt b548a9c2c2 bfin.h (MOVE_RATIO): Define.
* config/bfin/bfin.h (MOVE_RATIO): Define.

From-SVN: r124596
2007-05-10 13:07:24 +00:00
Richard Sandiford 1910440ea6 config.gcc (sparc-wrs-vxworks): New target.
gcc/
	* config.gcc (sparc-wrs-vxworks): New target.
	* config/sparc/vxworks.h, config/sparc/t-vxworks: New files.
	* config/sparc/sparc-protos.h (sparc_emit_call_insn): Declare.
	* config/sparc/sparc.h: Include vxworks-dummy.h.
	(PRINT_OPERAND_ADDRESS): Extend SYMBOL_REF handling to
	include LABEL_REFs too.
	* config/sparc/sparc.c (sparc_expand_move): Don't assume that
	_GLOBAL_OFFSET_TABLE_ - label_ref is a link-time constant on
	VxWorks.
	(legitimize_pic_address): Handle LABEL_REFs like SYMBOL_REFs
	on VxWorks.
	(load_pic_register): Use gen_vxworks_load_got for VxWorks.
	(sparc_emit_call_insn): New function.
	(sparc_function_ok_for_sibcall): Restrict sibcalls to locally-binding
	functions when generating VxWorks PIC.
	* config/sparc/sparc.md (vxworks_load_got): New pattern.
	(call, call_value): Use sparc_emit_call_insn instead of
	emit_call_insn.

libgcc/
	* config.host (sparc-wrs-vxworks): New target.

From-SVN: r124595
2007-05-10 11:15:07 +00:00
Andreas Krebbel 31b40480a4 20070507-1.c: Disable for non-pic targets.
2007-05-10  Andreas Krebbel  <krebbel1@de.ibm.com>

	* gcc.dg/20070507-1.c: Disable for non-pic targets.

From-SVN: r124593
2007-05-10 07:53:37 +00:00
Jerry DeLisle 8e3dfafeb9 re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/31880
	* gfortran.dg/unf_read_corrupted_2.f90: Fix test.

From-SVN: r124591
2007-05-10 03:22:40 +00:00
Jerry DeLisle d9099df883 re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/31880
	* gfortran.dg/unf_read_corrupted_2.f90: New test.

From-SVN: r124590
2007-05-10 01:09:57 +00:00
Mike Stump f1a6afe313 * g++.dg/parse/attr-externally-visible-1.C: Likewise.
From-SVN: r124589
2007-05-10 01:02:55 +00:00
Jerry DeLisle d5f9d0802c re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/31880
	* io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.

From-SVN: r124588
2007-05-10 01:01:27 +00:00
GCC Administrator 4b07779046 Daily bump.
From-SVN: r124586
2007-05-10 00:18:09 +00:00
Mike Stump 6738920f5d Fix whitespacing
From-SVN: r124583
2007-05-09 21:57:09 +00:00
Mike Stump 549c8038c6 * g++.dg/other/first-global.C: Add -fpie for darwin.
From-SVN: r124580
2007-05-09 19:37:38 +00:00
Bob Wilson 4575a800ef * config/xtensa/xtensa.c (xtensa_output_literal): Don't use #if.
From-SVN: r124579
2007-05-09 19:13:59 +00:00
Bob Wilson 74ed13f5c6 xtensa.c (xtensa_output_literal): Mask out high bits for floating-point values if HOST_BITS_PER_LONG > 32.
* config/xtensa/xtensa.c (xtensa_output_literal): Mask out high bits
	for floating-point values if HOST_BITS_PER_LONG > 32.  Use split_double
	instead of operand_subword.

From-SVN: r124578
2007-05-09 17:05:14 +00:00
Bernd Schmidt 520c62adcd bfin.h (LOCAL_ALIGNMENT): Define.
* config/bfin/bfin.h (LOCAL_ALIGNMENT): Define.
	* config/bfin/bfin.c (bfin_local_alignment): New function.
	* config/bfin/bfin-protos.h (bfin_local_alignment): Declare it.

From-SVN: r124570
2007-05-09 11:57:49 +00:00
Andreas Krebbel 0416068158 20070507-1.c: New testcase.
2007-05-09  Andreas Krebbel  <krebbel1@de.ibm.com>

	* gcc.dg/20070507-1.c: New testcase.

From-SVN: r124567
2007-05-09 07:40:52 +00:00
Mark Mitchell 9e081bace4 Remove conflict marker
From-SVN: r124566
2007-05-09 05:31:15 +00:00
Mark Mitchell 357480cec5 cxxabi.h (_GLIBCXX_NOTHROW): New macro.
* libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
	(__cxa_atexit): Use it.

	* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
	installed-tree testing, search more include directories.

From-SVN: r124565
2007-05-09 05:21:36 +00:00
Andrew Pinski ee72fa3884 typeck.c (build_unary_op): Remove code that used to handle non lvalue increments/decrements.
2007-05-07  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * typeck.c (build_unary_op): Remove code that used to
        handle non lvalue increments/decrements.

From-SVN: r124564
2007-05-08 17:46:11 -07:00
GCC Administrator 8e34b5db9e Daily bump.
From-SVN: r124562
2007-05-09 00:17:15 +00:00
Chao-ying Fu 9f8d875582 * gcc.target/mips/msub-1.c, gcc.target/mips/msub-2.c,
* gcc.target/mips/msub-3.c, gcc.target/mips/msub-4.c,
* gcc.target/mips/msubu-1.c, gcc.target/mips/msubu-2.c,
* gcc.target/mips/msubu-3.c, gcc.target/mips/msubu-4.c: New tests.

From-SVN: r124559
2007-05-08 22:53:25 +00:00
Chao-ying Fu 14661f36f8 md.texi (msub@var{m}@var{n}4, [...]): Document.
* doc/md.texi (msub@var{m}@var{n}4, usub@var{m}@var{n}4): Document.
* optabs.h (OTI_smsub_widen, OTI_umsub_widen): New optab_indexes.
(smsub_widen_optab, umsub_widen_optab): Define.
* optabs.c (init_optabs): Initialize smsub_widen_optab and
umsub_widen_optab.
* genopinit.c (optabs): Fill in smsub_widen_optab and
umsub_widen_optab.
* expr.c (expand_expr_real_1): Try to use smsub_widen_optab
and umsub_widen_optab to implement multiply-subtract sequences.
* config/mips/mips.md (*msac<u>_di): Rename to...
(<u>msubsidi4): ...this.  Extend condition to include
GENERATE_MADD_MSUB and TARGET_DSPR2.  Change the constraint
of operand 0 to "ka" and use the three-operand form of msub<u>
for TARGET_DSPR2.
* config/mips/mips-dspr2.md (mips_msub, mips_msubu): Convert
to define_expands.

From-SVN: r124558
2007-05-08 22:51:14 +00:00
Kaz Kojima 10050f74a3 re PR rtl-optimization/28011 ([SH] g++ generates wrong code, if '-fno-exceptions' and '-O' options are specified)
PR rtl-optimization/28011
	* reload.c (push_reload): Set dont_share if IN appears in OUT
	also when IN is a PLUS rtx.
	(reg_overlap_mentioned_for_reload_p): Return true if X and IN
	are same PLUS rtx.

From-SVN: r124557
2007-05-08 22:22:49 +00:00
Kazu Hirata b4aaa77b1f emit-rtl.c (unshare_all_rtl_1): Don't copy DECL_RTL.
* emit-rtl.c (unshare_all_rtl_1): Don't copy DECL_RTL.  Don't
	call unshare_all_decls.
	(unshare_all_rtl): Adjust the call to unshare_all_rtl_1.
	(unshare_all_decls): Remove.

From-SVN: r124556
2007-05-08 21:26:29 +00:00
Simon Martin bfa64d0e60 re PR tree-optimization/31847 (Printing to dump file broken)
2007-05-08  Simon Martin  <simartin@users.sourceforge.net>

	PR 31847
	* tree-dump.c (dump_options): Don't use TDF_DIAGNOSTIC in "*-all" tree
	dumps.

From-SVN: r124551
2007-05-08 15:33:56 +00:00
Paul Thomas a34437a1da re PR fortran/31630 (ICE on nasty derived types code)
2007-05-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31630
	* resolve.c (resolve_symbol): Remove the flagging mechanism from the
	formal namespace resolution and instead check that the formal
	namespace is not the current namespace.

From-SVN: r124550
2007-05-08 14:40:58 +00:00
Paul Thomas b2b247f986 re PR fortran/31692 (Wrong code when passing function name as result to procedures)
2007-05-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31692
	* trans-array.c (gfc_conv_array_parameter): Convert full array
	references to the result of the procedure enclusing the call.

2007-05-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/31692
	* gfortran.dg/actual_array_result_1.f90: New test.

From-SVN: r124546
2007-05-08 12:45:31 +00:00
Sandra Loosemore e8ab09c1bd mips.h (MAX_FPRS_PER_FMT): Renamed from FP_INC.
2007-05-08  Sandra Loosemore  <sandra@codesourcery.com>
            Nigel Stephens  <nigel@mips.com>

	gcc/
	* config/mips/mips.h (MAX_FPRS_PER_FMT): Renamed from FP_INC.
	Update comments and all uses.
	(MIN_FPRS_PER_FMT): Define.
	* config/mips/mips.c (function_arg): Fix to correctly handle
	the -mips32r2 -mfp64 -mabi=32 case.
	(override_options): Enable use of odd-numbered registers for
	SFmode values on MIPS32.
	(mips_save_reg_p): Save whole floating-point register pair if
	either half is used.
	(compute_frame_size): Fix comment.

Co-Authored-By: Nigel Stephens <nigel@mips.com>

From-SVN: r124545
2007-05-08 08:44:21 -04:00
Jie Zhang 28f601ff8a bfin-protos.h (enum bfin_cpu): Add BFIN_CPU_BF534, BFIN_CPU_BF536 and BFIN_CPU_BF561.
* config/bfin/bfin-protos.h (enum bfin_cpu): Add
	BFIN_CPU_BF534, BFIN_CPU_BF536 and BFIN_CPU_BF561.
	* config/bfin/bfin.c (bfin_handle_option): Handle
	-mcpu=bf534, -mcpu=bf536 and -mcpu=bf561.
	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS):
	Support bf534, bf536 and bf561.
	* doc/invoke.texi (Blackfin Options): Document -mcpu and -msim.

From-SVN: r124544
2007-05-08 12:33:23 +00:00
Benjamin Kosnik fb8ffd109a type_traits (make_signed): Remove specializations for floating point types.
2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/type_traits (make_signed): Remove specializations
	for floating point types.
	(make_unsigned): Same.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.

From-SVN: r124543
2007-05-08 12:10:48 +00:00