Commit Graph

109245 Commits

Author SHA1 Message Date
Kaz Kojima
a700b5f073 predicates.md (general_movsrc_operand): Return 0 for memory and memory subreg of which address is an invalid indexed...
* config/sh/predicates.md (general_movsrc_operand): Return 0
	for memory and memory subreg of which address is an invalid
	indexed address for QI and HImode.
	(general_movdst_operand): Likewise.
	* gcc.c-torture/compile/pr49163.c: New.

From-SVN: r174586
2011-06-02 22:26:42 +00:00
Eric Botcazou
76015c34a9 cse.c (cse_find_path): Refine change to exclude EDGE_ABNORMAL_CALL edges only...
2011-06-02  Eric Botcazou  <ebotcazou@adacore.com>

	* cse.c (cse_find_path): Refine change to exclude EDGE_ABNORMAL_CALL
	edges only, when there is a non-local label in the function.
	* postreload-gcse.c (bb_has_well_behaved_predecessors): Likewise.

From-SVN: r174585
2011-06-02 21:52:46 +00:00
Asher Langton
cde3a7a969 re PR fortran/49268 (Invalid code generated for assumed-size Cray pointee)
* trans-decl.c (gfc_trans_deferred_vars): Treat assumed-size Cray
        pointees as AS_EXPLICIT.

    * gfortran.dg/PR49268.f90: New test.

From-SVN: r174584
2011-06-02 21:41:12 +00:00
Asher Langton
11126dc093 re PR fortran/37039 (Cray pointer with pointee DIMENSION statement after POINTER statement)
* decl.c (variable_decl): Merge current_as before copying to cp_as.

    * gfortran.dg/PR37039.f90: New test.

From-SVN: r174582
2011-06-02 21:36:02 +00:00
Uros Bizjak
4e76acd2f0 constraints.md (Y3): New register constraint.
* config/i386/constraints.md (Y3): New register constraint.
	* config/i386/sse.md (*vec_interleave_highv2df): Merge with
	*sse3_interleave_highv2df and *sse2_interleave_highv2df.
	(*vec_interleave_lowv2df): Merge with *sse3_interleave_lowv2df and
	*sse2_interleave_lowv2df.

From-SVN: r174580
2011-06-02 22:47:32 +02:00
Julian Brown
288f605f2c arm-cores.def (cortex-a5): Use cortex_a5 tuning.
gcc/
	* config/arm/arm-cores.def (cortex-a5): Use cortex_a5 tuning.
	* config/arm/arm.c (arm_cortex_a5_branch_cost): New.
	(arm_cortex_a5_tune): New.

From-SVN: r174579
2011-06-02 20:16:09 +00:00
Julian Brown
153668ec86 arm-protos.h (tune_params): Add branch_cost hook.
gcc/
	* config/arm/arm-protos.h (tune_params): Add branch_cost hook.
	* config/arm/arm.c (arm_default_branch_cost): New.
	(arm_slowmul_tune, arm_fastmul_tune, arm_xscale_tune, arm_9e_tune)
	(arm_v6t2_tune, arm_cortex_tune, arm_cortex_a9_tune)
	(arm_fa726_tune): Set branch_cost field using
	arm_default_branch_cost.
	* config/arm/arm.h (BRANCH_COST): Use branch_cost hook from
	current_tune structure.
	* dojump.c (tm_p.h): Include file.

From-SVN: r174578
2011-06-02 20:13:08 +00:00
Julian Brown
7ec70105dd arm-cores.def (arm1156t2-s, [...]): Use v6t2 tuning.
gcc/
	* arm-cores.def (arm1156t2-s, arm1156t2f-s): Use v6t2 tuning.
	(cortex-a5, cortex-a8, cortex-a15, cortex-r4, cortex-r4f, cortex-m4)
	(cortex-m3, cortex-m1, cortex-m0): Use cortex tuning.
	* config/arm/arm-protos.h (tune_params): Add prefer_constant_pool
	field.
	* config/arm/arm.c (arm_slowmul_tune, arm_fastmul_tune)
	(arm_xscale_tune, arm_9e_tune, arm_cortex_a9_tune)
	(arm_fa726te_tune): Add prefer_constant_pool setting.
	(arm_v6t2_tune, arm_cortex_tune): New.
	* config/arm/arm.h (TARGET_USE_MOVT): Make dependent on
	prefer_constant_pool setting.

