Commit Graph

100174 Commits

Author SHA1 Message Date
Daniel Jacobowitz 0c422e7433 neon-testgen.ml: Use dg-add-options arm_neon.
2010-05-24  Daniel Jacobowitz  <dan@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/arm/neon-testgen.ml: Use dg-add-options arm_neon.
	* doc/sourcebuild.texi (Effective-Target Keywords): Update arm_neon_ok
	description.  Add arm_neon_fp16_ok.
	(Add Options): Add arm_neon and arm_neon_fp16.

	gcc/testsuite/
	* gcc.target/arm/neon/: Regenerated test cases.

	* gcc.target/arm/neon/polytypes.c,
	gcc.target/arm/neon-vmla-1.c, gcc.target/arm/neon-vmls-1.c,
	gcc.target/arm/neon-cond-1.c, gcc.target/arm/neon/vfp-shift-a2t2.c,
	gcc.target/arm/neon-thumb2-move.c, gcc.dg/torture/arm-fp16-ops-8.c, 
	gcc.dg/torture/arm-fp16-ops-7.c, g++.dg/ext/arm-fp16/arm-fp16-ops-7.C,
	g++.dg/ext/arm-fp16/arm-fp16-ops-8.C, g++.dg/abi/mangle-neon.C: Use
	dg-add-options arm_neon.

	* gcc.target/arm/fp16-compile-vcvt.c, gcc.dg/torture/arm-fp16-ops-5.c,
	gcc.dg/torture/arm-fp16-ops-6.c, g++.dg/ext/arm-fp16/arm-fp16-ops-5.C,
	g++.dg/ext/arm-fp16/arm-fp16-ops-6.C: Use dg-add-options arm_neon_fp16
	and arm_neon_fp16_ok.

	* gcc.dg/vect/vect.exp, g++.dg/vect/vect.exp,
	gfortran.dg/vect/vect.exp: Use add_options_for_arm_neon.

	* lib/target-supports.exp (add_options_for_arm_neon): New.
	(check_effective_target_arm_neon_ok_nocache): New, from
	check_effective_target_arm_neon_ok.  Check multiple possibilities.
	(check_effective_target_arm_neon_ok): Use
	check_effective_target_arm_neon_ok_nocache.
	(add_options_for_arm_neon_fp16)
	(check_effective_target_arm_neon_fp16_ok)
	check_effective_target_arm_neon_fp16_ok_nocache): New.
	(check_effective_target_arm_neon_hw): Use add_options_for_arm_neon.


Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r159794
2010-05-24 15:36:31 -04:00
Joseph Myers 243fbddd9c diagnostic.c: Don't include flags.h.
* diagnostic.c: Don't include flags.h.
	(pedantic_warning_kind, permissive_error_kind): Take diagnostic
	context parameters.  Check flags in the context passed as a
	parameter.
	(diagnostic_build_prefix): Add context parameter.  Check
	show_column flag in context.
	(diagnostic_action_after_output): Check fatal_errors flag in
	context.
	(diagnostic_report_current_module): Check show_column flag in
	context.
	(default_diagnostic_starter): Update call to
	diagnostic_build_prefix.
	(diagnostic_report_diagnostic): Pass context to
	pedantic_warning_kind.
	(emit_diagnostic): Pass context to permissive_error_kind.
	(permerror): Pass context to permissive_error_kind.
	* diagnostic.h (struct diagnostic_context): Add show_column,
	pedantic_errors, permissive and fatal_errors fields.
	(diagnostic_build_prefix): Update prototype.
	* langhooks.c
	* toplev.c (process_options): Set flags in global_dc from
	flag_show_column, flag_pedantic_errors, flag_permissive,
	flag_fatal_errors.
	* tree-diagnostic.c (default_tree_diagnostic_starter): Update call
	to diagnostic_build_prefix.
	* Makefile.in (diagnostic.o): Update dependencies.

cp:
	* error.c (cp_diagnostic_starter): Update call to
	diagnostic_build_prefix.
	(cp_print_error_function,
	print_instantiation_partial_context_line): Check show_column flag
	in context.

From-SVN: r159793
2010-05-24 19:55:44 +01:00
Jason Merrill 611d6f76fe re PR c++/41510 ([C++0x] std::complex vs. initialization lists)
PR c++/41510
	* decl.c (check_initializer): Don't wrap an init-list in a
	TREE_LIST.
	* init.c (build_aggr_init): Don't assume copy-initialization if
	init has CONSTRUCTOR_IS_DIRECT_INIT.
	* call.c (build_new_method_call): Sanity check.

