1. 02 Jun, 2011 4 commits
    • * config/sparc/sparc.h (SETJMP_VIA_SAVE_AREA): Delete. · a21ede65
      From-SVN: r174565
      Eric Botcazou committed
    • function.h (struct stack_usage): Remove dynamic_alloc_count field. · bc6d3f91
      	* 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
      Eric Botcazou committed
    • Fix a few formatting issues · 66bd20e7
      From-SVN: r174561
      Eric Botcazou committed
    • Daily bump. · 93169693
      From-SVN: r174557
      GCC Administrator committed
  2. 01 Jun, 2011 28 commits
    • format clean up · 69282fee
      From-SVN: r174551
      David Li committed
    • sh.c (expand_cbranchdi4): Use a scratch register if needed when original… · e95873dd
      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
      Kaz Kojima committed
    • g2.c: Skip test in -mthumb. · a82fcbe8
      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
      Sofiane Naci committed
    • re PR debug/49250 (ICE in set_slot_part, at var-tracking.c:6793) · 88c15821
      	PR debug/49250
      	* var-tracking.c (add_uses, add_stores): Don't call
      	cselib_subst_to_values on ENTRY_VALUE.
      
      From-SVN: r174548
      Jakub Jelinek committed
    • pt.c (build_non_dependent_expr): Remove special handling of REFERENCE_REF_P. · cd2c00be
      	* pt.c (build_non_dependent_expr): Remove special handling of
      	REFERENCE_REF_P.
      
      From-SVN: r174545
      Jason Merrill committed
    • lto-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call… · 07233947
      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
      Diego Novillo committed
    • re PR c++/44175 ([C++0x] decltype sometimes cannot recurse) · 4324a55c
      	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
      Jason Merrill committed
    • lto-streamer-out.c (lto_output_ts_decl_non_common_tree_pointers): Remove… · 4ee3537a
      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
      Diego Novillo committed
    • re PR target/45074 (GCC Segmentation fault - negating global register variables) · 02972eaf
      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
      Richard Sandiford committed
    • re PR rtl-optimization/48830 (unrecognized insn: storing invalid upper FP reg in SImode) · 4d41c2d1
      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
      Richard Sandiford committed
    • re PR c++/49253 (Debug-mode forward_list broken) · 7448d2e7
      	PR c++/49253
      	* typeck2.c (build_x_arrow): Don't use build_min_nt.
      
      From-SVN: r174539
      Jason Merrill committed
    • Pass name cleanups · 5f57dccb
      From-SVN: r174537
      David Li committed
    • Better function header dump · ea6cf778
      From-SVN: r174536
      David Li committed
    • dwarf2out.c (compare_loc_descriptor, [...]): New functions. · eeeb9b49
      	* 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
      Jakub Jelinek committed
    • var-tracking.c (create_entry_value): New function. · ebdc0d4b
      	* var-tracking.c (create_entry_value): New function.
      	(vt_add_function_parameter): Use it.
      
      From-SVN: r174534
      Jakub Jelinek committed
    • crtfastmath.c: Include <signal.h>, <ucontext.h>. · 0699e415
      	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
      Rainer Orth committed
    • gmon-sol2.c: Reindent. · a3fab9c2
      	* 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
      Rainer Orth committed
    • t-slibgcc-darwin: Move to ... · ca24c5ad
      	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
      Rainer Orth committed
    • Add missing entry. · ce4fc506
      	* 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
      Ian Lance Taylor committed
    • dwarf2out.c (mem_loc_descriptor): Call base_type_for_mode with op_mode instead of mode. · a78d13c3
      	* dwarf2out.c (mem_loc_descriptor) <do_ucompare>: Call
      	base_type_for_mode with op_mode instead of mode.
      
      From-SVN: r174527
      Jakub Jelinek committed
    • arm-cores.def: Add cortex-r5. · 572070ef
      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
      Paul Brook committed
    • hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Use std::move on the allocator, use noexcept. · 6f59ea25
      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
      Paolo Carlini committed
    • ipa-utils.c (ipa_dfs_info): New field scc_no. · 11026b51
      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
      Martin Jambor committed
    • ipa-utils.c (searchc_env): New field allow_overwritable. · b6156cf2
      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
      Martin Jambor committed
    • * MAINTAINERS: Update my email address. · 6c059f76
      From-SVN: r174521
      Daniel Jacobowitz committed
    • In gcc/objc/: 2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com> · 98ab0248
      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
      Nicola Pero committed
    • tree.c (free_lang_data): Do not reset boolean_type_node nor char_type_node. · 6807da97
      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
      Richard Guenther committed
    • Daily bump. · 3dca2ab7
      From-SVN: r174518
      GCC Administrator committed
  3. 31 May, 2011 8 commits
    • rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from NON_FLOAT_REGS. · ddaf42bc
              * config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from
              NON_FLOAT_REGS.
      
      From-SVN: r174512
      Pat Haugen committed
    • rs6000.c (rs6000_register_move_cost): Preserve from parameter value for dump. · abdd692e
              * 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
      Pat Haugen committed
    • re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays]) · da661a58
      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
      Tobias Burnus committed
    • dwarf2out.c (resolve_addr_in_expr): Optimize away redundant DW_OP_GNU_convert ops. · ead7c399
      	* dwarf2out.c (resolve_addr_in_expr): Optimize away redundant
      	DW_OP_GNU_convert ops.
      
      From-SVN: r174509
      Jakub Jelinek committed
    • cselib.c (promote_debug_loc): Allow l->next non-NULL for cselib_preserve_constants. · 509f4495
      	* cselib.c (promote_debug_loc): Allow l->next non-NULL for
      	cselib_preserve_constants.
      	(cselib_lookup_1): If cselib_preserve_constants,
      	a new VALUE is being created for REG and there is a VALUE for the
      	same register in wider mode, add another loc with lowpart SUBREG of
      	the wider VALUE.
      	(cselib_subst_to_values): Handle ENTRY_VALUE.
      	* var-tracking.c  (replace_expr_with_values): Return NULL for
      	ENTRY_VALUE too.
      	* dwarf2out.c (convert_descriptor_to_signed): New function.
      	(mem_loc_descriptor) <case ZERO_EXTEND>: Optimize using DW_OP_and
      	instead of two shifts.
      	(mem_loc_descriptor) <do_shift>: ZERO_EXTEND second argument to
      	the right mode if needed.
      	(mem_loc_descriptor) <case MOD>: For typed ops just use DW_OP_mod.
      	(mem_loc_descriptor) <case UNSIGNED_FIX>: Use
      	convert_descriptor_to_signed.
      	(mem_loc_descriptor) <case UDIV, CLZ, CTZ, FFS, POPCOUNT, PARITY,
      	BSWAP, ROTATE, ROTATERT>: Handle these rtls.
      
      	* gcc.dg/guality/bswaptest.c: New test.
      	* gcc.dg/guality/clztest.c: New test.
      	* gcc.dg/guality/ctztest.c: New test.
      	* gcc.dg/guality/rotatetest.c: New test.
      
      From-SVN: r174508
      Jakub Jelinek committed
    • re PR target/48688 ([x64]: shift/or instead of lea) · 7351d8da
      	PR target/48688
      	* config/i386/i386.md (*lea_general_4): New define_insn_and_split.
      
      	* gcc.target/i386/pr48688.c: New test.
      
      From-SVN: r174507
      Jakub Jelinek committed
    • re PR c++/48010 (typedef redefinitions are allowed if the redefined type is a nested class type) · ff771454
      gcc/cp/ChangeLog
      
      2010-05-31  Fabien Chene  <fabien@gcc.gnu.org>
      
      	PR c++/48010
      	* name-lookup.c (supplement_binding_1): If the old binding was a
      	type name, also check that the DECL actually refers to the same
      	type or is not a type.
      
      gcc/testsuite/ChangeLog
      
      2010-05-31  Fabien Chene  <fabien@gcc.gnu.org>
      
      	PR c++/48010
      	* g++.dg/lookup/name-clash9.C: New.
      
      From-SVN: r174506
      Fabien Chêne committed
    • re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays]) · d73b65b6
      2011-05-31  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/18918
              * trans-array.c (gfc_trans_dummy_array_bias): Handle
              cobounds of assumed-shape arrays.
      
      2011-05-31  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/18918
              * gfortran.dg/coarray/dummy_1.f90: New.
      
      From-SVN: r174504
      Tobias Burnus committed