From-SVN: r174577
2011-06-02 20:10:44 +00:00
Nicola Pero
bf79cedb11 In gcc/objc/: 2011-06-02 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2011-06-02  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/48539
	* objc-act.c (objc_finish_message_expr): Warn if messaging a class
	that was only declared using @class without an @interface.  Warn
	if messaging an instance of a class that was only declared using
	@class without an @interface, unless the receiver was also typed
	with a protocol list.

In gcc/testsuite/:
2011-06-02  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/48539
	* objc.dg/method-5.m: Updated.	
	* objc.dg/method-19.m: Updated.
	* objc.dg/method-lookup-1.m: New.	
	* obj-c++.dg/method-6.mm: Updated.
	* obj-c++.dg/method-7.mm: Updated.
	* obj-c++.dg/method-lookup-1.mm: New.

From-SVN: r174575
2011-06-02 18:54:32 +00:00
DJ Delorie
ae9982ec2c * lib/timeout.exp (timeout): Add board_info support.
From-SVN: r174573
2011-06-02 14:16:25 -04:00
John Tytgat
fc0993ac13 files.c (read_file_guts): Add test on non-zero value of S_ISREG.
2011-05-29  John Tytgat  <John.Tytgat@aaug.net>

	* files.c (read_file_guts): Add test on non-zero value of S_ISREG.

From-SVN: r174571
2011-06-02 17:57:44 +00:00
Uros Bizjak
aad617322c i386.c (standard_sse_constant_p): Simplify switch statement.
* config/i386/i386.c (standard_sse_constant_p) <case 1>:
	Simplify switch statement.
	* config/i386/i386.md (*movdf_internal_rex64) <case 8,9,10>: Ditto.
	(*movdf_internal) <case 6,7,8>: Ditto.

	* config/i386/constraints.md (Y4): New constraint.
	* config/i386/sse.md (vec_set<mode>_0): Merge with
	*vec_set<mode>_0_sse4_1 and *vec_set<mode>_0_sse2.
	(*vec_extractv2di_1): Merge from *vec_extractv2di_1_sse2 and
	*vec_extractv2di_1_sse.
	(*vec_concatv2di_rex64): Merge from *vec_concatv2di_rex64_sse4_1
	and *vec_concatv2di_rex64_sse.

testsuite/ChangeLog:

	* gcc.target/i386/sse2-init-v2di-2: Update scan-assembler-times string.

From-SVN: r174570
2011-06-02 19:43:22 +02:00
Steven G. Kargl
162b5a21ad re PR fortran/49265 (Double colon in procedure-stmt (generic interface))
2011-06-02  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/49265
	* decl.c (gfc_match_modproc):  Allow for a double colon in a module
	procedure statement.
	* parse.c ( decode_statement): Deal with whitespace around :: in
	gfc_match_modproc.
 
2011-06-02  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/49265
	* gfortran.dg/module_procedure_double_colon_1.f90: New test.
	* gfortran.dg/module_procedure_double_colon_2.f90: New test.

From-SVN: r174569
2011-06-02 17:39:11 +00:00
Stuart Henderson
6e588138db re PR target/48807 (Segfault building newlib for bfin)
2011-06-02  Stuart Henderson  <shenders@gcc.gnu.org>

    PR target/48807
    * config/bfin/bfin.c (bfin_function_ok_for_sibcall): Check return value
    of cgraph_local_info for null before attempting to use it.

From-SVN: r174567
2011-06-02 16:16:52 +00:00
Eric Botcazou
b935d3be25 re PR rtl-optimization/48840 (assertion failure in reload1.c)
PR rtl-optimization/48840
	* gcc.target/sparc/ultrasp13.c: New test.