From-SVN: r159792
2010-05-24 14:38:16 -04:00
Nathan Froyd e20463aaf0 rtti.c (tinfo_base_init): Use build_constructor instead of build_constructor_from_list.
* rtti.c (tinfo_base_init): Use build_constructor instead of
	build_constructor_from_list.  Don't cons a tree node for
	returning.
	(generic_initializer): Use build_constructor_single instead of
	build_constructor_from_list.
	(ptr_initializer): Use build_constructor instead of
	build_constructor_from_list
	(ptm_initializer): Likewise.
	(class_initializer): Likewise.  Take varargs instead of TRAIL.
	(get_pseudo_ti_init): Adjust calls to class_initializer.  Use
	build_constructor instead of build_constructor_from_list.

From-SVN: r159788
2010-05-24 17:17:57 +00:00
H.J. Lu 42f40af469 Define __crc32q only if __SSE4_2__ is defined.
2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/ia32intrin.h (__crc32q): Define only if
	__SSE4_2__ is defined.

From-SVN: r159783
2010-05-24 08:38:31 -07:00
Nathan Froyd 00f93defed expr.c (quick_stack): Change type to a VEC.
* expr.c (quick_stack): Change type to a VEC.  Update comment.
	(tree_list_free_list): Delete.
	(flush_quick_stack): Update for quick_stack type change.
	(push_value): Likewise.
	(pop_value): Likewise.

From-SVN: r159782
2010-05-24 14:46:54 +00:00
Iain Sandoe 1db0429a13 re PR target/44132 (emutls is broken under a range of circumstances.)
2010-05-24  Iain Sandoe  <iains@gcc.gnu.org>

	PR target/44132
	PR middle-end/43602
	* varasm.c (get_emutls_init_templ_addr): Copy DECL_PRESERVE_P,
	DECL_VISIBILITY_SPECIFIED.
	(emutls_decl): Set DECL_PRESERVE_P and copy
	DECL_VISIBILITY_SPECIFIED, DECL_RESTRICTED_P.
	(emutls_finalize_control_var): New callback.
	(emutls_finish): Finalize emutls control variables.
	* toplev.c (compile_file): Move the call to emutls_finish () 
	before varpool_assemble_pending_decls ().

From-SVN: r159781
2010-05-24 14:36:32 +00:00
Daniel Gutson e72e2da4db lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__ added to the preprocessor condition.
* config/arm/lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__
	added to the preprocessor condition.

From-SVN: r159780
2010-05-24 13:19:51 +00:00
Richard Guenther 468194f443 lto-elf.c (lto_obj_build_section_table): Work around FreeBSD libelf issue.
2010-05-24  Richard Guenther  <rguenther@suse.de>

	* lto-elf.c (lto_obj_build_section_table): Work around
	FreeBSD libelf issue.

From-SVN: r159777
2010-05-24 12:27:30 +00:00
Paul Brook b748fbd6b9 gengtype-lex.l: Add HARD_REG_SET.
2010-05-25  Paul Brook  <paul@codesourcery.com>

	gcc/
	* gengtype-lex.l: Add HARD_REG_SET.
	* expr.c (expand_expr_real_1): Record writes to hard registers.
	* function.c (rtl_data): Add asm_clobbers.
	* ira.c (compute_regs_asm_clobbered): Use crtl->asm_clobbers.
	(ira_setup_eliminable_regset): Remove regs_asm_clobbered.
	Use crtl->asm_clobbers.

	gcc/testsuite/
	* gcc.target/arm/frame-pointer-1.c: New test.
	* gcc.target/i386/pr9771-1.c: Move code out of main to allow frame
	pointer elimination.

From-SVN: r159776
2010-05-24 12:24:00 +00:00
Ralf Wildenhues 9888e9cf85 Mention renamed stages for profiledbootstrap.
gcc/:
	* doc/makefile.texi (Makefile): Mention stages 'profile'
	and 'feedback' for profiledbootstrap.

From-SVN: r159775
2010-05-24 07:25:40 +00:00
GCC Administrator 56e0571cfc Daily bump.
From-SVN: r159774
2010-05-24 00:17:22 +00:00
H.J. Lu cf5b989e82 Properly check OPTION_MASK_ISA_64BIT.
gcc/

2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44245
	* config/i386/i386.c (def_builtin): Properly check
	OPTION_MASK_ISA_64BIT.

gcc/testsuite/

2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44245
	* gcc.target/i386/crc32-3.c: New.
	* gcc.target/i386/crc32-4.c: Likewise.

From-SVN: r159768
2010-05-23 14:57:13 -07:00
Joseph Myers dc5027f474 c-decl.c (diagnose_mismatched_decls): Give error for duplicate typedefs with different but compatible types.
* c-decl.c (diagnose_mismatched_decls): Give error for duplicate
	typedefs with different but compatible types.  Allow duplicate
	typedefs with the same type except for pedantic non-C1X, but give
	warning for variably modified types.
	* c-typeck.c (tagged_types_tu_compatible_p,
	function_types_compatible_p, type_lists_compatible_p,
	comptypes_internal): Add parameter different_types_p; set
	*different_types_p for different but compatible types.  All
	callers changed.
	(comptypes_check_different_types): New.
	* c-tree.h (comptypes_check_different_types): Declare.

