1. 23 Mar, 2006 2 commits
  2. 22 Mar, 2006 18 commits
    • endfile_2.f90: Delete temp file. · ba9ab88d
      	* gfortran.dg/endfile_2.f90: Delete temp file.
      
      From-SVN: r112302
      Kaveh R. Ghazi committed
    • re PR c++/26790 (ICE with -fmudflap returning an incomplete struct) · 7a752640
      	PR mudflap/26790
      	* tree-mudflap.c (mudflap_finish_file): Skip erroneous objects.
      
      From-SVN: r112298
      Volker Reichelt committed
    • re PR c++/26789 (ICE on incomplete struct with -fmudflap) · 698cf1c8
      	PR mudflap/26789
      	* tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node.
      
      From-SVN: r112296
      Volker Reichelt committed
    • re PR driver/22600 (Exit code should be different from 1 for internal compiler error) · ddaf3b86
      	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
      Volker Reichelt committed
    • [multiple changes] · d67ab5ee
      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
      Thomas Koenig committed
    • loop-unroll.c (analyze_iv_to_split_insn): Handle iv_analyze_result returning false. · 4dc7782d
      
      	* loop-unroll.c (analyze_iv_to_split_insn): Handle 
      	iv_analyze_result returning false.
      
      From-SVN: r112289
      Jeff Law committed
    • MAINTAINERS (Write After Approval): Remove myself. · 906ac235
      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
      Janne Blomqvist committed
    • re PR libstdc++/26777 (sync_with_stdio(false) triggers bug with sgetc and pubseekoff) · d4d21a01
      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
      Paolo Carlini committed
    • * config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove. · f328a23a
      From-SVN: r112285
      Jie Zhang committed
    • re PR middle-end/26084 (ICE (segfault) on C++ OpenMP code) · fad41cd7
              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
      Richard Henderson committed
    • ChangeLog: Revert bogus part of r112256. · ee51e035
      2006-03-22  Richard Guenther  <rguenther@suse.de>
      
              * ChangeLog: Revert bogus part of r112256.
      
      From-SVN: r112282
      Richard Biener committed
    • md.texi (-mshared): Mention that -mshared code can be linked into shared libraries. · bc4a3483
      	* doc/md.texi (-mshared): Mention that -mshared code can be linked
      	into shared libraries.
      
      From-SVN: r112281
      Richard Sandiford committed
    • md.texi: Refer to i386/constraints.md instead of i386/predicates.md. · 08b1e29a
      	* 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
      Richard Sandiford committed
    • predicates.md (const_call_insn_operand): Allow direct calls to locally-defined… · 567b3b82
      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
      Richard Sandiford committed
    • re PR fortran/17298 (gfortran ICE: Not Implemented: Scalarization of… · 0c5a42a6
      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
      Paul Thomas committed
    • * builtins.c (expand_builtin_fork_or_exec): Fix pasto. · ac382b62
      From-SVN: r112275
      Jason Merrill committed
    • re PR middle-end/20297 (#pragma GCC visibility isn't properly handled for builtin functions) · 5b5cba1f
              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
      Jason Merrill committed
    • Daily bump. · 1dc11afe
      From-SVN: r112268
      GCC Administrator committed
  3. 21 Mar, 2006 20 commits
    • gcc-dg.exp (cleanup-modules): New proc. · b09940e9
      	* 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
      Janis Johnson committed
    • predicates.md (const_call_insn_operand): Allow direct calls to locally-defined… · d9870b7e
      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
      Richard Sandiford committed
    • unwind-hpux.c: New file. · 487d9a61
      	* config/ia64/unwind-hpux.c: New file.
      	* config/ia64/t-hpux: Add unwind-hpux.c to libgcc.
      
      From-SVN: r112259
      Steve Ellcey committed
    • advance.f90, [...]: Delete temp file. · d9d1a958
      	* gfortran.dg/advance.f90, gfortran.dg/backspace_2.f,
      	gfortran.dg/comma.f, gfortran.dg/direct_io_2.f90,
      	gfortran.dg/tl_editing.f90, gfortran.dg/unf_io_convert_1.f90,
      	gfortran.dg/write_back.f,
      	gfortran.fortran-torture/execute/inquire_1.f90,
      	gfortran.fortran-torture/execute/inquire_3.f90: Delete temp file.
      
      From-SVN: r112258
      Kaveh R. Ghazi committed
    • re PR libgomp/26384 (FAIL: libgomp.c/appendix-a/a.18.1.c execution test) · f7da48ef
      	PR libgomp/26384
      	* config/pa/pa64-hpux.h (LIB_SPEC): Fix for -mt and -pthread options.
      
      From-SVN: r112257
      Steve Ellcey committed
    • tree-vrp.c (extract_range_from_unary_expr): Derive ranges for type conversions… · a3b196e3
      tree-vrp.c (extract_range_from_unary_expr): Derive ranges for type conversions of a VR_VARYING source to a wider type.
      
      
      	* tree-vrp.c (extract_range_from_unary_expr): Derive ranges for
      	type conversions of a VR_VARYING source to a wider type.
      
      	* gcc.dg/tree-ssa/vrp28.c: New test.
      
      From-SVN: r112256
      Jeff Law committed
    • config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to tm_file on Solaris 10 and later. · ec23ed60
      2006-03-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
      
      	* config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to
      	tm_file on Solaris 10 and later.
      	(sparc64-*-solaris2*): Likewise.
      	(sparc-*-solaris2*): Likewise.
      	* config/sol26.h: Rename to config/sol2-6.h.
      	* config/sol2-10.h: New file.
      
      testsuite/
      
      	* gcc.dg/builtins-config.h (Solaris case): Define HAVE_C99_RUNTIME
      	if _STDC_C99 is defined.
      	* gcc.dg/builtins-18.c: Pass -std=c99 on Solaris.
      	* gcc.dg/builtins-20.c: Likewise.
      	* gcc.dg/builtins-53.c: Likewise.
      	* gcc.dg/single-precision-constant.c: Likewise. Also pass
      	-mmacosx-version-min=10.3 on PowerPC/Darwin.
      
      From-SVN: r112255
      Eric Botcazou committed
    • re PR tree-optimization/26781 (ICE in tree-ssa-pre.c at create_component_ref_by_piec) · 5ded46eb
      2006-03-21  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR tree-opt/26781
              * tree-ssa-pre.c (create_component_ref_by_pieces):
              Handle STRING_CST.
      2006-03-21  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR tree-opt/26781
              * gcc.c-torture/compile/pr26781-1.c: New test.
              * gcc.c-torture/compile/pr26781-2.c: New test.
      
      From-SVN: r112254
      Andrew Pinski committed
    • re PR c++/26690 (ICE in get_callee_fndecl, at tree.c:5806 with OpenMP) · 3c9bb46e
      	PR c++/26690
      	* tree.c (get_callee_fndecl): If CALL is error_mark_node,
      	return it immediately.
      
      	* g++.dg/gomp/pr26690-1.C: New test.
      	* g++.dg/gomp/pr26690-2.C: New test.
      
      From-SVN: r112253
      Jakub Jelinek committed
    • genautomata.c (<struct state>, [...]): New members. · b6bbd675
      	* genautomata.c (<struct state>, num_out_arcs, presence_signature):
      	New members.
      	(remove_arc, add_arc): Update num_out_arcs member.
      	(set_out_arc_insns_equiv_num): Returns nothing instead of number
      	of out arcs.
      	(cache_presence): New function.
      	(compare_states_for_equiv): New function.
      	(state_is_differed): Don't take number of outargs, adjust callers.
      	Use new invariant for speeding up.
      	(init_equiv_class): Create initial classes based on sorted
      	input.
      	(partition_equiv_class): Don't track out_arcs_num.
      	(evaluate_equiv_classes): Call cache_presence on all states and
      	sort them.
      
      From-SVN: r112252
      Michael Matz committed
    • re PR c++/26691 (Wrong code for constructor with default value) · fae2b46b
      	PR c++/26691
      	* cp-gimplify.c (cxx_omp_clause_apply_fn): Handle default arguments.
      
      	* testsuite/libgomp.c++/pr26691.C: New test.
      
      From-SVN: r112251
      Jakub Jelinek committed
    • re PR c++/21581 ((optimisation) Functions in anonymous namespaces should default… · aa09f986
      re PR c++/21581 ((optimisation) Functions in anonymous namespaces should default to "hidden" visibility)
      
              PR c++/21581
              * parser.c (cp_parser_declaration): Support attributes on
              anonymous namespaces.
              * name-lookup.c (push_namespace_with_attribs): Anonymous
              namespaces default to hidden visibility.
      
      From-SVN: r112250
      Jason Merrill committed
    • bfin-protos.h (bfin_dsp_memref_p): Declare. · c4963a0a
      	* config/bfin/bfin-protos.h (bfin_dsp_memref_p): Declare.
      	* config/bfin/bfin.c (bfin_dsp_memref_p): New function.
      	(bfin_valid_reg_p): Test for pseudos explicitly and use only
      	REGNO_MODE_CODE_OK_FOR_BASE_P.  New args MODE and OUTER_CODE; all
      	callers changed.
      	* config/bfin/bfin.h (PREG_P): Use P_REGNO_P.
      	(IREG_P, P_REGNO_P, I_REGNO_P): New macros.
      	(enum reg_class, REG_CLASS_CONTENTS): Add IPREGS.
      	(BASE_REG_CLASS, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
      	REGNO_OK_FOR_BASE_STRICT_P, REGNO_OK_FOR_BASE_NONSTRICT_P): Delete
      	macros.
      	(IREG_POSSIBLE_P, MODE_CODE_BASE_REG_CLASS,
      	REGNO_MODE_CODE_OK_FOR_BASE_P): New macros.
      	(REGNO_REG_CLASS): ARGP is in PREGS.
      	* config/bfin/bfin.md (movhi_insn): Allow for addresses containing
      	IREGS.
      	(zero_extendhisi2, extendhisi2): Likewise; changed to define_and_split
      	to deal with those addresses.
      	* addresses.h: New file.
      	* caller-save.c: Include "addresses.h".
      	(init_caller_save): Use new base_reg_class function.
      	* rtl-factoring.c: Include "addresses.h".
      	(recompute_gain_for_pattern_seq): Use new function ok_for_base_p_1.
      	* recog.c: Include "addresses.h".
      	(preprocess_constraints): Use new base_reg_class function.
      	* regrename.c: Include "addresses.h".
      	(scan_rtx_address): Use new regno_ok_for_base_p and base_reg_class
      	functions.  Keep track of a new var INDEX_CODE to compute valid
      	classes.
      	(replace_oldest_value_addr): Likewise.
      	(replace_oldest_value_mem): Use base_reg_class.
      	* reload.c: Include "addresses.h".
      	(REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Delete macros.
      	(find_reloads): Use new base_reg_class function.
      	(find_reloads_address): Likewise; also use regno_ok_for_base_p.
      	(find_reloads_address_1): Likewise. New args OUTER_CODE and INDEX_CODE;
      	all callers and prototype changed.
      	* reload1.c: Include "addresses.h".
      	(maybe_fix_stack_asms): Use base_reg_class.
      	* regclass.c: Include "addresses.h".
      	(ok_for_index_p_nonstrict, ok_for_base_p_nonstrict): New functions.
      	(init_reg_autoinc): Use new base_reg_class function.
      	(record_reg_classes): Likewise.
      	(record_address_regs): Delete arg CLASS; add args CONTEXT, MODE,
      	OUTER_CODE and INDEX_CODE.  All callers and prototype changed.
      	Use new args to compute necessary class.
      
      	* Makefile.in (regclass.o, reload.o, reload1.o, caller-save.o, recog.o,
      	regrename.o, rtl-factoring.o): Update dependencies.
      	* doc/tm.texi (MODE_CODE_BASE_REG_CLASS): Document.
      	(REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
      	(REG_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_REG_BASE_P,
      	REG_OK_FOR_INDEX_P): Delete documentation.
      
      From-SVN: r112248
      Bernd Schmidt committed
    • re PR libstdc++/25482 (Specialize (overload) std::copy/find for streambuf iterators) · 0002d5d2
      2006-03-21  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/25482
      	* include/bits/stl_algobase.h (__copy_aux(_CharT*, _CharT*,
      	ostreambuf_iterator<_CharT>), __copy_aux(const _CharT*, const _CharT*,
      	ostreambuf_iterator<_CharT>), __copy_aux(istreambuf_iterator<_CharT>,
      	istreambuf_iterator<_CharT>, _CharT*), copy(istreambuf_iterator<_CharT>,
      	istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>)): Declare.
      	* include/bits/stl_algo.h (find(istreambuf_iterator<_CharT>,
      	istreambuf_iterator<_CharT>, _CharT)): Likewise.
      	* include/bits/streambuf_iterator.h (copy(istreambuf_iterator<_CharT>,
      	istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>),
      	__copy_aux(_CharT*, _CharT*, ostreambuf_iterator<_CharT>),
      	__copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>),
      	__copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
      	_CharT*), find(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
      	_CharT)): Define.
      	(class istreambuf_iterator<>, class ostreambuf_iterator<>): Declare
      	friends.
      	* include/std/std_streambuf.h (class basic_streambuf<>): Likewise.
      	* include/bits/cpp_type_traits.h (struct __is_char<>): Add.
      	* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc: New.
      	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: New.
      	* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: New.
      	* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: New.
      	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc: New.
      	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: New.
      	* testsuite/performance/25_algorithms/copy_streambuf_iterators.cc: New.
      	* testsuite/performance/25_algorithms/find_istreambuf_iterators.cc: New.
      
      From-SVN: r112247
      Paolo Carlini committed
    • config.gcc (sparc-*-solaris2*): Change the default CPU setting from V7 to V9 for… · 69bdb292
      config.gcc (sparc-*-solaris2*): Change the default CPU setting from V7 to V9 for Solaris 7 and above.
      
      	* config.gcc (sparc-*-solaris2*): Change the default CPU setting
      	from V7 to V9 for Solaris 7 and above.
      
      From-SVN: r112246
      Alexey Starovoytov committed
    • options.c (gfc_init_options): Initialize flag_argument_noalias to 3. · 0698a1d2
      2006-03-21  Toon Moene  <toon@moene.indiv.nluug.nl>
      
      	* fortran/options.c (gfc_init_options): Initialize
      	flag_argument_noalias to 3.
      	* doc/invoke.texi: Document new flag -fargument-noalias-anything.
      	* tree-ssa-alias.c (may_alias_p): If flag_argument_noalias > 2,
      	argument pointers may not alias any other storage.
      	* common.opt: Define option -fargument-noalias-anything.
      	* tree-ssa-structalias.c (intra_create_variable_infos): Fortran
      	alias semantics is specified by flag_argument_noalias > 2.
      
      From-SVN: r112243
      Toon Moene committed
    • tree-pass.h (pass_phi_only_copy_prop): Delete. · e67c25c7
      
      	* tree-pass.h (pass_phi_only_copy_prop): Delete.
      	(pass_phi_only_cprop): Declare.
      	* passes.c (init_optimization_passes): Replace pass_phi_only_copy_prop
      	with phi_only_cprop
      	* tree-ssa-dom.c (degenerate_phi_result): New function.
      	(remove_stmt_or_phi, get_lhs_or_phi_result): Likewise.
      	(get_rhs_or_phi_arg, propagate_rhs_into_lhs): Likewise.
      	(eliminate_const_or_copy, eliminate_degenerate_phis_1): Likewise.
      	(eliminate_degenerate_phis): Likewise.
      	(pass_phi_only_cprop): New pass descriptor.
      	* tree-ssa-copy.c (init_copy_prop): Lose PHIS_ONLY argument and
      	support code.  Callers updated.
      	(execute_copy_prop, do_copy_prop): Likewise and corresponding changes.
      	(store_copy_prop): Likewise.
      	(do_phi_only_copy_prop, pass_phi_only_copy_prop): Remove.
      
      	* gcc.dg/tree-ssa/pr21829.c: New test.
      
      From-SVN: r112242
      Jeff Law committed
    • use scan-hidden · 4a282de4
      From-SVN: r112241
      Jason Merrill committed
    • 20030807-2.c: Make sure to run VRP. · 39a404c5
              * gcc.dg/tree-ssa/20030807-2.c: Make sure to run VRP.
      
      From-SVN: r112240
      Jeff Law committed
    • re PR c++/21764 (visibility attributes on namespace scope) · 0ed5edac
              PR c++/21764
              * c-pragma.c (visstack): Move out of handle_pragma_visibility.
              (push_visibility, pop_visibility): Likewise.
              * c-pragma.h: Declare them.
              * cp/name-lookup.h (struct cp_binding_level): Add has_visibility
              bitfield.
              * cp/name-lookup.c: Include c-pragma.h.
              (push_namespace_with_attribs): Split out from push_namespace.
              Push visibility if appropriate.  Set TREE_PUBLIC on namespaces.
              (leave_scope): Pop visibility if appropriate.
              * cp/parser.c (cp_parser_declaration, cp_parser_namespace_name): Allow
              attributes on namespace declarations.
      
              PR c++/19238
              * cp/decl.c (cp_finish_decl): Call determine_visibility later.
              (start_preparsed_function): Likewise.
              * cp/cp-tree.h (CP_TYPE_CONTEXT, TYPE_NAMESPACE_SCOPE_P): New macros.
              (TYPE_CLASS_SCOPE_P, TYPE_FUNCTION_SCOPE_P): New macros.
              * cp/decl2.c (determine_visibility_from_class): Split out from...
              (determine_visibility): ...here.  Handle function scope and
              nested classes.
              (import_export_decl): Move visibility handling to
              determine_visibility_from_class.
      
      From-SVN: r112239
      Jason Merrill committed