Co-Authored-By: Hans-Peter Nilsson <hp@axis.com>

From-SVN: r174566
2011-06-02 13:04:43 +00:00
Eric Botcazou
a21ede6532 * config/sparc/sparc.h (SETJMP_VIA_SAVE_AREA): Delete.
From-SVN: r174565
2011-06-02 11:09:16 +00:00
Eric Botcazou
bc6d3f91a3 function.h (struct stack_usage): Remove dynamic_alloc_count field.
* function.h (struct stack_usage): Remove dynamic_alloc_count field.
	(current_function_dynamic_alloc_count): Delete.
	* builtins.c (expand_builtin_setjmp_setup): Do not set calls_setjmp.
	(expand_builtin_nonlocal_goto): Remove obsolete comment.
	(expand_builtin_update_setjmp_buf): Remove dead code.
	* cse.c (cse_find_path): Do not follow a single abnormal incoming edge.
	* explow.c (allocate_dynamic_stack_space): Remove SETJMP_VIA_SAVE_AREA
	support.
	* function.c (instantiate_virtual_regs): Likewise.
	* postreload-gcse.c (bb_has_well_behaved_predecessors): Return false
	for a block with a single abnormal incoming edge.
	* config/sparc/sparc.h (STACK_SAVEAREA_MODE): Define.
	* config/sparc/sparc-protos.h (load_got_register): Declare.
	* config/sparc/sparc.c (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Define.
	(load_got_register): Make global.
	(sparc_frame_pointer_required): Add 'static'.
	(sparc_can_eliminate): Likewise.  Call sparc_frame_pointer_required.
	(sparc_builtin_setjmp_frame_value): New function.
	* config/sparc/sparc.md (UNSPECV_SETJMP): Remove.
	(save_stack_nonlocal): New expander.
	(restore_stack_nonlocal): Likewise.
	(nonlocal_goto): Remove modes, adjust predicates and reimplement.
	(nonlocal_goto_internal): New insn.
	(goto_handler_and_restore): Delete.
	(builtin_setjmp_setup): Likewise.
	(do_builtin_setjmp_setup): Likewise.
	(setjmp): Likewise.
	(builtin_setjmp_receiver): New expander.

From-SVN: r174564
2011-06-02 10:48:11 +00:00
Eric Botcazou
66bd20e7b6 Fix a few formatting issues
From-SVN: r174561
2011-06-02 09:18:13 +00:00
GCC Administrator
931696937d Daily bump.
From-SVN: r174557
2011-06-02 00:18:11 +00:00
David Li
69282feeab format clean up
From-SVN: r174551
2011-06-01 23:08:50 +00:00
Kaz Kojima
e95873dd5b sh.c (expand_cbranchdi4): Use a scratch register if needed when original operands are used for msw_skip...
* config/sh/sh.c (expand_cbranchdi4): Use a scratch register if
	needed when original operands are used for msw_skip comparison.
	* gcc.c-torture/compile/pr49238.c: New.

From-SVN: r174550
2011-06-01 22:36:08 +00:00
Sofiane Naci
a82fcbe825 g2.c: Skip test in -mthumb.
2011-06-01  Sofiane Naci  <sofiane.naci@arm.com>

	* gcc.target/arm/g2.c: Skip test in -mthumb.
	Skip test unless cpu is xscale.
	* gcc.target/arm/scd42-2.c: Likewise.
	* gcc.target/arm/mmx-1.c: Skip test in -mthumb.

From-SVN: r174549
2011-06-01 21:51:25 +00:00
Jakub Jelinek
88c158217c re PR debug/49250 (ICE in set_slot_part, at var-tracking.c:6793)
PR debug/49250
	* var-tracking.c (add_uses, add_stores): Don't call
	cselib_subst_to_values on ENTRY_VALUE.

From-SVN: r174548
2011-06-01 23:45:34 +02:00
Jason Merrill
cd2c00bef3 pt.c (build_non_dependent_expr): Remove special handling of REFERENCE_REF_P.
* pt.c (build_non_dependent_expr): Remove special handling of
	REFERENCE_REF_P.

From-SVN: r174545
2011-06-01 16:37:20 -04:00
Diego Novillo
072339477c lto-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call output_record_start with LTO_null instead of output_zero.
* lto-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call
	output_record_start with LTO_null instead of output_zero.
	(lto_output_ts_binfo_tree_pointers): Likewise.
	(lto_output_tree): Likewise.
	(output_eh_try_list): Likewise.
	(output_eh_region): Likewise.
	(output_eh_lp): Likewise.
	(output_eh_regions): Likewise.
	(output_bb): Likewise.
	(output_function): Likewise.
	(output_unreferenced_globals): Likewise.
	* lto-streamer.h (enum LTO_tags): Reserve MAX_TREE_CODES
	instead of NUM_TREE_CODES.
	(lto_tag_is_tree_code_p): Check max value against MAX_TREE_CODES.
	(lto_output_int_in_range): Change << to >> when shifting VAL.

From-SVN: r174544
2011-06-01 16:36:55 -04:00
Jason Merrill
4324a55c06 re PR c++/44175 ([C++0x] decltype sometimes cannot recurse)
PR c++/44175
	* pt.c (template_args_equal): Handle one arg being NULL_TREE.
	(deduction_tsubst_fntype): Handle excessive non-infinite recursion.

From-SVN: r174543
2011-06-01 16:27:22 -04:00
Diego Novillo
4ee3537a6d lto-streamer-out.c (lto_output_ts_decl_non_common_tree_pointers): Remove assertion for DECL_SAVED_TREE in FUNCTION_DECL nodes.
* lto-streamer-out.c (lto_output_ts_decl_non_common_tree_pointers):
	Remove assertion for DECL_SAVED_TREE in FUNCTION_DECL nodes.

From-SVN: r174542
2011-06-01 16:14:17 -04:00
Richard Sandiford
02972eafb0 re PR target/45074 (GCC Segmentation fault - negating global register variables)
gcc/
	PR target/45074
	* optabs.h (valid_multiword_target_p): Declare.
	* expmed.c (extract_bit_field_1): Check valid_multiword_target_p when
	doing multi-word operations.
	* optabs.c (expand_binop): Likewise.
	(expand_doubleword_bswap): Likewise.
	(expand_absneg_bit): Likewise.
	(expand_unop): Likewise.
	(expand_copysign_bit): Likewise.
	(multiword_target_p): New function.

gcc/testsuite/
	PR target/45074
	* gcc.target/mips/pr45074.c: New test.

From-SVN: r174541
2011-06-01 19:49:53 +00:00
Richard Sandiford
4d41c2d1ce re PR rtl-optimization/48830 (unrecognized insn: storing invalid upper FP reg in SImode)
gcc/
	PR rtl-optimization/48830
	PR rtl-optimization/48808
	PR rtl-optimization/48792
	* reload.c (push_reload): Check contains_reg_of_mode.
	* reload1.c (strip_paradoxical_subreg): New function.
	(gen_reload_chain_without_interm_reg_p): Use it to handle
	paradoxical subregs.
	(emit_output_reload_insns, gen_reload): Likewise.

gcc/testsuite/
2011-06-01  Eric Botcazou  <ebotcazou@adacore.com>
	    Hans-Peter Nilsson  <hp@axis.com>

	PR rtl-optimization/48830
	* gcc.target/sparc/ultrasp12.c: New test.

From-SVN: r174540
2011-06-01 19:47:19 +00:00
Jason Merrill
7448d2e73e re PR c++/49253 (Debug-mode forward_list broken)
PR c++/49253
	* typeck2.c (build_x_arrow): Don't use build_min_nt.

From-SVN: r174539
2011-06-01 14:07:03 -04:00
David Li
5f57dccbc6 Pass name cleanups
From-SVN: r174537
2011-06-01 17:45:26 +00:00
David Li
ea6cf778dd Better function header dump
From-SVN: r174536
2011-06-01 17:42:39 +00:00
Jakub Jelinek
eeeb9b49bd dwarf2out.c (compare_loc_descriptor, [...]): New functions.
* dwarf2out.c (compare_loc_descriptor, scompare_loc_descriptor,
	ucompare_loc_descriptor, minmax_loc_descriptor, clz_loc_descriptor,
	popcount_loc_descriptor, bswap_loc_descriptor, rotate_loc_descriptor):
	New functions.
	(mem_loc_descriptor): Use them.

From-SVN: r174535
2011-06-01 18:09:28 +02:00
Jakub Jelinek
ebdc0d4b15 var-tracking.c (create_entry_value): New function.
* var-tracking.c (create_entry_value): New function.
	(vt_add_function_parameter): Use it.

From-SVN: r174534
2011-06-01 18:08:48 +02:00
Rainer Orth
0699e415bc crtfastmath.c: Include <signal.h>, <ucontext.h>.
gcc:
	* config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__]:
	Include <signal.h>, <ucontext.h>.
	(sigill_caught): Define.
	(sigill_hdlr): New function.
	(set_fast_math) [!__x86_64__ && __sun__ && __svr4__]: Check if SSE
	insns can be executed.
	* config/sol2.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math
	etc.
	* config/sparc/sol2.h (ENDFILE_SPEC): Remove.

	libgcc:
	* config.host (i[34567]86-*-solaris2*): Add i386/t-crtfm to
	tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r174532