testsuite:
	* gcc.dg/c1x-typedef-1.c, gcc.dg/c1x-typedef-2.c,
	gcc.dg/c90-typedef-1.c, gcc.dg/c99-typedef-1.c: New tests.
	* gcc.dg/decl-8.c: Use -std=gnu89 -pedantic-errors.

From-SVN: r159767
2010-05-23 21:47:16 +01:00
H.J. Lu 8f9e812dac Move "dg-do run" before lp64.
2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.c-target/pr43869.c: Move "dg-do run" before lp64.

From-SVN: r159765
2010-05-23 12:37:23 -07:00
Steven Bosscher f67cc87d4f java-gimplify.c: Do not include tm.h, toplev.h.
* java-gimplify.c: Do not include tm.h, toplev.h.
	* typeck.c: Do not include tm.h.
	* mangle_name.c: Do not include tm.h.
	* jcf-dump.c: Do not include tm.h, ggc.h.
	* class.c: Do not include rtl.h, tm_p.h, target.h, except.h, cgraph.h.
	* decl.c: Do not include tm.h, rtl.h, function.h, expr.h, except.h,
	and timevar.h.
	* jcf-parse.c: Do not include tm.h and tm_p.h.
	* resource.c: Do not include tm.h, rtl.h, flags.h, obstack.h,
	target.h, and expr.h.
	* except.c: Do not include tm.h, rtl.h, function.h.
	* builtins.c: Do not include convert.h.  Explain why RTL headers
	have to be included here.
	* verify-glue.c: Do not include tm.h.
	* jcf-depend.c: Do not include tm.h.
	* jcf-reader.c: Include ggc.h.
	* jcf-io.c: Do not include tm.h, toplev.h.
	* expr.c: Do not include tm.h, rtl.h, expr.h, except.h, tm_p.h,
	gimple.h.
	* lang.c: Do not include rtl.h, expr.h.
	* Make-lang.in: Update dependencies.

From-SVN: r159764
2010-05-23 17:48:41 +00:00
Tobias Burnus 7274feea19 gfortran.h: Do not include system.h.
2010-05-21  Tobias Burnus  <burnus@net-b.de>

        * gfortran.h: Do not include system.h.
        * bbt.c: Include system.h.
        * data.c: Ditto.
        * dependency.c: Ditto.
        * dump-parse-tree.c: Ditto.
        * arith.h: Do not include gfortran.h.
        * constructor.h: Do not include gfortran.h and splay-tree.h.
        * match.h: Do not include gfortran.h.
        * parse.h: Ditto.
        * target-memory.h: Ditto.
        * openmp.c: Do not include toplev.h and target.h.
        * trans-stmt.c: Ditto not include toplev.h.
        * primary.c: Ditto.
        * trans-common.c: Tell why toplev.h is needed. And
        do not include target.h.
        * trans-expr.c: Tell why toplev.h is needed.
        * trans-array.c: Ditto.
        * trans-openmp.c: Ditto.
        * trans-const.c: Ditto.
        * trans.c: Ditto.
        * trans-types.c: Ditto.
        * trans-io.c: Ditto.
        * trans-decl.c: Ditto.
        * scanner.c: Ditto.
        * convert.c: Ditto.
        * trans-intrinsic.c: Ditto.
        * options.c: Ditto.

From-SVN: r159763
2010-05-23 19:18:24 +02:00
Steven Bosscher 539bac3774 Fix another botched commit.
From-SVN: r159762
2010-05-23 15:46:54 +00:00
Steven Bosscher 2d1a4cc1dc regs.h: Do not include obstack.h, basic-block.h.
* regs.h: Do not include obstack.h, basic-block.h.
	Include machmode.h.
	* jump.c: Include basic-block.h.
	* profile.c: Likewise.
	* tree-profile.c: Likewise.
	* coverage.c: Likewise.
	* basic-block.h (optimize_function_for_size_p): Move to function.h.
	(optimize_function_for_speed_p): Likewise.
	* function.h (optimize_function_for_size_p,
	optimize_function_for_speed_p): Moved here from basic-block.h.

From-SVN: r159761
2010-05-23 15:40:15 +00:00
Ralf Wildenhues 5767217f7a Honor $MAKE for -fwhopr=; do not honor $MAKEFLAGS, $MFLAGS.
gcc/:
	* lto-wrapper.c (run_gcc): Unset MAKEFLAGS and MFLAGS
	before calling make; allow override through $MAKE.
	* doc/invoke.texi (Optimize Options): Document override.

