Commit Graph

95453 Commits

Author SHA1 Message Date
Kai Tietz ce557b7481 re PR c/41184 (wrong optimise code, epilogue code adjust wrong rsp before pop)
2009-08-29  Kai Tietz<kai.tietz@onevision.com>

        PR/41184
        * config/i386.c (ix86_expand_epilogue): Correct stack adjustment for
        padding.

From-SVN: r151204
2009-08-29 19:58:52 +02:00
Douglas B Rupp 6d83cb32b9 crtstuff.c (__do_global_dtors_aux): Use atexit if no fini or fini_array section.
* crtstuff.c (__do_global_dtors_aux): Use atexit if no
	fini or fini_array section.

From-SVN: r151202
2009-08-29 15:37:48 +00:00
GCC Administrator 9087048af9 Daily bump.
From-SVN: r151199
2009-08-29 00:16:53 +00:00
Sebastian Pop 211694b6da graphite-dependences.c (graphite_legal_transform_bb): Call pbb_remove_duplicate_pdrs.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (graphite_legal_transform_bb): Call
	pbb_remove_duplicate_pdrs.
	* graphite-poly.c (can_collapse_pdr): Removed.
	(pdr_find_duplicate): Removed.
	(can_collapse_pdrs): New.
	(pbb_remove_duplicate_pdrs): New.
	(new_poly_dr): Do not look for duplicates.
	* graphite-poly.h (struct poly_bb): New field pdr_duplicates_removed.
	(PBB_PDR_DUPLICATES_REMOVED): New.
	(pbb_remove_duplicate_pdrs): Declared.

From-SVN: r151192
2009-08-28 20:41:53 +00:00
Sebastian Pop 7bd2a8a7ef graphite-interchange.c (pbb_interchange_profitable_p): Adjust the strides by multiplying by PDR_NB_REFS.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-interchange.c (pbb_interchange_profitable_p): Adjust
	the strides by multiplying by PDR_NB_REFS.
	* graphite-poly.c (can_collapse_pdr): New.
	(pdr_find_duplicate): New.
	(new_poly_dr): Call pdr_find_duplicate.  Collapse duplicate PDRs.
	Initialize PDR_NB_REFS.
	* graphite-poly.h (struct poly_dr): Add field nb_refs.
	(PDR_NB_REFS): New.
	(new_poly_dr): Number of subscripts is a graphite_dim_t.

From-SVN: r151191
2009-08-28 20:40:59 +00:00
Sebastian Pop 93b2db87bb re PR middle-end/40965 ([graphite] slow compilation)
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	PR middle-end/40965
	* graphite-poly.c (apply_poly_transforms): Remove legality test before
	any transform.

From-SVN: r151190
2009-08-28 20:39:43 +00:00
Sebastian Pop d8eeb07816 graphite-dependences.c (pddr_original_scattering): Return NULL for read-read dependence relations.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (pddr_original_scattering): Return NULL
	for read-read dependence relations.
	* graphite-poly.h (enum poly_dr_type): Fix comment.
	(pdr_read_p): New.
	(pdr_write_p): New.
	(pdr_may_write_p): New.

From-SVN: r151189
2009-08-28 20:37:56 +00:00
Sebastian Pop e6dec0fbff graphite-poly.h (enum POLY_DR_TYPE): Renamed poly_dr_type.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.h (enum POLY_DR_TYPE): Renamed poly_dr_type.
	(struct poly_dr): Same.
	(new_poly_dr): Same.
	* graphite-poly.c (new_poly_dr): Same.
	* graphite-dependences.c (dot_deps): Disable call to system.

From-SVN: r151188
2009-08-28 20:37:06 +00:00
Cary Coutant 3ff4c25d7f re PR debug/41063 (ICE in output_die)
gcc/ChangeLog:

	PR debug/41063
	* dwarf2out.c (gen_type_die_with_usage): Use proper context for
	struct/union/enum types local to a function.

gcc/testsuite/ChangeLog:

	PR debug/41063
	* g++.dg/debug/dwarf2/pr41063.C: New test.