2011-06-01 14:49:21 +00:00
Rainer Orth
a3fab9c2a9 gmon-sol2.c: Reindent.
* config/gmon-sol2.c: Reindent.
	Cleanup comments.
	Remove, correct casts.
	Use STDERR_FILENO, NULL.
	(BASEADDRESS): Remove.
	(minbrk): Remove.
	(errno, sbrk): Remove declarations.
	(monstartup) [hp300]: Remove.
	(mcount): Remove.

From-SVN: r174531
2011-06-01 14:46:24 +00:00
Rainer Orth
ca24c5ad73 t-slibgcc-darwin: Move to ...
gcc:
	* config/t-slibgcc-darwin: Move to ...
	* config/t-slibgcc-dummy: .. this.
	Clarify comments.
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*,
	powerpc-*-darwin*, powerpc64-*-darwin*): Reflect this.
	(i[3456x]86-*-netware*): Add t-slibgcc-dummy to tmake_file.
	(i[34567]86-*-rtems*): Remove extra_parts.
	Use i386/t-rtems.
	Remove i386/t-crtstuff from tmake_file.
	(i[34567]86-*-solaris2*): Remove t-svr4,
	t-slibgcc-elf-ver, t-slibgcc-sld from tmake_file, add
	t-slibgcc-dummy.
	(sparc-*-elf*, sparc64-*-elf*): Remove tmake_file, extra_parts.
	(sparc-*-rtems*, sparc64-*-rtems*): Remove sparc/t-crtin,
	sparc/t-crtfm from tmake_file.
	(sparc*-*-solaris2*): Remove sparc/t-sol2, sparc/t-crtfm,
	t-slibgcc-elf-ver, t-slibgcc-sld, add t-slibgcc-dummy.
	Remove extra_parts.
	* config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define.
	* config/i386/t-nwld (SHLIB_LINK): Remove.
	* config/i386/t-rtems-i386: Rename to ...
	* config/i386/t-rtems: ... this.
	($(T)crti.o, $(T)crtn.o): Remove.
	(FPBIT, DPBIT, LIB2FUNCS_EXTRA): Remove.
	(dp-bit.c, fp-bit.c, xp-bit.c): Remove.
	(EXTRA_MULTILIB_PARTS, LIBGCC, INSTALL_LIBGCC): Remove.
	* config/i386/t-sol2-10 (LIBGCC, INSTALL_LIBGCC,
	EXTRA_MULTILIB_PARTS): Remove.
	* config/sparc/t-sol2-64: Likewise.
	* config/sparc/t-sol2: Remove.
	* config/sparc/t-crtin: Remove.
	* config/sparc/gmon-sol2.c: Move to ../libgcc/config.
	* config/i386/gmon-sol2.c: Remove.
	* config/i386/sol2-c1.asm: Move to ../libgcc/config/i386/sol2-c1.S.
	* config/i386/sol2-ci.asm: Move to ../libgcc/config/i386/sol2-ci.S.
	* config/i386/sol2-cn.asm: Move to ../libgcc/config/i386/sol2-cn.S.
	* config/i386/sol2-gc1.asm: Remove.
	* config/sparc/sol2-c1.asm: Move to ../libgcc/config/sparc/sol2-c1.S.
	* config/sparc/sol2-ci.asm: Move to ../libgcc/config/sparc/sol2-ci.S.
	* config/sparc/sol2-cn.asm: Move to ../libgcc/config/sparc/sol2-cn.S.
	* config/t-slibgcc-sld: Remove.

	libgcc:
	* Makefile.in (cpu_type): Define.
	* config.host (i[34567]86-*-rtems*): Handle it.
	(i[34567]86-*-solaris2*): Move body ...
	(*-*-solaris2*): ... here.
	New case, generalize.
	(sparc-*-elf*): Handle it.
	(sparc-*-linux*, sparc64-*-linux*): Replace sparc/t-crtfm by t-crtfm.
	(sparc-*-rtems*, sparc64-*-rtems*); Handle it.
	(sparc64-*-solaris2*, sparcv9-*-solaris2*, sparc-*-solaris2*):
	Fold into ...
	(sparc*-*-solaris2*): ... this.
	New case.
	(sparc64-*-elf*): Handle it.
	* config/gmon-sol2.c: Move from ../gcc/config/sparc.
	Merge ../gcc/config/i386/gmon-sol2.c.
	* config/i386/sol2-c1.S: Move from ../gcc/config/i386/sol2-c1.asm.
	Use C comments.
	Merge ../gcc/config/i386/sol2-gc1.asm.
	* config/i386/sol2-ci.S: Move from ../gcc/config/i386/sol2-ci.asm.
	Use C comments.
	* config/i386/sol2-cn.S: Move from ../gcc/config/i386/sol2-cn.asm.
	Use C comments.
	* config/i386/t-crtfm (crtfastmath.o): Use $<.
	* config/i386/t-crtstuff: New file.
	* config/i386/t-softfp: New file.
	* config/i386/t-sol2 ($(T)gmon.o, $(T)gcrt1.o, $(T)crt1.o),
	$(T)crti.o, $(T)crtn.o): Remove.
	(gcrt1.o): New rule.
	(TARGET_LIBGCC2_CFLAGS): Remove.
	* config/sparc/sol2-c1.S: Move from ../gcc/config/sparc/sol2-c1.asm.
	* config/sparc/sol2-ci.S: Move from ../gcc/config/sparc/sol2-ci.asm.
	* config/sparc/sol2-cn.S: Move from ../gcc/config/sparc/sol2-cn.asm.
	* config/sparc/t-sol2: New file.
	* config/sparc/t-crtfm: Move to ...
	* config/t-crtfm: ... this.
	Use $(cpu_type), $<.
	* config/t-crtin: New file.
	* config/sparc/t-softfp: New file.
	* config/sparc/t-softmul: New file.
	* config/t-rtems: New file.
	* config/t-slibgcc: New file.
	* config/t-slibgcc-elf-ver: New file.
	* config/t-slibgcc-gld: New file.
	* config/t-slibgcc-sld: New file.
	* config/t-sol2: New file.
	* configure.ac: Include ../config/lib-ld.m4.
	Call AC_LIB_PROG_LD_GNU.
	Substitute cpu_type.
	* configure: Regenerate.

