Commit Graph

74478 Commits

Author SHA1 Message Date
GCC Administrator
affceb3132 Daily bump.
From-SVN: r112370
2006-03-25 00:17:28 +00:00
Jeff Law
3ae194cd59 tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt directly.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt
        directly.  Call mark_new_vars_to_rename slightly earlier.

        * gcc.c-torture/pr26840.c: New test.

From-SVN: r112365
2006-03-24 16:21:27 -07:00
Jim Blandy
58df1c413d pex-common.c (pex_run): Simplify output name handling.
2006-03-24  Jim Blandy  <jimb@codesourcery.com>

	* pex-common.c (pex_run): Simplify output name handling.

From-SVN: r112363
2006-03-24 22:39:45 +00:00
Geoffrey Keating
6426e8aa41 Back out previous accidental change.
From-SVN: r112362
2006-03-24 22:03:19 +00:00
Geoffrey Keating
895de5a8a9 [multiple changes]
2006-03-23  Geoffrey Keating  <geoffk@apple.com>

	PR 26793
	* config/t-darwin (crt3.o): Work around bug 26840.
	* config/darwin-crt3.c: Rewrite.
	* config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o.

Index: gcc/testsuite/ChangeLog
2006-03-24  Geoffrey Keating  <geoffk@apple.com>

	* g++.old-deja/g++.other/init19.C: New.

From-SVN: r112361
2006-03-24 21:59:48 +00:00
Carlos O'Donell
e713adf645 invoke.texi: Document -femit-class-debug-always
gcc/

2006-03-24  Carlos O'Donell  <carlos@codesourcery.com>

	* doc/invoke.texi: Document -femit-class-debug-always
	* common.opt: Add -femit-class-debug-always.

gcc/cp/

2006-03-24  Carlos O'Donell  <carlos@codesourcery.com>

	* search.c (maybe_suppress_debug_info): If
	flag_emit_class_debug_always then don't suppress.

From-SVN: r112360
2006-03-24 21:17:41 +00:00
David Edelsohn
69793f280c spbp.C: Skip on AIX.
* g++.dg/eh/spbp.C: Skip on AIX.