From-SVN: r151187
2009-08-28 13:35:16 -07:00
Konrad Trifunovic baf4b88182 graphite-blocking.c (pbb_strip_mine_loop_depth): Renamed pbb_strip_mine_time_depth.
2009-08-28  Konrad Trifunovic  <konrad.trifunovic@gmail.com>
	    Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-blocking.c (pbb_strip_mine_loop_depth): Renamed
	pbb_strip_mine_time_depth.  Changed the implementation so that
	transformation is expressed as a transformation on
	time (scatttering) dimensions.  Also, ensures that the 2d+1
	scheduling format is preserved.
	(pbb_strip_mine_profitable_p): Profitability is based on the
	iteration number of a given time (scattering) dimension,
	and not on a original loop depth dimension.
	(pbb_strip_mine): Call pbb_number_of_iterations_at_time.
	(pbb_do_strip_mine): Call psct_dynamic_dim.
	* graphite-poly.c (pbb_number_of_iterations_at_time): New.
	* graphite-poly.h (pbb_number_of_iterations_at_time): Declared.
	(pbb_nb_dynamic_scattering_transform): New.
	(psct_dynamic_dim): New.



Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>

From-SVN: r151186
2009-08-28 20:33:10 +00:00
Cary Coutant e6a83a8e9e re PR debug/41063 (ICE in output_die)
gcc/ChangeLog:

	PR debug/41063
	* dwarf2out.c (gen_type_die_with_usage): Use proper context for
	struct/union/enum types local to a function.

gcc/testsuite/ChangeLog:

	PR debug/41063
	* g++.dg/debug/dwarf2/pr41063.C: New test.

From-SVN: r151185
2009-08-28 13:32:29 -07:00
Konrad Trifunovic 059a5f9f1c graphite-ppl.c (ppl_max_for_le): Renamed ppl_max_for_le_pointset.
2009-08-28  Konrad Trifunovic  <konrad.trifunovic@gmail.com>

	* graphite-ppl.c (ppl_max_for_le): Renamed ppl_max_for_le_pointset.
	* graphite-ppl.h (ppl_max_for_le): Renamed ppl_max_for_le_pointset.
	* graphite-poly.c (pbb_number_of_iterations): Rename ppl_max_for_le.
	* graphite-interchange.c (build_linearized_memory_access): Same.
	(memory_stride_in_loop): Same.

From-SVN: r151184
2009-08-28 20:32:20 +00:00
Sebastian Pop afae02072c graphite-dependences.c (pddr_original_scattering): New.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (pddr_original_scattering): New.
	(graphite_legal_transform_dr): Call pddr_original_scattering.
	(dot_deps_1): New.
	(dot_deps): New.
	* graphite-dependences.h (dot_deps): Declared.
	* graphite-poly.c (new_poly_dr): Initialize PDR_ID.
	(print_pdr): Print PDR_ID.
	* graphite-poly.h (struct poly_dr): Add field id.
	(PDR_ID): New.
	(pbb_index): New.
	* graphite-scop-detection.c (dot_all_scops_1): Cleanup comment.

From-SVN: r151183
2009-08-28 20:31:28 +00:00
Sebastian Pop f8e0bb8b37 graphite-dependences.c (graphite_carried_dependence_level_k): Do not delete the original dependence relation.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (graphite_carried_dependence_level_k): Do
	not delete the original dependence relation.

From-SVN: r151182
2009-08-28 20:30:09 +00:00
Sebastian Pop e37f165fb7 graphite-dependences.c (new_poly_dr_pair): Renamed new_poly_ddr.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (new_poly_dr_pair): Renamed new_poly_ddr.
	(eq_poly_dr_pair_p): Renamed eq_poly_ddr_p.
	(hash_poly_dr_pair_p): Renamed hash_poly_ddr_p.
	(free_poly_ddr): New.
	(pddr_is_empty): New.
	(dependence_polyhedron_1): Now returns a poly_ddr_p.
	(dependence_polyhedron): Same.  Remove useless gcc_assert.
	Remove fprintfs.
	(graphite_legal_transform_dr): Call pddr_is_empty and free_poly_ddr.
	(graphite_carried_dependence_level_k): Call pddr_is_empty.
	* graphite-dependences.h (enum poly_dependence_kind): New.
	(poly_dr_pair): Renamed poly_ddr.  Added a field kind.
	(PDRP_SOURCE): Renamed PDDR_SOURCE.
	(PDRP_SINK): Renamed PDDR_SINK.
	(PDRP_DDP): Renamed PDDR_DDP.
	(PDDR_KIND): New.
	(free_poly_ddr): Declared.
	* graphite-poly.c (new_scop): Use the new hash function names.
	* graphite-poly.h (struct scop): Renamed field original_pdr_pairs
	into original_pddrs.
	(SCOP_ORIGINAL_PDR_PAIRS): Renamed SCOP_ORIGINAL_PDDRS.