From-SVN: r174529
2011-06-01 14:39:17 +00:00
Ian Lance Taylor
ce4fc50608 Add missing entry.
* configure.ac (--with-specs): New option.
	* configure: Regenerated.
	* gcc.c (driver_self_specs): Include CONFIGURE_SPECS.
	* Makefile.in (DRIVER_DEFINES): Add -DCONFIGURE_SPECS.

From-SVN: r174528
2011-06-01 14:31:00 +00:00
Jakub Jelinek
a78d13c3e8 dwarf2out.c (mem_loc_descriptor): Call base_type_for_mode with op_mode instead of mode.
* dwarf2out.c (mem_loc_descriptor) <do_ucompare>: Call
	base_type_for_mode with op_mode instead of mode.

From-SVN: r174527
2011-06-01 16:21:06 +02:00
Paul Brook
572070efe3 arm-cores.def: Add cortex-r5.
2011-06-01  Paul Brook  <paul@cpodesourcery.com>

	gcc/
	* config/arm/arm-cores.def: Add cortex-r5.  Add DIV flags to
	Cortex-A15.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm.c (FL_DIV): Rename...
	(FL_THUMB_DIV): ... to this.
	(FL_ARM_DIV): Define.
	(FL_FOR_ARCH7R, FL_FOR_ARCH7M): Use FL_THUMB_DIV.
	(arm_arch_hwdiv): Remove.
	(arm_arch_thumb_hwdiv, arm_arch_arm_hwdiv): New variables.
	(arm_issue_rate): Add cortexr5.
	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Set
	__ARM_ARCH_EXT_IDIV__.
	(TARGET_IDIV): Define.
	(arm_arch_hwdiv): Remove.
	(arm_arch_arm_hwdiv, arm_arch_thumb_hwdiv): New prototypes.
	* config/arm/arm.md (tune_cortexr4): Add cortexr5.
	(divsi3, udivsi3): New patterns.
	* config/arm/thumb2.md (divsi3, udivsi3): Remove.
	* doc/invoke.texi: Document ARM -mcpu=cortex-r5