From-SVN: r159760
2010-05-23 14:36:07 +00:00
Anatoly Sokolov 7a955d6248 rs6000.c (rs6000_mode_dependent_address_p): New.
* config/rs6000/rs6000.c (rs6000_mode_dependent_address_p): New.
	(TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
	(rs6000_mode_dependent_address_ptr): Make static.
	* config/rs6000/rs6000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
	* config/rs6000/rs6000-protos.h (rs6000_mode_dependent_address_ptr):
	Remove.

From-SVN: r159759
2010-05-23 12:52:21 +04:00
Kai Tietz 362ff46e82 Fix typo in name.
From-SVN: r159758
2010-05-23 09:06:25 +02:00
Maarten Lankhorst 7b37a805ed re PR target/43869 (ms_abi -> sysv_abi passing float arguments incorrectly)
2010-05-23  Naarten Lankhorst  <mlankhorst@codeweavers.com>

        PR target/43869
        * config/i386/i386.c: Make sure that the correct regparm is passed.

From-SVN: r159755
2010-05-23 08:52:32 +02:00
Maarten Lankhorst 6f1dba7b78 re PR target/43869 (ms_abi -> sysv_abi passing float arguments incorrectly)
2010-05-23  Naarten Lankhorst  <mlankhorst@codeweavers.com>

        PR target/43869
        * gcc.c-target/pr43869.c: New test.

From-SVN: r159754
2010-05-23 08:51:50 +02:00
GCC Administrator 861de7fa6d Daily bump.
From-SVN: r159753
2010-05-23 00:17:08 +00:00
Steven Bosscher 9ecb17301f sbitmap.h (sbitmap_ptr, [...]): Move from here...
* sbitmap.h (sbitmap_ptr, const_sbitmap_ptr): Move from here...
	* sbitmap.c: ...to here to internalize sbitmap element access.
	Do not include tm.h, rtl.h, flags.h, hard-reg-set.h, and obstack.h.
	Explain why basic-block.h is included.
	* function.h: Include tm.h for CUMULATIVE_ARGS.
	* Makefile.in: Update dependencies.

From-SVN: r159749
2010-05-23 00:11:55 +00:00
Steven Bosscher 62a00d0899 jcf-parse.c: Include bitmap.h.
* jcf-parse.c: Include bitmap.h.
	* Make-lang.in: Update dependencies.

From-SVN: r159748
2010-05-23 00:05:11 +00:00
Jerry DeLisle 5d2d72cb79 re PR fortran/43851 (Add _gfortran_error_stop_numeric)
2010-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>

	PR fortran/43851
	* match.c (gfc_match_stopcode): Use gfc_match_init_expr. Go to cleanup
	before returning MATCH_ERROR. Add check for scalar. Add check for
	default integer kind.

From-SVN: r159747
2010-05-23 00:00:17 +00:00
Steven Bosscher 7a8cba34b0 coretypes.h (struct simple_bitmap_def, [...]): New core types.
gcc/ChangeLog:
	* coretypes.h (struct simple_bitmap_def, sbitmap, const_sbitmap):
	New core types.
	* sbitmap.h (struct sbitmap_def): Do not typedef here.
	* sbitmap.c: Include sbitmap.h.
	* basic-block.h: Do not include bitmap.h, sbitmap.h, partition.h,
	hard-reg-set.h.  Split everything related to regsets out from here...
	* regset.h: ...to here.  New file.
	* df.h: Include regset.h and sbitmap.h.
	* tree-flow.h: Likewise.
	* cfgloop.h: Likewise.
	* except.h: Do not include sbitmap.h.  Include hashtab.h.
	* cgraph.h: Include vec.h and function.h.
	* reload.h (struct insn_chain): Change types of live_throughout
	and dead_or_set from regset_head to bitmap_head.
	(compute_use_by_pseudos): Be defined also if regset.h is not included.
	* ira-int.h (struct ira_spilled_reg_stack_slot): Change type of
	spilled_regs from regset_head to bitmap_head to avoid dependency
	in regset.h.
	* sel-sched-ir.h: Include regset.h.
	* reload.c: Include df.h before reload.h.
	* caller-save.c: Likewise.
	* reload1.c: Likewise.
	* ira.c: Likewise.
	(mark_elimination): Update type of r to bitmap, consistent with
	DF_LR_IN.
	* dominance.c: Include bitmap.h.
	* modulo-sched.c: Include df.h.
	* cfganal.c: Include bitmap.h and sbitmap.h.
	* cfgbuild.c: Include sbitmap.h.
	* lcm.c: Include sbitmap.h.
	* gcse.c (alloc_gcse_mem): Allocate regset with ALLOC_REG_SET.
	* domwalk.c: Include sbitmap.h, exclude ggc.h.
	* cfgexpand.c: Inlcude bitmap.h and sbitmap.h.
	* cselib.c: Include bitmap.h.
	* tree-optimize.c: Include regset.h.
	* stmt.c: Include bitmap.h.
	* Makefile.in: Update dependencies.

cp/ChangeLog
	* semantics.c: Include bitmap.h.
	* Make-lang.in: Update dependencies.

From-SVN: r159746
2010-05-22 22:24:53 +00:00
Janus Weil bc382218ce re PR fortran/44212 ([OOP] ICE when defining a pointer component before defining the class and calling a TBP then)
2010-05-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44212
	* match.c (gfc_match_select_type): On error jump back out of the local
	namespace.
	* parse.c (parse_derived): Defer creation of vtab symbols to resolution
	stage, more precisely to ...
	* resolve.c (resolve_fl_derived): ... this place.


2010-05-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44212
	* gfortran.dg/class_22.f03: New.

From-SVN: r159745
2010-05-22 20:55:53 +02:00
Iain Sandoe 09c58f303c darwin assembler does not support .type
From-SVN: r159700
2010-05-22 17:34:46 +00:00
Jan Hubicka 9f90e80a18 decl2.c (maybe_emit_vtables): Produce same comdat group when outputting comdat vtables.
* decl2.c (maybe_emit_vtables): Produce same comdat group when outputting
	comdat vtables.
	(cxx_callgraph_analyze_expr): Remove code marking vtables needed.

	* cgraph.h (struct varpool_node): Add same_comdat_group.
	* lto-cgrpah.c (lto_output_varpool_node): Output same_comdat_group
	pointer.
	(output_varpool): Update call of lto_output_varpool_node.
	(input_varpool): Read same_comdat_group pointer.
	(input_varpool_1): Fixup same_comdat_group pointer.
	* ipa.c (cgraph_remove_unreachable_nodes): WHen one of same comdat
	group is needed, all are.
	* varpool.c (varpool_remove_node): Remove node from same comdat group
	linklist too.
	(varpool_analyze_pending_decls): Walk same comdat groups.

From-SVN: r159699
2010-05-22 14:48:40 +00:00
Steven Bosscher a2c9fe4253 rtl.h (union rtunion_def): Remove rt_bit member.
* rtl.h (union rtunion_def): Remove rt_bit member.
	(XBITMAP, X0BITMAP, XCBITMAP): Remove.
	* print-rtl (print_rtx): Do not print the member.
	* gengtype.c (adjust_field_rtx_def): Do not handle it.
	* gengenrtl.c (type_from_format): Likewise.
	(accessor_from_format): Likewise.

From-SVN: r159698
2010-05-22 14:15:50 +00:00
Joseph Myers 3b2ce251b8 dbgcnt.c: Include toplev.h instead of errors.h.
* dbgcnt.c: Include toplev.h instead of errors.h.
	* ira-emit.c: Don't include errors.h.
	* ira.c: Include toplev.h instead of errors.h.
	* lto-compress.c: Include toplev.h instead of errors.h.
	* Makefile.in (lto-compress.o, lto-streamer-out.o, ira-emit.o,
	ira.o, dbgcnt.o): Update dependencies.

From-SVN: r159697
2010-05-22 14:46:01 +01:00
Richard Guenther bd9eb5dacc gimple.c (gimple_types_compatible_p): Check type qualifications before merging pointer to complete and pointer to...
2010-05-22  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_types_compatible_p): Check type qualifications
	before merging pointer to complete and pointer to incomplete type.
	* lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
	we use our own resolution algorithm.  The gold linker plugin
	doesn't do the job we want it to do here.

	lto/
	* lto.c (read_cgraph_and_symbols): Do not collect.