From-SVN: r151181
2009-08-28 20:27:56 +00:00
Sebastian Pop 45e76e9f39 cfgloopmanip.c (create_empty_loop_on_edge): Generate upper bounds with LT_EXPR to make niter analysis more precise on code...
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* cfgloopmanip.c (create_empty_loop_on_edge): Generate upper
	bounds with LT_EXPR to make niter analysis more precise on code
	generated by Graphite.

From-SVN: r151180
2009-08-28 20:24:51 +00:00
Sebastian Pop 66b466c309 graphite-dependences.c (graphite_legal_transform_dr): Fix formatting.
2009-08-28  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (graphite_legal_transform_dr): Fix formatting.
	(graphite_legal_transform_bb): Same.
	(poly_drs_may_alias_p): Same.

From-SVN: r151179
2009-08-28 20:23:46 +00:00
Bruce Korb 0b7da9ce03 README (files): Describe files entry.
2009-08-28   Bruce Korb <bkorb@gnu.org>
	     Steve Ellcey  <sje@cup.hp.com>
	    

	* README (files): Describe files entry.
	* inclhack.def (hpux_stdint_least): Remove.
	(hpux_stdint_fast): Remove.
	(hpux_stdint_fast): Remove.
	(hpux_stdint_least_fast): New.
	(hpux_inttype_int_least8_t): Remove.
	(hpux_inttype_int8_t): Modify.
	* fixincl.x: Regenerate.
	* tests/base/stdint.h: Update.
	* tests/base/sys/_inttypes.h: Update.

Co-Authored-By: Steve Ellcey <sje@cup.hp.com>

From-SVN: r151178
2009-08-28 19:42:41 +00:00
Richard Guenther 81fa17dad1 tree.def: Remove note about obsolete TYPE_NONCOPIED_PARTS.
2009-08-28  Richard Guenther  <rguenther@suse.de>

	* tree.def: Remove note about obsolete TYPE_NONCOPIED_PARTS.

From-SVN: r151177
2009-08-28 19:37:37 +00:00
Richard Guenther 0b95297232 re PR lto/41058 (FAIL: ext/pb_ds/regression/hash_data_map_rand.cc)
2009-08-28  Richard Guenther  <rguenther@suse.de>

	PR lto/41058
	* cp-gimplify.c (cp_genericize_r): Do not leak zero-sized stores
	into the generic IL.

From-SVN: r151176
2009-08-28 19:36:05 +00:00
Steve Ellcey 629fff4bf2 inclhack.def (hpux_imaginary_i): Remove spaces.
2009-08-28  Steve Ellcey  <sje@cup.hp.com>

	* inclhack.def (hpux_imaginary_i): Remove spaces.
	* fixincl.x: Regenerate.
	* tests/base/stdint.h: Update AIX fixes. 
	* tests/base/complex.h: Change HPUX_IMAGINARY_I_CHECK fix.

From-SVN: r151171
2009-08-28 17:53:46 +00:00
Jan Beulich a858e91226 netware.c: Include langhooks.h.
2009-08-28  Jan Beulich  <jbeulich@novell.com>

	* config/i386/netware.c: Include langhooks.h.
	(i386_nlm_encode_section_info): Simplify.
	(netware_override_options): Delete.
	* config/i386/netware.h (netware_override_options): Delete
	declaration.
	(OVERRIDE_OPTIONS): Delete definition.
	(SUBTARGET_OVERRIDE_OPTIONS): Define.
	(ASM_COMMENT_START): Define.
	* config/i386/nwld.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Define.

From-SVN: r151164
2009-08-28 15:28:11 +00:00
Jan Beulich 39ba7b7db1 configure.ac: For in-tree ld...
2009-08-28  Jan Beulich  <jbeulich@novell.com>

	* configure.ac: For in-tree ld, do a plain version check to
	determine whether comdat groups are supported.
	* configure: Regenerate.