From-SVN: r174526
2011-06-01 14:18:29 +00:00
Paolo Carlini
6f59ea252b hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Use std::move on the allocator, use noexcept.
2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
	Use std::move on the allocator, use noexcept.
	(_Hashtable<>::~_Hashtable): Use noexcept.
	* include/bits/stl_list.h: Likewise.
	* include/bits/forward_list.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_map.h (map<>::map(map&&)): Use noexcept. 
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
	std::move on the allocator.
	(_Rb_tree<>::~_Rb_tree): Use noexcept.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/basic_string.h (basic_string<>::~basic_string): Use
	noexcept.
	* include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
	* include/debug/set.h: Adjust.
	* include/debug/unordered_map: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/forward_list: Likewise.
	* include/debug/vector: Likewise.
	* include/debug/unordered_set: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/string: Likewise.
	* include/debug/list: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/profile/set.h: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/multiset.h: Likewise.
	* include/profile/forward_list: Likewise.
	* include/profile/unordered_set: Likewise.
	* include/profile/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/list: Likewise.
	* include/profile/multimap.h: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/
	noexcept_move_construct.cc: New.
	* testsuite/21_strings/basic_string/cons/char/
	noexcept_move_construct.cc: Likewise.
	* testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_map/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multimap/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/set/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_set/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/bool/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multiset/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/map/cons/noexcept_move_construct.cc
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

	* include/bits/move.h (swap): Use __and_ in the noexcept.
	* include/bits/algorithmfwd.h: Adjust.