From-SVN: r159696
2010-05-22 12:56:53 +00:00
Janus Weil 7c9b8fb912 re PR fortran/44213 (ICE when extending abstract type)
2010-05-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44213
	* resolve.c (ensure_not_abstract): Allow abstract types with
	non-abstract ancestors.


2010-05-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44213
	* gfortran.dg/abstract_type_7.f03: New.

From-SVN: r159695
2010-05-22 12:21:32 +02:00
Anatoly Sokolov 277e287344 sparc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
* config/sparc/sparc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
	* config/sparc/sparc.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
	(sparc_mode_dependent_address_p): New function.

From-SVN: r159694
2010-05-22 13:15:37 +04:00
GCC Administrator 0350c97ebe Daily bump.
From-SVN: r159691
2010-05-22 00:17:24 +00:00
Steven Bosscher 613b1547cb Makefile.in: Fix c-pch.o and ggc-common.o dependencies on timevars.
* Makefile.in: Fix c-pch.o and ggc-common.o dependencies on timevars.

	* timevar.c: Do not include any core headers.
	(timevar_print): De-i18n-ize.
	(print_time): Likewise.
	* timevar.h (timevar_push, timevar_pop): Make inline functions.

From-SVN: r159687
2010-05-21 23:00:23 +00:00
Joseph Myers 5d127eeb29 * cxx-pretty-print.c: Correct merge error.
From-SVN: r159686
2010-05-21 23:58:12 +01:00
Joseph Myers cf8358387d diagnostic.c: Don't include tm.h, tree.h, tm_p.h, langhooks.h or langhooks-def.h.
* diagnostic.c: Don't include tm.h, tree.h, tm_p.h, langhooks.h or
	langhooks-def.h.
	(diagnostic_initialize): Initialize x_data not last_function.
	(diagnostic_report_current_function): Move to tree-diagnostic.c.
	(default_diagnostic_starter): Call
	diagnostic_report_current_module not
	diagnostic_report_current_function.
	(diagnostic_report_diagnostic): Initialize x_data not
	abstract_origin.
	(verbatim): Likewise.
	* diagnostic.h (struct diagnostic_info): Change abstract_origin to
	x_data.
	(struct diagnostic_context): Change last_function to x_data.
	(diagnostic_auxiliary_data): Replace with
	diagnostic_context_auxiliary_data and
	diagnostic_info_auxiliary_data.
	(diagnostic_last_function_changed, diagnostic_set_last_function,
	diagnostic_report_current_function): Move to tree-diagnostic.h.
	(print_declaration, dump_generic_node, print_generic_stmt,
	print_generic_stmt_indented, print_generic_expr,
	print_generic_decl, debug_c_tree, dump_omp_clauses,
	print_call_name, debug_generic_expr, debug_generic_stmt,
	debug_tree_chain, default_tree_printer): Move to
	tree-pretty-print.h.
	(debug_gimple_stmt, debug_gimple_seq, print_gimple_seq,
	print_gimple_stmt, print_gimple_expr, dump_gimple_stmt): Move to
	gimple-pretty-print.h.
	* pretty-print.c: Don't include tree.h
	(pp_base_format): Don't handle %K here.
	(pp_base_tree_identifier): Move to tree-pretty-print.c.
	* pretty-print.h (text_info): Change abstract_origin to x_data.
	(pp_tree_identifier, pp_unsupported_tree,
	pp_base_tree_identifier): Move to tree-pretty-print.h.
	* gimple-pretty-print.h, tree-diagnostic.c, tree-diagnostic.h,
	tree-pretty-print.h: New files.
	* tree-pretty-print.c: Include tree-pretty-print.h.
	(percent_K_format): New.  Moved from pretty-print.c.
	(pp_base_tree_identifier): Move from pretty-print.c.
	* c-objc-common.c: Include tree-pretty-print.h.
	(c_tree_printer): Handle %K here.
	* langhooks.c: Include tree-diagnostic.h.
	(lhd_print_error_function): Use diagnostic_abstract_origin macro.
	* toplev.c: Include tree-diagnostic.h and tree-pretty-print.h.
	(default_tree_printer): Handle %K using percent_K_format.
	(general_init): Use default_tree_diagnostic_starter.
	* tree.c: Include tree-diagnostic.h and tree-pretty-print.h.
	(free_lang_data): Use default_tree_diagnostic_starter.
	* c-pretty-print.c: Include tree-pretty-print.h.
	* cfgexpand.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* cgraphunit.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* dwarf2out.c: Include tree-pretty-print.h.
	* except.c: Include tree-pretty-print.h.
	* gimple-pretty-print.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* gimplify.c: Include tree-pretty-print.h.
	* graphite-poly.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* ipa-cp.c: Include tree-pretty-print.h.
	* ipa-inline.c: Include gimple-pretty-print.h.
	* ipa-prop.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* ipa-pure-const.c: Include gimple-pretty-print.h.
	* ipa-struct-reorg.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* ipa-type-escape.c: Include tree-pretty-print.h.
	* print-rtl.c: Include tree-pretty-print.h.
	* print-tree.c: Include gimple-pretty-print.h.
	* sese.c: Include tree-pretty-print.h.
	* tree-affine.c: Include tree-pretty-print.h.
	* tree-browser.c: Include tree-pretty-print.h.
	* tree-call-cdce.c: Include gimple-pretty-print.h.
	* tree-cfg.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-chrec.c: Include tree-pretty-print.h.
	* tree-data-ref.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-dfa.c: Include tree-pretty-print.h.
	* tree-if-conv.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-inline.c: Include tree-pretty-print.h.
	* tree-into-ssa.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-nrv.c: Include tree-pretty-print.h.
	* tree-object-size.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-outof-ssa.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-parloops.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-predcom.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-scalar-evolution.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-sra.c: Include tree-pretty-print.h.
	* tree-ssa-address.c: Include tree-pretty-print.h.
	* tree-ssa-alias.c: Include tree-pretty-print.h.
	* tree-ssa-ccp.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-coalesce.c: Include tree-pretty-print.h.
	* tree-ssa-copy.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-copyrename.c: Include tree-pretty-print.h.
	* tree-ssa-dce.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-dom.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-dse.c: Include gimple-pretty-print.h.
	* tree-ssa-forwprop.c: Include tree-pretty-print.h.
	* tree-ssa-ifcombine.c: Include tree-pretty-print.h.
	* tree-ssa-live.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-loop-im.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-loop-ivcanon.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-loop-ivopts.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-loop-niter.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-loop-prefetch.c: Include tree-pretty-print.h.
	* tree-ssa-math-opts.c: Include gimple-pretty-print.h.
	* tree-ssa-operands.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-phiprop.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-pre.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-propagate.c: Include gimple-pretty-print.h.
	* tree-ssa-reassoc.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-sccvn.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-sink.c: Include gimple-pretty-print.h.
	* tree-ssa-ter.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-ssa-uninit.c: Include gimple-pretty-print.h.
	* tree-ssa.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-stdarg.c: Include gimple-pretty-print.h.
	* tree-switch-conversion.c: Include gimple-pretty-print.h.
	* tree-tailcall.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vect-data-refs.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vect-loop-manip.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vect-loop.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vect-patterns.c: Include gimple-pretty-print.h.
	* tree-vect-slp.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vect-stmts.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* tree-vectorizer.c: Include tree-pretty-print.h.
	* tree-vrp.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* value-prof.c: Include tree-pretty-print.h and
	gimple-pretty-print.h.
	* var-tracking.c: Include tree-pretty-print.h.
	* Makefile.in (OBJS-common): Add tree-diagnostic.o.
	(tree-diagnostic.o): New dependencies.
	(c-objc-common.o, c-pretty-print.o, langhooks.o, tree.o,
	tree-inline.o, print-tree.o, stor-layout.o, tree-ssa-uninit.o,
	tree-ssa.o, tree-into-ssa.o, tree-ssa-ter.o, tree-ssa-coalesce.o,
	tree-outof-ssa.o, tree-ssa-forwprop.o, tree-ssa-phiprop.o,
	tree-ssa-ifcombine.o, tree-nrv.o, tree-ssa-copy.o,
	tree-ssa-propagate.o, tree-ssa-dom.o, tree-ssa-uncprop.o,
	tree-ssa-live.o, tree-ssa-copyrename.o, tree-ssa-pre.o,
	tree-ssa-sccvn.o, tree-vrp.o, tree-cfg.o, tree-tailcall.o,
	tree-ssa-sink.o, tree-if-conv.o, tree-dfa.o, tree-ssa-operands.o,
	tree-ssa-address.o, tree-ssa-loop-niter.o,
	tree-ssa-loop-ivcanon.o, tree-ssa-loop-prefetch.o, tree-predcom.o,
	tree-ssa-loop-ivopts.o, tree-affine.o, tree-ssa-loop-im.o,
	tree-ssa-math-opts.o, tree-ssa-alias.o, tree-ssa-reassoc.o,
	gimplify.o, tree-browser.o, tree-chrec.o, tree-scalar-evolution.o,
	tree-data-ref.o, sese.o, graphite-poly.o, tree-vect-loop.o,
	tree-vect-loop-manip.o, tree-vect-patterns.o, tree-vect-slp.o,
	tree-vect-stmts.o, tree-vect-data-refs.o, tree-vectorizer.o,
	tree-parloops.o, tree-stdarg.o, tree-object-size.o,
	gimple-pretty-print.o, tree-pretty-print.o, diagnostic.o,
	toplev.o, print-rtl.o, except.o, dwarf2out.o, cgraphunit.o,
	ipa-prop.o, ipa-cp.o, ipa-inline.o, ipa-pure-const.o,
	ipa-type-escape.o, ipa-struct-reorg.o, tree-ssa-dce.o,
	tree-call-cdce.o, tree-ssa-ccp.o, tree-sra.o,
	tree-switch-conversion.o, var-tracking.o, value-prof.o,
	cfgexpand.o, pretty-print.o): Update dependencies.