From-SVN: r151162
2009-08-28 15:22:18 +00:00
Olivier Hainque 7e49a4b396 collect2.c (DO_COLLECT_EXPORT_LIST): New internal macro, always defined.
* collect2.c (DO_COLLECT_EXPORT_LIST): New internal macro,
        always defined.  Reflect definition or absence of such for
        COLLECT_EXPORT_LIST.  Readability helper.
        (scanfilter): New enum, to help control what symbols
        are to be considered or ignored by scan_prog_file.
        (enum pass): Rename as "scanpass", moved together with scanfilter
        prior to scan_prog_file's prototype.
        (scan_prog_file): Accept and honor scanpass and scanfilter arguments.
        Group prototype with the scanpass/scanfilter definitions, factorize
        head comments for the several implementations at the prototype.
        (main): Reorganize the first pass link control to let AIX
        drag only the needed frame tables in executables.  Prevent
        frame tables collection during the scan aimed at static ctors.
        Pre-link and scan for frame tables later to compensate.
        * doc/tm.texi (ASM_OUTPUT_DWARF_TABLE_REF): New macro.
        A C statement to issue assembly directives that create a reference
        to the given DWARF table identifier label from the current function
        section.
        * dwarf2out.c (switch_to_eh_frame_section): Add a BACK argument
        to differentiate first time section entry.  Only emit a .data
        tables start identifier label the first time around.
        (switch_to_frame_table_section): New function.  Helper for
        output_call_frame_info to switch possibly BACK into the eh_frame
        or the debug_frame section depending on FOR_EH.
        (output_call_frame_info): Use helper to first enter the proper
        frame section.
        (output_fde): Use ASM_OUTPUT_DWARF_TABLE_REF when defined to
        emit a link to the frame table start label from each function
        section.
        * config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_table_ref):
        New function.  Implementation of ASM_OUTPUT_DWARF_TABLE_REF.
        * config/rs6000/rs6000-protos.h: Declare it.
        * config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Define.

From-SVN: r151157
2009-08-28 09:04:52 +00:00
GCC Administrator 72129a2509 Daily bump.
From-SVN: r151156
2009-08-28 00:16:48 +00:00
Kaz Kojima a7d6f30643 sh.c (split_branches): Check the result of next_active_insn.
* config/sh/sh.c (split_branches): Check the result of
	next_active_insn.

From-SVN: r151152
2009-08-27 22:56:41 +00:00
Steve Ellcey 715fda9936 hpux.h (LIB_SPEC): Add -lrt for when using -pthread -fopenmp
2009-08-27  Steve Ellcey  <sje@cup.hp.com>

	* config/ia64/hpux.h (LIB_SPEC): Add -lrt for when
	using -pthread -fopenmp

From-SVN: r151151
2009-08-27 22:35:16 +00:00
Gerald Pfeifer 2711df1855 * doc/service.texi (service directory): Update URL.
From-SVN: r151150
2009-08-27 21:21:18 +00:00
Uros Bizjak 2b3b22d35e re PR rtl-optimization/40861 (ICE in simplify_subreg, at simplify-rtx.c:4981)
PR rtl-optimization/40861
	* simplify-rtx.c (simplify_subreg): Do not call simplify_gen_subreg to
	extract word from a multi-word subreg for negative byte positions.

testsuite/ChangeLog:

	PR rtl-optimization/40861
	* gcc.dg/pr40861.c: New test.

From-SVN: r151149
2009-08-27 22:54:28 +02:00
Tristan Gingold 30ed9d3dbe ia64.c (ia64_attribute_table): Add "common_object" entry.
* config/ia64/ia64.c (ia64_attribute_table): Add "common_object"
	entry.
	(SECTION_VMS_OVERLAY): Define.
	(ia64_vms_common_object_attribute): Added.  Handle the "common_object"
	attribute.
	(ia64_vms_elf_asm_named_section): Added.  Generate .section pseudo-op
	for common_object.
	(ia64_vms_output_aligned_decl_common): Added.  Generate pseudo-op for
	common_object declarations.
	(ia64_section_type_flags): Set section flag for common_object.
	* config/ia64/ia64-protos.h
	(ia64_vms_output_aligned_decl_common): Declare.
	(ia64_vms_elf_asm_named_section): Declare.


Co-Authored-By: Douglas B Rupp <rupp@gnat.com>

From-SVN: r151148
2009-08-27 20:08:49 +00:00
Janus Weil 889dc03581 re PR fortran/40869 ([F03] PPC assignment checking)
2009-08-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40869
	* expr.c (gfc_check_pointer_assign): Enable interface check for
	pointer assignments involving procedure pointer components.
	* gfortran.h (gfc_compare_interfaces): Modified prototype.
	* interface.c (gfc_compare_interfaces): Add argument 'name2', to be
	used instead of s2->name. Don't rely on the proc_pointer attribute,
	but instead on the flags handed to this function.
	(check_interface1,compare_parameter): Add argument for
	gfc_compare_interfaces.
	* resolve.c (check_generic_tbp_ambiguity): Ditto.