From-SVN: r174525
2011-06-01 14:16:19 +00:00
Martin Jambor
11026b5123 ipa-utils.c (ipa_dfs_info): New field scc_no.
2011-06-01  Martin Jambor  <mjambor@suse.cz>

	* ipa-utils.c (ipa_dfs_info): New field scc_no.
	* ipa-utils.c (searchc): Set scc_no.

From-SVN: r174524
2011-06-01 15:07:26 +02:00
Martin Jambor
b6156cf232 ipa-utils.c (searchc_env): New field allow_overwritable.
2011-06-01  Martin Jambor  <mjambor@suse.cz>

	* ipa-utils.c (searchc_env): New field allow_overwritable.
	(searchc): do not ignore edges to overwritable nodes if indicated
	by env->allow_overwritable.
	(ipa_reduced_postorder): Set env.allow_overwritable.

From-SVN: r174523
2011-06-01 14:52:08 +02:00
Daniel Jacobowitz
6c059f76e7 * MAINTAINERS: Update my email address.
From-SVN: r174521
2011-06-01 11:10:11 +00:00
Nicola Pero
98ab024860 In gcc/objc/: 2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2011-06-01  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_decl_method_attributes): Implement nonnull
	attribute for Objective-C methods.

In gcc/testsuite/:
2011-06-01  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc.dg/attributes/method-nonnull-1.m: New test.
	* obj-c++.dg/attributes/method-nonnull-1.mm: New test.