cp:
	* error.c: Include tree-diagnostic.h and tree-pretty-print.h.
	(cp_print_error_function): Use diagnostic_abstract_origin macro.
	(cp_printer): Handle %K here using percent_K_format.
	* cxx-pretty-print.c: Include tree-pretty-print.h.
	* Make-lang.in (cp/error.o, cp/cxx-pretty-print.o): Update
	dependencies.

From-SVN: r159685
2010-05-21 23:34:26 +01:00
Andreas Tobler cf4f417597 tree-ssa-structalias.c: Remove tm_p.h from include.
2010-05-22  Andreas Tobler  <andreast@fgznet.ch>

	* tree-ssa-structalias.c: Remove tm_p.h from include.

From-SVN: r159684
2010-05-22 00:19:12 +02:00
Jeff Law c6d0f11a0a ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Fix typo.
* ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Fix typo.

From-SVN: r159683
2010-05-21 15:00:56 -06:00
Jason Merrill d3f2891085 tree-eh.c (cleanup_is_dead_in): New.
* tree-eh.c (cleanup_is_dead_in): New.
	(lower_try_finally): Don't generate a dead cleanup region.
	(lower_cleanup): Likewise.

From-SVN: r159682
2010-05-21 15:32:29 -04:00
Jakub Jelinek 14db98d4a6 re PR debug/44223 (segmentation fault with -g -fsched-pressure)
PR debug/44223
	* haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
	unchain each use from the cyclic next_regno_use chain first.

	* gcc.target/i386/pr44223.c: New test.