From-SVN: r112359
2006-03-24 15:49:29 -05:00
Andreas Krebbel
93fa842809 s390.c (s390_decompose_address): Allow SImode for index and base register.
2006-03-24  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_decompose_address): Allow SImode for
	index and base register.
	(s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p,
	print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P
	with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with
	REGNO_OK_FOR_INDEX_P.
	* config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with
	ADDR_REGNO_P.
	(REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P,
	REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P,
	REG_OK_FOR_BASE_P): Definitions removed.

From-SVN: r112357
2006-03-24 19:09:11 +00:00
Andreas Tobler
d0c03515ba configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
2006-03-24  Andreas Tobler  <a.tobler@schweiz.ch>
	John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
	Warn about POSIX threads not being supported for *-*-hpux10*.
	* configure: Regenerate.

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>

From-SVN: r112355
2006-03-24 18:59:29 +01:00
Denis Chertykov
2d67effa46 avr-protos.h (extra_constraint): Delete.
* config/avr/avr-protos.h (extra_constraint): Delete.
	(extra_constraint_Q): New declaration.
	* config/avr/constraints.md: New file.
	* config/avr/avr.md: Include it.
	(REG_X, REG_Y, REG_Z, REG_W): New constants.
	(TMP_REGNO, ZERO_REGNO): Likewise.
	(UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise.
	* config/avr/avr.c (avr_reg_class_from_letter): Delete.
	(extra_constraint): Delete.
	(extra_constraint_Q): Test for memory constraint 'Q'.
	* config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete.
	(REG_CLASS_FROM_LETTER): Delete.
	(CONST_OK_FOR_LETTER_P): Delete.
	(CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
	(EXTRA_CONSTRAINT): Delete.
	(TMP_REGNO): Delete.
	(ZERO_REGNO): Delete.

From-SVN: r112352
2006-03-24 19:30:19 +03:00
Jakub Jelinek
8cb86b657c re PR middle-end/26611 (openmp gomp ICE at gimplify.c:4257)
PR middle-end/26611
	* gimplify.c (gimplify_bind_expr): Only call omp_add_variable on
	non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit
	set yet or weren't marked as local yet.

	* g++.dg/gomp/pr26611-1.C: New test.
	* g++.dg/gomp/pr26611-2.C: New test.

From-SVN: r112351
2006-03-24 17:14:40 +01:00
Bernd Schmidt
84c9cb12e6 regrename.c (scan_rtx_address): Initialize a variable to shut up the compiler.
* regrename.c (scan_rtx_address): Initialize a variable to shut up
	the compiler.

From-SVN: r112350
2006-03-24 15:53:23 +00:00
Eric Botcazou
d04b6e6e8a rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
* config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
	(rs6000_legitimate_small_data_p): Delete.
	* config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate.
	(rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p
	and make static.  Add forward declaration.  Update uses.
	(rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead
	of offsettable_memref_p.
	* config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix.
	Use rs6000_offsettable_memref_p instead of a less accurate predicate.

From-SVN: r112349
2006-03-24 10:09:01 +00:00
Jeff Law
243cc8369b tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work around bug in immediate-use iterator.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work
	around bug in immediate-use iterator.

	* gcc.c-torture/compile/pr26833.c: New test.
	* gfortran.fortran-torture/compile/pr26806.f90: New test.

From-SVN: r112348
2006-03-24 00:51:32 -07:00
Mark Mitchell
b5b3739a46 re PR libstdc++/20448 (locale testsuite fails when GCC is configured with --disable-nls)
PR libstdc++/20448
	PR libstdc++/20451
	* scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
	* testsuite/lib/libstdc++.exp (libstdc++_init): Always define
	LOCALEDIR to ".".
	(v3-build_support): Build MO files.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r112346
2006-03-24 01:59:35 +00:00
GCC Administrator
58bcd97431 Daily bump.
From-SVN: r112344
2006-03-24 00:17:25 +00:00
Alan Modra
75b8b1becb ffitarget.h (enum ffi_abi): Add FFI_LINUX.
* src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX.  Default
	for 32-bit using IBM extended double format.  Fix FFI_LAST_ABI.
	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of
	FFI_TYPE_LONGDOUBLE.
	(ffi_prep_args64): Assert using IBM extended double.
	(ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type.
	Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args.
	(ffi_call): Handle FFI_LINUX.
	(ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs
	gpr3 return pointer as for struct return.  Handle FFI_LINUX
	FFI_TYPE_LONGDOUBLE return and args.  Don't increment "nf"
	unnecessarily.
	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2
	for FFI_TYPE_LONGDOUBLE.  Move epilogue insns into case table.
	Don't use r6 as pointer to results, instead use sp offset.  Don't
	make a special call to load lr with case table address, instead
	use offset from previous call.
	* src/powerpc/sysv.S (ffi_call_SYSV): Save long double return.
	* src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double
	return.

From-SVN: r112340
2006-03-24 09:45:46 +10:30
Alan Modra
5b314bb3ef re PR target/26607 (Illegal inlined assembler on config/rs6000/darwin-ldouble.c)
PR target/26607
	* config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__
	or __LITTLE_ENDIAN__.

From-SVN: r112334
2006-03-24 08:53:24 +10:30
Joern Rennecke
9439d626e3 Update FSF address.
From-SVN: r112332
2006-03-23 22:10:41 +00:00
J"orn Rennecke
b368d6b8df divtab-sh4.c, [...]: New files.
2006-03-23  J"orn Rennecke <joern.rennecke@st.com>

	* config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files.
	* config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant.
	* config/sh/t-sh (LIB1ASMFUNCS): Add _div_table.
	* config/sh/sh.opt (mdiv=): Amend description.
	* config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro.
	(TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise.
	(sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1,
	SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC.
	(OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1.
	Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros.
	* config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns.
	(udivsi3, divsi3): Use them.  Check TARGET_DIVIDE_CALL_TABLE /
	TARGET_DIVIDE_CALL_FP.

From-SVN: r112331
2006-03-23 21:39:32 +00:00
Maxim Kuvyrkov
a57aee2ab6 haifa-sched.c (choose_ready): Fix type of the local variable.
2006-03-23  Maxim Kuvyrkov  <mkuvyrkov@ispras.ru>

	* haifa-sched.c (choose_ready): Fix type of the local variable.
	Move local variables.  Add comment.
	(check_reg_live): Change signature.  Make callable from debugger.
	* sched-int.h (check_reg_live): Update signature.
	* sched-ebb.c (check_reg_live): Update parameters.
	* sched-rgn.c (check_reg_live): Ditto.
	(region_head_or_leaf_p): Check pointer before dereferencing.
	* config/ia64/ia64.c (ia64_set_sched_flags): Disable data speculation
	before reload on optimization levels below 1.

From-SVN: r112328
2006-03-23 18:23:53 +00:00
Richard Henderson
e584065d68 alpha.c (alpha_legitimate_constant_p): Reject tls symbols.
* config/alpha/alpha.c (alpha_legitimate_constant_p): Reject
        tls symbols.

From-SVN: r112323
2006-03-23 07:51:10 -08:00
Richard Henderson
dec6909bcb re PR target/26347 (hidden weak extern functions fail regardless of existence on alpha/linux)
PR target/26347
        * config/alpha/predicates.md (local_symbolic_operand): Reject
        weak symbols.

From-SVN: r112322
2006-03-23 07:49:00 -08:00
Andrew Pinski
60fee15737 re PR tree-optimization/26795 (ACATS ICE c37213d on x86 in valid_in_set, at tree-ssa-pre.c:1579)
2006-03-23  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/26795
        * tree-ssa-pre.c (create_value_expr_from): Don't reject
        expressions which have overflowed constants.

From-SVN: r112319
2006-03-23 07:09:51 -08:00
Zdenek Dvorak
79b9dd8ccf cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.
* cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.

From-SVN: r112317
2006-03-23 10:45:09 +00:00
Zdenek Dvorak
054a09fb26 cfgloopmanip.c (create_loop_notes): Removed.
* cfgloopmanip.c (create_loop_notes): Removed.
	* final.c (final_scan_insn): Do not handle loop notes.
	* jump.c (squeeze_notes): Ditto.
	* cfglayout.c (skip_insns_after_block,
	duplicate_insn_chain): Ditto.
	* cfgcleanup.c (rest_of_handle_jump2): Do not call
	create_loop_notes.
	* cfgloop.h (create_loop_notes): Declaration removed.

From-SVN: r112316
2006-03-23 10:33:38 +00:00
Richard Sandiford
c16ba1d5fe varasm.c (output_constant_pool): Restore fnname and fndecl arguments.
* varasm.c (output_constant_pool): Restore fnname and fndecl
	arguments.
	(assemble_start_function): Adjust call accordingly.
	(assemble_end_function): Likewise.

From-SVN: r112315
2006-03-23 09:29:15 +00:00
Jason Merrill
61edcf6592 name-lookup.c (push_namespace_with_attribs): Only apply hidden visibility to anonymous namespaces if HAVE_GAS_HIDDEN.
2006-03-22  Jason Merrill  <jason@redhat.com>

        * name-lookup.c (push_namespace_with_attribs): Only apply hidden
        visibility to anonymous namespaces if HAVE_GAS_HIDDEN.

From-SVN: r112312
2006-03-22 23:20:38 -05:00
GCC Administrator
2e066ed71b Daily bump.
From-SVN: r112310
2006-03-23 00:17:34 +00:00
Kaveh R. Ghazi
ba9ab88dcc endfile_2.f90: Delete temp file.
* gfortran.dg/endfile_2.f90: Delete temp file.

From-SVN: r112302
2006-03-22 23:18:38 +00:00
Volker Reichelt
7a7526409d re PR c++/26790 (ICE with -fmudflap returning an incomplete struct)
PR mudflap/26790
	* tree-mudflap.c (mudflap_finish_file): Skip erroneous objects.

From-SVN: r112298
2006-03-22 21:45:13 +00:00
Volker Reichelt
698cf1c8f8 re PR c++/26789 (ICE on incomplete struct with -fmudflap)
PR mudflap/26789
	* tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node.

From-SVN: r112296
2006-03-22 21:42:34 +00:00
Volker Reichelt
ddaf3b8666 re PR driver/22600 (Exit code should be different from 1 for internal compiler error)
PR driver/22600	
	* system.h (ICE_EXIT_CODE): New macro.
	* diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE.
	(diagnostic_action_after_output): Likewise.
	* gcc.c (fatal_ice): New function.
	(execute): Use it instead of fatal.
	(fancy_abort): Likewise.
	* doc/invoke.texi (-pass-exit-codes): Document return code for ICEs.

	* fortran/error.c (gfc_fatal_error): Return ICE_EXIT_CODE instead of 4.

From-SVN: r112292
2006-03-22 19:36:22 +00:00
Thomas Koenig
d67ab5eef8 [multiple changes]
2006-03-22  Thomas Koenig  <Thomas.Koenig@onlien.de>

	PR fortran/19303
	* gfortran.h (gfc_option_t):  Add record_marker.
	* lang.opt:  Add -frecord-marker=4 and -frecord-marker=8.
	* trans-decl.c:  Add gfor_fndecl_set_record_marker.
	(gfc_build_builtin_function_decls): Set
	gfor_fndecl_set_record_marker.
	(gfc_generate_function_code):  If we are in the main program
	and -frecord-marker was provided, call set_record_marker.
	* options.c (gfc_handle_option):  Add handling for
	-frecord-marker=4 and -frecord-marker=8.
	* invoke.texi:  Document -frecord-marker.

2006-03-22  Thomas Koenig  <Thomas.Koenig@onlien.de>

	PR fortran/19303
	* libgfortran.h (compile_options_t):  Add record_marker.
	* runtime/compile_options.c (set_record_marker):
	New function.
	* io/open.c:  If we have four-byte record markers, use
	GFC_INTEGER_4_HUGE as default record length.
	* io/file_pos.c (unformatted_backspace):  Handle
	different size record markers.
	* io/transfer.c (us_read):  Likewise.
	(us_write):  Likewise.
	(next_record_r):  Likewise.
	(write_us_marker):  Likewise.
	(next_record_w):  Likewise.

2006-03-22  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/19303
	* gfortran.dg/record_marker_1.f90:  New test case.
	* gfortran.dg/record_marker_2.f:  New test case.
	* gfortran.dg/record_marker_3.f90:  New test case.

From-SVN: r112290
2006-03-22 19:09:11 +00:00
Jeff Law
4dc7782d15 loop-unroll.c (analyze_iv_to_split_insn): Handle iv_analyze_result returning false.
* loop-unroll.c (analyze_iv_to_split_insn): Handle 
	iv_analyze_result returning false.

From-SVN: r112289
2006-03-22 11:00:50 -07:00
Janne Blomqvist
906ac235a5 MAINTAINERS (Write After Approval): Remove myself.
2006-03-22  Janne Blomqvist  <jb@gcc.gnu.org>

	* MAINTAINERS (Write After Approval): Remove myself. 
	(Language Front End Maintainers): Add myself as fortran 95 maintainer.

From-SVN: r112287
2006-03-22 18:00:23 +02:00
Paolo Carlini
d4d21a0103 re PR libstdc++/26777 (sync_with_stdio(false) triggers bug with sgetc and pubseekoff)
2006-03-22  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/26777
	* include/bits/fstream.tcc (basic_filebuf<>::_M_seek): Check
	the return value of _M_file.seekoff.
	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: New.

From-SVN: r112286
2006-03-22 15:13:46 +00:00
Jie Zhang
f328a23a46 * config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove.
From-SVN: r112285
2006-03-22 14:53:12 +00:00
Richard Henderson
fad41cd7d4 re PR middle-end/26084 (ICE (segfault) on C++ OpenMP code)
PR middle-end/26084
        * except.c (duplicate_eh_regions_0): New.
        (duplicate_eh_region_1): Duplicate the children of the node as
        well as the node itself.  Link them up properly.
        (duplicate_eh_region_2): Merge into ...
        (duplicate_eh_regions): ... here.  Take copy_region argument, and
        copy only a sub-tree if asked.  Simplify copying and fixup.
        (eh_region_outer_p): New.
        * except.h (duplicate_eh_regions): Update decl.
        (eh_region_outer_p): Declare.
        * omp-low.c (lower_omp_single): Fix eh region placement wrt OMP_RETURN.
        (lower_omp_master): Likewise.
        (lower_omp_ordered): Likewise.
        * tree-cfg.c (struct move_stmt_d): Add new_label_map.
        (move_stmt_r): Use it to remap labels.  Handle recursion vs
        remap_decls_p properly.
        (move_block_to_fn): Pass in new_label_map.  Remap RESX_EXPR.
        (find_outermost_region_in_block): New.
        (new_label_mapper): New.
        (move_sese_region_to_fn): Copy eh information to the new function
        properly.
        * tree-inline.c (copy_cfg_body): Update for new duplicate_eh_regions
        argument.
        * tree-pretty-print.c (dump_generic_node): Dump RESX_EXPR region
        number.

From-SVN: r112283
2006-03-22 04:50:45 -08:00
Richard Biener
ee51e035d9 ChangeLog: Revert bogus part of r112256.
2006-03-22  Richard Guenther  <rguenther@suse.de>

        * ChangeLog: Revert bogus part of r112256.

From-SVN: r112282
2006-03-22 11:01:38 +00:00
Richard Sandiford
bc4a348365 md.texi (-mshared): Mention that -mshared code can be linked into shared libraries.
* doc/md.texi (-mshared): Mention that -mshared code can be linked
	into shared libraries.

From-SVN: r112281
2006-03-22 07:54:45 +00:00
Richard Sandiford
08b1e29a35 md.texi: Refer to i386/constraints.md instead of i386/predicates.md.
* doc/md.texi: Refer to i386/constraints.md instead of
	i386/predicates.md.
	* config/i386/constraints.md: New file, extracted from...
	* config/i386/predicates.md: ...here.
	* config/i386/i386.md: Include constraints.md.

From-SVN: r112280
2006-03-22 07:23:00 +00:00
Richard Sandiford
567b3b8257 predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
	calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
	* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
	Use TARGET_OLDABI instead of !TARGET_NEWABI.
	(loadgp): Use mips_current_loadgp_style.
	(loadgp_noshared): New pattern.
	(sibcall_internal): Use MIPS_CALL.
	(sibcall_value_internal): Likewise.
	(sibcall_value_multiple_internal): Likewise.
	(call_internal): Likewise.
	(call_value_internal): Likewise.
	(call_value_multiple_internal): Likewise.
	(call_split): Use MIPS_CALL and add an 'S' constraint.
	(call_value_split): Likewise.
	(call_value_multiple_split): Likewise.
	* config/mips/mips.opt (-mabicalls): Tweak docstring.
	(-mshared): New option.
	* config/mips/mips-protos.h (mips_loadgp_style): New enum.
	(mips_current_loadgp_style): Declare.
	* config/mips/mips.c (mips_classify_symbol): Avoid using
	SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS.  Use SYMBOL_GENERAL
	rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
	TARGET_ABSOLUTE_ABICALLS.
	(override_options): Adjust comments.  Improve the warning that is
	issued when -mabicalls and -G are used together.
	(mips_file_start): Remove comment.
	(mips_current_loadgp_style): New function.
	(mips_gnu_local_gp): New variable.
	(mips_emit_loadgp): Use mips_current_loadgp_style.  Handle
	LOADGP_ABSOLUTE.
	(mips_output_function_prologue): Use mips_current_laodgp_style.
	(mips_expand_prologue): Call mips_emit_loadgp before emitting
	the cprestore instruction.
	(mips_extra_live_on_entry): Fix reversed test.  Don't make $25
	live for TARGET_ABSOLUTE_ABICALLS.
	* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
	(ASM_SPEC): Pass down -mshared and -mno-shared.
	(MIPS_CALL): New macro.
	* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
	definition.
	* doc/invoke.texi (-mabicalls): Update documentation.
	(-mshared): Document.

From-SVN: r112279
2006-03-22 07:21:00 +00:00
Paul Thomas
0c5a42a660 re PR fortran/17298 (gfortran ICE: Not Implemented: Scalarization of non-elemental intrinsic: __transfer1)
2006-03-22  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/17298
	*trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): New
	function to implement array valued TRANSFER intrinsic.
	(gfc_conv_intrinsic_function): Call the new function if TRANSFER
	and non-null se->ss.
	(gfc_walk_intrinsic_function): Treat TRANSFER as one of the
	special cases by calling gfc_walk_intrinsic_libfunc directly.

2006-03-22  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/17298
	* gfortran.dg/transfer_array_intrinsic_1.f90: New test.
	* gfortran.dg/transfer_array_intrinsic_2.f90: New test.

From-SVN: r112278
2006-03-22 05:13:13 +00:00
Jason Merrill
ac382b62f1 * builtins.c (expand_builtin_fork_or_exec): Fix pasto.
From-SVN: r112275
2006-03-22 00:08:48 -05:00
Jason Merrill
5b5cba1f05 re PR middle-end/20297 (#pragma GCC visibility isn't properly handled for builtin functions)
PR middle-end/20297
        * expr.c (init_block_move_fn): Force default visibility.
        (init_block_clear_fn): Likewise.
        * builtins.c (expand_builtin_fork_or_exec): Likewise.
        * targhooks.c (default_external_stack_protect_fail): Likewise.

From-SVN: r112270
2006-03-21 23:20:52 -05:00
GCC Administrator
1dc11afe86 Daily bump.
From-SVN: r112268
2006-03-22 00:17:30 +00:00
Janis Johnson
b09940e914 gcc-dg.exp (cleanup-modules): New proc.
* lib/gcc-dg.exp (cleanup-modules): New proc.
	* gfortran.dg/allocatable_function_1.f90,
	gfortran.dg/allocate_char_star_scalar_1.f90,
	gfortran.dg/assumed_charlen_function_1.f90,
	gfortran.dg/assumed_dummy_1.f90,
	gfortran.dg/assumed_shape_ranks_1.f90,
	gfortran.dg/assumed_shape_ranks_2.f90,
	gfortran.dg/assumed_size_dt_dummy.f90,
	gfortran.dg/auto_char_dummy_array_1.f90,
	gfortran.dg/auto_char_len_3.f90,
	gfortran.dg/automatic_module_variable.f90,
	gfortran.dg/bad_automatic_objects_1.f90,
	gfortran.dg/char_array_constructor.f90,
	gfortran.dg/char_array_structure_constructor.f90,
	gfortran.dg/char_result_11.f90, gfortran.dg/char_result_9.f90,
	gfortran.dg/contained_1.f90, gfortran.dg/convert_1.f90,
	gfortran.dg/cray_pointers_5.f90, gfortran.dg/data_constraints_1.f90,
	gfortran.dg/default_initialization.f90, gfortran.dg/der_charlen_1.f90,
	gfortran.dg/der_io_2.f90, gfortran.dg/der_io_3.f90,
	gfortran.dg/derived_pointer_recursion.f90,
	gfortran.dg/derived_recursion.f90, gfortran.dg/der_pointer_1.f90,
	gfortran.dg/der_pointer_3.f90, gfortran.dg/der_pointer_4.f90,
	gfortran.dg/dummy_functions_1.f90,
	gfortran.dg/elemental_initializer_1.f90,
	gfortran.dg/elemental_non_intrinsic_dummy_1.f90,
	gfortran.dg/elemental_pointer_1.f90,
	gfortran.dg/elemental_subroutine_1.f90,
	gfortran.dg/elemental_subroutine_2.f90, gfortran.dg/entry_1.f90,
	gfortran.dg/entry_3.f90, gfortran.dg/enum_10.f90,
	gfortran.dg/equiv_constraint_3.f90, gfortran.dg/func_derived_1.f90,
	gfortran.dg/func_derived_2.f90, gfortran.dg/func_derived_3.f90,
	gfortran.dg/generic_1.f90, gfortran.dg/generic_2.f90,
	gfortran.dg/generic_3.f90, gfortran.dg/generic_4.f90,
	gfortran.dg/global_references_1.f90,
	gfortran.dg/host_used_types_1.f90, gfortran.dg/implicit_1.f90,
	gfortran.dg/implicit_2.f90, gfortran.dg/implicit_actual.f90,
	gfortran.dg/initialization_1.f90, gfortran.dg/int_1.f90,
	gfortran.dg/intent_used_1.f90, gfortran.dg/interface_1.f90,
	gfortran.dg/interface_2.f90, gfortran.dg/internal_references_2.f90,
	gfortran.dg/io_constraints_1.f90, gfortran.dg/io_constraints_2.f90,
	gfortran.dg/large_integer_kind_1.f90,
	gfortran.dg/large_real_kind_1.f90,
	gfortran.dg/module_blank_common.f90, gfortran.dg/module_commons_1.f90,
	gfortran.dg/module_double_reuse.f90,
	gfortran.dg/module_equivalence_1.f90,
	gfortran.dg/module_interface_1.f90,
	gfortran.dg/module_parameter_array_refs_1.f90,
	gfortran.dg/named_interface.f90, gfortran.dg/namelist_14.f90,
	gfortran.dg/namelist_15.f90, gfortran.dg/namelist_1.f90,
	gfortran.dg/namelist_4.f90, gfortran.dg/namelist_use.f90,
	gfortran.dg/namelist_use_only.f90, gfortran.dg/nested_modules_1.f90,
	gfortran.dg/nested_modules_2.f90, gfortran.dg/nested_modules_3.f90,
	gfortran.dg/nested_modules_4.f90, gfortran.dg/nested_modules_5.f90,
	gfortran.dg/parens_5.f90, gfortran.dg/parent_result_ref_4.f90,
	gfortran.dg/pr15164.f90, gfortran.dg/pr16861.f90,
	gfortran.dg/pr17615.f90, gfortran.dg/pr19926.f90,
	gfortran.dg/pr21177.f90, gfortran.dg/pr26246_1.f90,
	gfortran.dg/private_type_1.f90, gfortran.dg/private_type_2.f90,
	gfortran.dg/private_type_3.f90, gfortran.dg/private_type_4.f90,
	gfortran.dg/procedure_lvalue.f90, gfortran.dg/pure_byref_3.f90,
	gfortran.dg/same_name_1.f90,
	gfortran.dg/sibling_dummy_procedure_1.f90,
	gfortran.dg/sibling_dummy_procedure_2.f90,
	gfortran.dg/sibling_dummy_procedure_3.f90,
	gfortran.dg/substr_1.f90, gfortran.dg/substring_equivalence.f90,
	gfortran.dg/use_allocated_1.f90, gfortran.dg/used_dummy_types_1.f90,
	gfortran.dg/used_dummy_types_2.f90,
	gfortran.dg/used_dummy_types_3.f90,
	gfortran.dg/used_dummy_types_4.f90,
	gfortran.dg/used_dummy_types_5.f90,
	gfortran.dg/used_interface_ref.f90, gfortran.dg/used_types_1.f90,
	gfortran.dg/userdef_operator_1.f90: Use it.

From-SVN: r112264
2006-03-21 23:50:37 +00:00
Richard Sandiford
d9870b7ef4 predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
	calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
	* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
	Use TARGET_OLDABI instead of !TARGET_NEWABI.
	(loadgp): Use mips_current_loadgp_style.
	(loadgp_noshared): New pattern.
	(sibcall_internal): Use MIPS_CALL.
	(sibcall_value_internal): Likewise.
	(sibcall_value_multiple_internal): Likewise.
	(call_internal): Likewise.
	(call_value_internal): Likewise.
	(call_value_multiple_internal): Likewise.
	(call_split): Use MIPS_CALL and add an 'S' constraint.
	(call_value_split): Likewise.
	(call_value_multiple_split): Likewise.
	* config/mips/mips.opt (-mabicalls): Tweak docstring.
	(-mshared): New option.
	* config/mips/mips-protos.h (mips_loadgp_style): New enum.
	(mips_current_loadgp_style): Declare.
	* config/mips/mips.c (mips_classify_symbol): Avoid using
	SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS.  Use SYMBOL_GENERAL
	rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
	TARGET_ABSOLUTE_ABICALLS.
	(override_options): Adjust comments.  Improve the warning that is
	issued when -mabicalls and -G are used together.
	(mips_file_start): Remove comment.
	(mips_current_loadgp_style): New function.
	(mips_gnu_local_gp): New variable.
	(mips_emit_loadgp): Use mips_current_loadgp_style.  Handle
	LOADGP_ABSOLUTE.
	(mips_output_function_prologue): Use mips_current_laodgp_style.
	(mips_expand_prologue): Call mips_emit_loadgp before emitting
	the cprestore instruction.
	(mips_extra_live_on_entry): Fix reversed test.  Don't make $25
	live for TARGET_ABSOLUTE_ABICALLS.
	* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
	(ASM_SPEC): Pass down -mshared and -mno-shared.
	(MIPS_CALL): New macro.
	* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
	definition.
	* doc/invoke.texi (-mabicalls): Update documentation.
	(-mshared): Document.

From-SVN: r112261
2006-03-21 21:49:13 +00:00
Steve Ellcey
487d9a6153 unwind-hpux.c: New file.
* config/ia64/unwind-hpux.c: New file.
	* config/ia64/t-hpux: Add unwind-hpux.c to libgcc.

From-SVN: r112259
2006-03-21 21:19:10 +00:00