From-SVN: r174520
2011-06-01 09:30:18 +00:00
Richard Guenther
6807da97b7 tree.c (free_lang_data): Do not reset boolean_type_node nor char_type_node.
2011-06-01  Richard Guenther  <rguenther@suse.de>

	* tree.c (free_lang_data): Do not reset boolean_type_node nor
	char_type_node.
	* lto-streamer.c (lto_record_common_node): Take node pointer,
	do not register types.
	(lto_preload_common_nodes): Explicitly skip preloading nodes
	that differ between frontends.

	lto/
	* lto-lang.c (lto_register_canonical_types): New function.
	(lto_init): Register common nodes with the canonical type machinery.
	Do not play tricks with char_type_node.

From-SVN: r174519
2011-06-01 08:52:33 +00:00
GCC Administrator
3dca2ab7a7 Daily bump.
From-SVN: r174518
2011-06-01 00:18:07 +00:00
Pat Haugen
ddaf42bc24 rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from NON_FLOAT_REGS.
* config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from
        NON_FLOAT_REGS.

From-SVN: r174512
2011-05-31 20:50:37 +00:00
Pat Haugen
abdd692edc rs6000.c (rs6000_register_move_cost): Preserve from parameter value for dump.
* config/rs6000/rs6000.c (rs6000_register_move_cost): Preserve from
        parameter value for dump. Dump cost on outermost call only.
        (rs6000_memory_move_cost): Dump cost on outermost call only.

From-SVN: r174511
2011-05-31 20:47:37 +00:00
Tobias Burnus
da661a58be re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * intrinsic.c (klass): Add CLASS_ATOMIC.
        (add_subroutines): Add atomic_ref/atomic_define.
        * intrinsic.texi (ATOMIC_REF, ATOMIC_DEFINE): Document.
        * intrinsic.h (gfc_check_atomic_def, gfc_check_atomic_ref,
        gfc_resolve_atomic_def, gfc_resolve_atomic_ref): New prototypes.
        * gfortran.h (gfc_isym_id): Add GFC_ISYM_ATOMIC_DEF
        and GFC_ISYM_ATOMIC_REF.
        (gfc_atomic_int_kind, gfc_atomic_logical_kind): New global vars.
        * iresolve.c (gfc_resolve_atomic_def, gfc_resolve_atomic_ref):
        * New
        functions.
        * check.c (gfc_check_atomic, gfc_check_atomic_def,
        gfc_check_atomic_ref): New functions.
        * iso-fortran-env.def (ISOFORTRANENV_FILE_ATOMIC_INT_KIND,
        ISOFORTRANENV_FILE_ATOMIC_LOGICAL_KIND): Change kind value.
        * trans-intrinsic.c (conv_intrinsic_atomic_def,
        conv_intrinsic_atomic_ref, gfc_conv_intrinsic_subroutine): New
        functions.
        (conv_intrinsic_move_alloc) Renamed from
        gfc_conv_intrinsic_move_alloc - and made static.
        * trans.h (gfc_conv_intrinsic_move_alloc): Remove.
        (gfc_conv_intrinsic_subroutine) Add prototype.
        * trans.c (trans_code): Call gfc_conv_intrinsic_subroutine.

From-SVN: r174510
2011-05-31 22:04:09 +02:00