From-SVN: r159680
2010-05-21 20:45:29 +02:00
Steven Bosscher d49b6e1e33 real: Do not include gmp.h, mpfr.h, and mpc.h.
gcc/ChangeLog:
	* real: Do not include gmp.h, mpfr.h, and mpc.h.
	(REAL_VALUE_NEGATE, REAL_VALUE_ABS, real_arithmetic2): Remove.
	(real_value_negate, real_value_abs): New prototypes.
	(do_mpc_arg2, real_from_mpfr, mpfr_from_real): Move from here...
	* realmpfr.h (do_mpc_arg2, real_from_mpfr, mpfr_from_real): ...to here,
	new include file for interface between MPFR and REAL_VALUE_TYPE.
	* real.c: Include realmpfr.h.
	(real_arithmetic2): Remove legacy function.
	(real_value_negate): New.
	(real_value_abs): New.
	(mfpr_from_real, real_from_mpfr): Move from here...
	* realmpfr.c (mpfr_from_real, real_from_mpfr): ...to here, new file.
	* builtins.c: Include realmpfr.h.
	* fold-const.c: Include realmpfr.h.
	(fold_comparison): Use real_value_negate instead of REAL_VALUE_NEGATE.
	(fold_negate_const): Likewise.
	(fold_abs_const): Use real_value_abs instead of REAL_VALUE_ABS.
	* toplev.c: Include realmpfr.h.
	* simplify-rtx.c (simplify_const_unary_operation): Use real_value_abs
	and real_value_negate.
	* fixed-value.c (check_real_for_fixed_mode): Likewise.
	* config/arm/arm.c (neg_const_double_rtx_ok_for_fpa): Likewise.
	(vfp3_const_double_index): Likewise.
	(arm_print_operand): Likewise.
	* Makefile.in: Update dependencies.