2009-08-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40869
	* gfortran.dg/proc_ptr_comp_20.f90: New.

From-SVN: r151147
2009-08-27 21:48:46 +02:00
Ralf Wildenhues 0930984ef0 Let test_summary invoke, not parse config.status contents.
contrib/*
	PR testsuite/41166
	* test_summary: Invoke config.status, rather than trying to
	parse it.  Adjust awk script.

From-SVN: r151145
2009-08-27 18:59:32 +00:00
Janne Blomqvist 20d1cba13b PR libfortran/39667 Fix testcases to not need fd_truncate.
From-SVN: r151144
2009-08-27 20:40:55 +03:00
Michael Matz f994f296e1 expr.c (expand_expr_real_2): New function taking exploded unary or binary expression, split out from ...
* expr.c (expand_expr_real_2): New function taking exploded
        unary or binary expression, split out from ...
        (expand_expr_real_1): ... here.  Move over all unary/binary
        switch parts to above function, in particular these codes:
        PAREN_EXPR, NOP_EXPR, CONVERT_EXPR, POINTER_PLUS_EXPR, PLUS_EXPR,
        MINUS_EXPR, MULT_EXPR, TRUNC_DIV_EXPR, FLOOR_DIV_EXPR, CEIL_DIV_EXPR,
        ROUND_DIV_EXPR, EXACT_DIV_EXPR, RDIV_EXPR, TRUNC_MOD_EXPR,
        FLOOR_MOD_EXPR, CEIL_MOD_EXPR, ROUND_MOD_EXPR, FIXED_CONVERT_EXPR,
        FIX_TRUNC_EXPR, FLOAT_EXPR, NEGATE_EXPR, ABS_EXPR, MAX_EXPR, MIN_EXPR,
        BIT_NOT_EXPR, TRUTH_AND_EXPR, BIT_AND_EXPR, TRUTH_OR_EXPR,
        BIT_IOR_EXPR, TRUTH_XOR_EXPR, BIT_XOR_EXPR, LROTATE_EXPR, RROTATE_EXPR,
        LSHIFT_EXPR, RSHIFT_EXPR, LT_EXPR, LE_EXPR, GT_EXPR, GE_EXPR, EQ_EXPR,
        NE_EXPR, UNORDERED_EXPR, ORDERED_EXPR, UNLT_EXPR, UNLE_EXPR, UNGT_EXPR,
        UNGE_EXPR, UNEQ_EXPR, LTGT_EXPR, TRUTH_NOT_EXPR, COMPLEX_EXPR,
        WIDEN_SUM_EXPR, REDUC_MAX_EXPR, REDUC_MIN_EXPR, REDUC_PLUS_EXPR,
        VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR,
        VEC_INTERLEAVE_LOW_EXPR, VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR,
        VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR, VEC_UNPACK_FLOAT_HI_EXPR,
        VEC_UNPACK_FLOAT_LO_EXPR, VEC_WIDEN_MULT_HI_EXPR,
        VEC_WIDEN_MULT_LO_EXPR, VEC_PACK_TRUNC_EXPR, VEC_PACK_SAT_EXPR,
        VEC_PACK_FIX_TRUNC_EXPR.
        (<case PAREN_EXPR>): Call set_mem_attributes() with type, not the
        full expression.

From-SVN: r151142
2009-08-27 12:42:18 +00:00
Tobias Burnus 7765789968 re PR fortran/28039 (Warn when ignoring extra characters in the format specification)
2009-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/28039
        * gfortran.dg/fmt_with_extra.f: xfail testcase as patch was
        * reverted.

From-SVN: r151141
2009-08-27 13:59:51 +02:00
Daniel Kraft 4a44a72d23 re PR fortran/37425 (Fortran 2003: GENERIC bindings as operators)
2009-08-27  Daniel Kraft  <d@domob.eu>

	PR fortran/37425
	* gfortran.h (gfc_expr): Optionally store base-object in compcall value
	and add a new flag to distinguish assign-calls generated.
	(gfc_find_typebound_proc): Add locus argument.
	(gfc_find_typebound_user_op), (gfc_find_typebound_intrinsic_op): Ditto.
	(gfc_extend_expr): Return if failure was by a real error.
	* interface.c (matching_typebound_op): New routine.
	(build_compcall_for_operator): New routine.
	(gfc_extend_expr): Handle type-bound operators, some clean-up and
	return if failure was by a real error or just by not finding an
	appropriate operator definition.
	(gfc_extend_assign): Handle type-bound assignments.
	* module.c (MOD_VERSION): Incremented.
	(mio_intrinsic_op): New routine.
	(mio_full_typebound_tree): New routine to make typebound-procedures IO
	code reusable for type-bound user operators.
	(mio_f2k_derived): IO of type-bound operators.
	* primary.c (gfc_match_varspec): Initialize new fields in gfc_expr and
	pass locus to gfc_find_typebound_proc.
	* resolve.c (resolve_operator): Only output error about no matching
	interface if gfc_extend_expr did not already fail with an error.
	(extract_compcall_passed_object): Use specified base-object if present.
	(update_compcall_arglist): Handle ignore_pass field.
	(resolve_ordinary_assign): Update to handle extended code for
	type-bound assignments, too.
	(resolve_code): Handle EXEC_ASSIGN_CALL statement code.
	(resolve_tb_generic_targets): Pass locus to gfc_find_typebound_proc.
	(resolve_typebound_generic), (resolve_typebound_procedure): Ditto.
	(resolve_typebound_intrinsic_op), (resolve_typebound_user_op): Ditto.
	(ensure_not_abstract_walker), (resolve_fl_derived): Ditto.
	(resolve_typebound_procedures): Remove not-implemented error.
	(resolve_typebound_call): Handle assign-call flag.
	* symbol.c (find_typebound_proc_uop): New argument to pass locus for
	error message about PRIVATE, verify that a found procedure is not marked
	as erraneous.
	(gfc_find_typebound_intrinsic_op): Ditto.
	(gfc_find_typebound_proc), (gfc_find_typebound_user_op): New locus arg.

2009-08-27  Daniel Kraft  <d@domob.eu>

	PR fortran/37425
	* gfortran.dg/impure_assignment_1.f90: Change expected error message.
	* gfortran.dg/typebound_operator_1.f03: Remove check for not-implemented
	error and fix problem with recursive assignment.
	* gfortran.dg/typebound_operator_2.f03: No not-implemented check.
	* gfortran.dg/typebound_operator_3.f03: New test.
	* gfortran.dg/typebound_operator_4.f03: New test.

From-SVN: r151140
2009-08-27 13:42:56 +02:00
Richard Guenther c6a2114273 gengtype.c (main): Handle uint64_t.
2009-08-27  Richard Guenther  <rguenther@suse.de>

	* gengtype.c (main): Handle uint64_t.
	* ipa-utils.c (get_base_var): Indent properly.
	* tree-ssa-live.c (debug_scope_block): New function.
	* tree-flow.h (debug_scope_block): Declare.
	* tree-ssa-copy.c (replace_exp_1): Add vertical space.
	* basic-block.h (enum profile_status): Rename to
	enum profile_status_d.
	(x_profile_status): Adjust type.

	cp/
	* class.c (build_vtbl_ref_1): Remove excess vertical space.
	* Make-lang.in (CXX_TREE_H): Remove c-common.def dependency
	tracked by $(TREE_H).
	* semantics.c (expand_or_defer_fn): Zero DECL_SAVED_TREE.

From-SVN: r151139
2009-08-27 08:56:10 +00:00
Dodji Seketeli 7842a9dbf8 re PR debug/41170 (namespace DIE not generated when it contains only a typedef)
Fix for PR debug/41170

gcc/ChangeLog:
	PR debug/41770
	* dwarf2out.c (get_context_die): Declare this static function.
	(gen_type_die_with_usage): Make sure a DIE is a generated for
	the context of a typedef.

gcc/testsuite/ChangeLog:
	PR debug/41770
	* debug/dwarf2/namespace-1.C: New test.

From-SVN: r151138
2009-08-27 09:05:24 +02:00
Benjamin Kosnik 3d1be5be4c gnu.ver: Fixups for string member functions.
2009-08-26  Benjamin Kosnik  <bkoz@redhat.com>

	* config/abi/pre/gnu.ver: Fixups for string member functions.

From-SVN: r151137
2009-08-27 05:54:56 +00:00
GCC Administrator 774cb5bacc Daily bump.
From-SVN: r151135
2009-08-27 00:16:37 +00:00
Anatoly Sokolov 98f6d48afa invoke.texi (AVR Options): Remove documentation of -minit-stack switch.
* doc/invoke.texi (AVR Options): Remove documentation of -minit-stack
	switch.

From-SVN: r151132
2009-08-27 01:21:34 +04:00
H.J. Lu dbf615292d re PR fortran/41162 (416.gamess in SPEC CPU 2006 failed to build)
2009-08-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/41162
	* gfortran.dg/pr41162.f: New.

From-SVN: r151130
2009-08-26 13:55:42 -07:00
Adam Nemet 631c905ac9 mips.exp: Replace isa(_rev)=...!...
gcc/testsuite/
2009-08-18  Adam Nemet  <anemet@caviumnetworks.com>
	    Richard Sandiford  <rdsandiford@googlemail.com>

	* gcc.target/mips/mips.exp: Replace isa(_rev)=...!... mechanism
	with "forbid_cpu".
	* gcc.target/mips/branch-1.c: Update accordingly.
	* gcc.target/mips/extend-1.c: Likewise.
	* gcc.target/mips/dmult-1.c: Likewise.  Remove redundant isa=64.

Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>

From-SVN: r151129
2009-08-26 20:49:34 +00:00
Richard Sandiford 6f5a62e9fa mips-protos.h (mips_output_sync): Declare.
gcc/
	* config/mips/mips-protos.h (mips_output_sync): Declare.
	(mips_sync_loop_insns): Likewise.
	(mips_output_sync_loop): Replace first two parameters with an rtx.
	* config/mips/mips.c (mips_multi_member): New structure.
	(mips_multi_members): New variable.
	(mips_multi_start): New function.
	(mips_multi_add): Likewise.
	(mips_multi_add_insn): Likewise.
	(mips_multi_add_label): Likewise.
	(mips_multi_last_index): Likewise.
	(mips_multi_copy_insn): Likewise.
	(mips_multi_set_operand): Likewise.
	(mips_multi_write): Likewise.
	(mips_print_operand_punctuation): Remove '%|' and '%-'.
	(mips_init_print_operand_punct): Update accordingly.
	(mips_start_ll_sc_sync_block): New function.
	(mips_end_ll_sc_sync_block): Likewise.
	(mips_output_sync): Likewise.
	(mips_sync_insn1_template): Likewise.
	(mips_sync_insn2_template): Likewise.
	(mips_get_sync_operand): Likewise.
	(mips_process_sync_loop): Likewise.
	(mips_output_sync_loop): Use mips_process_sync_loop.
	(mips_sync_loop_insns): New function.
	* config/mips/mips.h (MIPS_COMPARE_AND_SWAP): Delete.
	(MIPS_COMPARE_AND_SWAP_12): Likewise.
	(MIPS_COMPARE_AND_SWAP_12_ZERO_OP): Likewise.
	(MIPS_COMPARE_AND_SWAP_12_NONZERO_OP): Likewise.
	(MIPS_SYNC_OP, MIPS_SYNC_OP_12): Likewise.
	(MIPS_SYNC_OP_12_AND, MIPS_SYNC_OP_12_XOR): Likewise.
	(MIPS_SYNC_OLD_OP_12): Likewise.
	(MIPS_SYNC_OLD_OP_12_AND, MIPS_SYNC_OLD_OP_12_XOR): Likewise.
	(MIPS_SYNC_NEW_OP_12): Likewise.
	(MIPS_SYNC_NEW_OP_12_AND, MIPS_SYNC_NEW_OP_12_XOR): Likewise.
	(MIPS_SYNC_OLD_OP, MIPS_SYNC_NEW_OP): Likewise.
	(MIPS_SYNC_NAND, MIPS_SYNC_OLD_NAND, MIPS_SYNC_NEW_NAND): Likewise.
	(MIPS_SYNC_EXCHANGE, MIPS_SYNC_EXCHANGE_12): Likewise.
	(MIPS_SYNC_EXCHANGE_12_ZERO_OP): Likewise.
	(MIPS_SYNC_EXCHANGE_12_NONZER_OP): Likewise.
	* config/mips/mips.md (sync_mem): New attribute.
	(sync_oldval, sync_newval, sync_inclusive_mask): Likewise.
	(sync_exclusive_mask, sync_required_oldval): Likewise.
	(sync_insn1_op2, sync_insn1, sync_insn2): Likewise.
	(sync_release_barrier): Likewise.
	(length): Handle sync loops.
	(sync): Use mips_output_sync.
	* config/mips/sync.md (*memory_barrier): Use mips_output_sync.
	(sync_compare_and_swap<mode>): Set the new sync_* attributes
	and use mips_output_sync_loop.
	(compare_and_swap_12, sync_add<mode>, sync_<optab>_12): Likewise.
	(sync_old_<optab>_12, sync_new_<optab>_12, sync_nand_12): Likewise.
	(sync_old_nand_12, sync_new_nand_12, sync_sub<mode>): Likewise.
	(sync_old_add<mode>, sync_old_sub<mode>): Likewise.
	(sync_new_add<mode>, sync_new_sub<mode>): Likewise.
	(sync_<optab><mode>, sync_old_<optab><mode>): Likewise.
	(sync_new_<optab><mode>, sync_nand<mode>): Likewise.
	(sync_old_nand<mode>, sync_new_nand<mode>): Likewise.
	(sync_lock_test_and_set<mode>, test_and_set_12): Likewise.

From-SVN: r151128
2009-08-26 20:39:27 +00:00
Jonathan Wakely 41bc3c4a82 re PR libstdc++/41005 ([C++0x] Unable to link fstream open and ctor with std::string argument.)
2009-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/41005
	* configure.ac: Bump libtool_VERSION to 6:14:0.
	* configure: Regenerate.
	* src/Makefile.am: Compile fstream-inst.cc as C++0x.
	* src/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Add new symbols and disambiguate old ones,
	move <future> symbols to 3.4.14 version.
	* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.14 version.

From-SVN: r151126
2009-08-26 20:03:24 +01:00
Dave Korn 68ccd57c8c ltmain.sh (removedotparts): Don't use comma as 's' separator.
ChangeLog:

	* ltmain.sh (removedotparts): Don't use comma as 's' separator.
	(collapseslashes): Likewise.

libjava/classpath/ChangeLog:

	* ltmain.sh (removedotparts): Don't use comma as 's' separator.
	(collapseslashes): Likewise.

From-SVN: r151124
2009-08-26 14:52:45 +00:00
Richard Guenther 6b8b9e4262 re PR c/41163 (verify_gimple fails)
2009-08-26  Richard Guenther  <rguenther@suse.de>

	PR middle-end/41163
	* gimplify.c (gimplify_addr_expr): Canonicalize ADDR_EXPRs if
	the types to not match.
	* tree-cfg.c (verify_gimple_assign_single): Adjust ADDR_EXPR
	verification.
	* tree-ssa.c (useless_type_conversion_p): Conversions to
	pointers to unprototyped functions are useless.

	* gcc.c-torture/compile/pr41163.c: New testcase.
	* gcc.dg/pr35899.c: Adjust.

From-SVN: r151122
2009-08-26 13:23:04 +00:00
Michael Matz 5c89ef5a3f Revert accidental commit of tree-cfg.c in r151099.
From-SVN: r151119
2009-08-26 10:47:12 +00:00
Richard Guenther bacd3fb68c tree-ssa-structalias.c (create_variable_info_for): Remove strange whole-program condition, prepare to be called for non-globals.
2009-08-26  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (create_variable_info_for): Remove
	strange whole-program condition, prepare to be called for non-globals.
	(intra_create_variable_infos): For restrict qualified DECL_BY_REFERENCE
	params build a representative with known type and track its fields.

	* gcc.dg/tree-ssa/restrict-4.c: New testcase.

From-SVN: r151117
2009-08-26 09:02:01 +00:00
Uros Bizjak 7b3d1847e6 sync.md: Update comment about unpredictable LL/SC lock clearing by a taken branch.
* config/alpha/sync.md: Update comment about unpredictable LL/SC lock
	clearing by a taken branch.
	(sync_<fetchop_name><mode>): Split when epilogue_completed is set,
	effectively after bbro pass.
	(sync_nand<mode>): Ditto.
	(sync_old_<fetchop_name><mode>): Ditto.
	(sync_old_nand<mode>): Ditto.
	(sync_new_<fetchop_name><mode>): Dito.
	(sync_new_nand<mode>): Ditto.
	(sync_compare_and_swap<mode>_1): Ditto.
	(*sync_compare_and_swap<mode>): Ditto.
	(sync_lock_test_and_set<mode>_1): Ditto.
	("sync_lock_test_and_set<mode>): Ditto.

From-SVN: r151115
2009-08-26 08:19:37 +02:00