fortran/ChangeLog:
	* trans-const.c: Include realmpfr.h.
	* Make-lang.in: Update dependencies.

From-SVN: r159679
2010-05-21 18:13:54 +00:00
Paolo Carlini 759149fbf3 re PR libstdc++/25306 (fill_n, generate_n assume Size is modifiable)
2010-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/25306
	* include/bits/stl_algobase.h (fill_n): Use a properly typed __niter
	initialized to __n.
	* include/bits/stl_algo.h (generate_n): Likewise.
	* testsuite/25_algorithms/fill_n/25306.cc: New.
	* testsuite/25_algorithms/generate_n/25306.cc: Likewise.

From-SVN: r159677
2010-05-21 16:57:17 +00:00
Richard Guenther bdc89f9eff lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
2010-05-21  Richard Guenther  <rguenther@suse.de>

	* lto-plugin.c (write_resolution): Do not assert syms is non-NULL.

From-SVN: r159676
2010-05-21 16:08:28 +00:00
Andreas Krebbel 5b4b1c9a4e s390.c (override_options): Increase the default of max-completely-peel-times.
2010-05-21  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c (override_options): Increase the default
	of max-completely-peel-times.

From-SVN: r159675
2010-05-21 15:46:38 +00:00
Julian Brown 7c19c715bb arm.c (arm_function_ok_for_sibcall): Only forbid sibling calls for Thumb-1.
gcc/
	* config/arm/arm.c (arm_function_ok_for_sibcall): Only forbid
	sibling calls for Thumb-1.
	* config/arm/arm.h (USE_RETURN_INSN): Enable for Thumb-2.
	* config/arm/arm.md (*call_symbol, *call_value_symbol): Use for
	Thumb-2.
	(*call_insn, *call_value_insn): Don't use for Thumb-2.
	(sibcall, sibcall_value, *sibcall_insn, *sibcall_value_insn): Use
	for Thumb-2.
	(return): New expander.
	(*arm_return): New name for ARM return insn.
	* config/arm/thumb2.md (*thumb2_return): New insn pattern.


Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r159672
2010-05-21 15:08:44 +00:00