Commit Graph

114402 Commits

Author SHA1 Message Date
Jonathan Wakely
8dfb08abc3 printers.py (StdForwardListPrinter): Add.
* python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
	* testsuite/libstdc++-prettyprinters/cxx11.cc: New.

From-SVN: r182989
2012-01-08 12:34:00 +00:00
GCC Administrator
facdaed3a2 Daily bump.
From-SVN: r182988
2012-01-08 00:19:44 +00:00
Jan Hubicka
f45b2a8a5e re PR tree-optimization/51600 (ice in estimate_local_effects)
PR tree-optimization/51600
	* ipa-inline-analysis.c (estimate_edge_devirt_benefit): Disable code
	that benefits small functions.

From-SVN: r182984
2012-01-08 00:16:18 +00:00
Jan Hubicka
db22a743fc re PR tree-optimization/51680 (g++ 4.7 fails to inline trivial template stuff)
PR tree-optimization/51680
	* ipa-inline.c (want_inline_small_function_p): Be more lax on functions
	whose inlining reduce unit size.

From-SVN: r182983
2012-01-07 23:35:08 +00:00
Alexandre Oliva
faead9f73f re PR bootstrap/51725 (segfault in stage 3 when compiling gcc/opts.c for sparc64-linux)
PR bootstrap/51725
* cselib.c (new_elt_loc_list): Promote addr_list to canonical node.
Add canonical node to containing_mem chain after the non-canonical
one, even if there weren't any locs to propagate.
(remove_useless_values): Keep only canonical values.
(add_mem_for_addr, cselib_lookup_mem): Canonicalize addr.
(cselib_invalidate_mem): Likewise.  Ensure v is canonical, and
canonicalize mem_chain elements that are not discarded.

From-SVN: r182982
2012-01-07 21:37:15 +00:00
John David Anglin
e991086dd6 re PR gcov-profile/51715 (FAIL: gcc.misc-tests/gcov-13.c execution test)
PR gcov-profile/51715
	PR gcov-profile/51717
	* gcc.misc-tests/gcov-13.c: Skip on 32-bit hppa*-*-hpux*.
	* gcc.misc-tests/gcov-14.c: Likewise.

From-SVN: r182981
2012-01-07 15:27:15 +00:00
GCC Administrator
340d15ee7e Daily bump.
From-SVN: r182979
2012-01-07 00:19:15 +00:00
Jason Merrill
b2218da7a7 DR 686 PR c++/47450
DR 686
	PR c++/47450
	* parser.c (cp_parser_new_expression): Set
	type_definition_forbidden_message.

From-SVN: r182975
2012-01-06 18:19:05 -05:00
Jakub Jelinek
0850f694fb re PR target/47333 (g++.dg/lto/20091219 FAILs on Solaris 2 with SUN as)
PR target/47333
	* cgraphunit.c (cgraph_optimize): Call output_weakrefs
	before emitting functions.

From-SVN: r182974
2012-01-06 23:06:08 +01:00
Jakub Jelinek
b71d7f8507 re PR gcov-profile/50127 (g++.dg/tree-prof/partition2.C FAILs on several targets)
PR gcov-profile/50127
	* bb-reorder.c (partition_hot_cold_basic_blocks): Call
	clear_aux_for_blocks.

From-SVN: r182973
2012-01-06 23:05:03 +01:00
Patrick Marlier
4ee2f8308a re PR testsuite/51655 (FAIL: c-c++-common/tm/memcpy-1.c (test for excess errors))
PR testsuite/51655
        * c-c++-common/tm/memcpy-1.c: Declare memcpy instead of
        including <string.h>.

From-SVN: r182972
2012-01-06 13:58:44 -08:00
Ian Lance Taylor
f9f9698753 compiler, runtime: Implement struct and array comparisons.
From-SVN: r182971
2012-01-06 21:47:49 +00:00
Jason Merrill
4b6aaa996e re PR c++/6057 (expression mangling doesn't work for operator new)
PR c++/6057
	PR c++/48051
	PR c++/50855
	PR c++/51322
gcc/cp/
	* mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
	THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
	PREDECREMENT_EXPR.
	(write_template_arg): Fix mangling of class-scope functions and
	argument packs.
	(mangle_decl): Update suggested -fabi-version argument.
	* operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
	DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
	* tree.c (dependent_name): No longer static.
	* cp-tree.h: Declare it.
	* pt.c (unify): Defer handling of unconverted functions.
include/
	* demangle.h (enum demangle_component_type): Add
	DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY.
libiberty/
	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and
	DEMANGLE_COMPONENT_INITIALIZER_LIST.
	(d_make_comp): Likewise.  Allow null right arg for
	DEMANGLE_COMPONENT_TRINARY_ARG2.
	(cplus_demangle_operators): Adjust new/delete; add .*, :: and throw.
	(d_template_args, d_template_arg): Handle 'J' for argument packs.
	(d_exprlist): Add terminator parm.
	(d_expression, d_print_comp): Handle initializer lists, nullary
	expressions, prefix/suffix operators, and new.
	(d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME
	and DEMANGLE_COMPONENT_INITIALIZER_LIST.
	* testsuite/demangle-expected: Add tests.

From-SVN: r182970
2012-01-06 16:39:43 -05:00
Jason Merrill
49f2da1a16 cp-demangle.c (cplus_demangle_type): decltype, pack expansion and vector are substitutable.
* cp-demangle.c (cplus_demangle_type): decltype, pack expansion
	and vector are substitutable.
	(cplus_demangle_operators): Sort.

From-SVN: r182969
2012-01-06 16:39:34 -05:00
Jason Merrill
1be3db365d mangle.c (mangle_decl): Don't generate mangling aliases for maybe-in-charge [cd]tors.
* mangle.c (mangle_decl): Don't generate mangling aliases
	for maybe-in-charge [cd]tors.

From-SVN: r182968
2012-01-06 16:39:27 -05:00
Jason Merrill
11a36a2754 * error.c (dump_expr): Print type of CONSTRUCTOR.
From-SVN: r182967
2012-01-06 16:39:19 -05:00
Jason Merrill
458961279a correct comment
From-SVN: r182965
2012-01-06 16:39:07 -05:00
Alexandre Oliva
7483eef82a re PR debug/51746 (Segfault in cselib_preserved_value_p)
PR debug/51746
* cselib.c (cselib_hash_rtx): Hash incoming VALUEs too.

From-SVN: r182963
2012-01-06 20:20:55 +00:00
Jakub Jelinek
09228fefca re PR lto/51774 (FAIL: gcc.dg/lto/trans-mem-* c_lto_trans-mem-1_0.o-c_lto_trans-mem-1_1.o link, -flto -fgnu-tm)
PR lto/51774
	* lto-lang.c (handle_returns_twice_attribute): New function.
	(lto_attribute_table): Add returns_twice attribute.

From-SVN: r182959
2012-01-06 17:48:52 +01:00
Arnaud Charlet
4913e24c20 [multiple changes]
2012-01-06  Robert Dewar  <dewar@adacore.com>

	* a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads,
	s-utf_32.ads: Add pragma Pure
	* s-utf_32.adb: Suppress warnings on non-static constants (now
	that this is Pure).

2012-01-06  Bob Duff  <duff@adacore.com>

	* s-rpc.ads (Read, Write): Add overriding indicators.

2012-01-06  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Add documentation for conventions
	Ada_Pass_By_Copy and Ada_Pass_By_Reference.

2012-01-06  Gary Dismukes  <dismukes@adacore.com>

	* a-tienio.adb (Put): Add exception message on
	raise statements. Remove unneeded blocks and object declarations.

2012-01-06  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Minor reformatting.

2012-01-06  Ed Schonberg  <schonberg@adacore.com>

	* sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate
	that a selected component within a generic unit has been resolved
	as a prefixed call with local references.
	* sem_ch3.adb (Is_Visible_Component): In an instance body a selected
	component is always visible.
	* sem_ch4.adb (Analyze_Selected_Component): If the node is a
	prefixed call in an instance, do not look for visible components
	of the type.
	* sem_ch12.adb (Reset_Entity): If a selected component has resolved
	to a prefixed call, mark the node accordingly when prefix and
	selector are local references.

From-SVN: r182954
2012-01-06 15:48:05 +01:00
Arnaud Charlet
86d71fcabf c-decl.c (ext_block): Moved up.
* c-decl.c (ext_block): Moved up.
	(collect_all_refs, for_each_global_decl): Take ext_block into account.

From-SVN: r182953
2012-01-06 15:11:33 +01:00
Tristan Gingold
1ab3568bd5 t-ia64 (LIB1ASMFUNCS): Move backward compatibility thunks...
2012-01-06  Tristan Gingold  <gingold@adacore.com>

	* config/ia64/t-ia64 (LIB1ASMFUNCS): Move backward
	compatibility thunks...
	(CUSTOM_CRTSTUFF, crtbegin.o, crtend.o)
	(crtbeginS.o, crtendS.o): ... and these to ...
	* config/ia64/t-ia64-elf: ... this new file.
	* config.host (ia64*-*-elf*, ia64*-*-freebsd*, ia64*-*-linux*)
	(ia64*-*-hpux*): Add ia64/t-ia64-elf in tmake_file.

From-SVN: r182952
2012-01-06 13:43:03 +00:00
Tobias Burnus
5d81ddd07f 2012-01-06 Tobias Burnus <burnus@net-b.de>
* trans-openmp.c (gfc_omp_clause_dtor,
        * gfc_trans_omp_array_reduction):
        Update call to gfc_trans_dealloc_allocated.
        * trans.c (gfc_allocate_using_malloc): Fix spacing.
        (gfc_allocate_allocatable): For gfc_allocate_using_lib, jump to
        label_finish when an error occurs.
        (gfc_deallocate_with_status): Call caf_deregister for -fcoarray=lib.
        * trans.h (gfc_allocate_allocatable,
        * gfc_deallocate_with_status):
        Update prototype.
        (gfor_fndecl_caf_deregister): New tree symbol.
        * trans-expr.c (gfc_conv_procedure_call): Update
        gfc_deallocate_with_status and gfc_trans_dealloc_allocated calls.
        * trans-array.c (gfc_array_allocate,
        * gfc_trans_dealloc_allocated,
        structure_alloc_comps, gfc_trans_deferred_array): Ditto.
        (gfc_array_deallocate): Handle coarrays with -fcoarray=lib.
        * trans-array.h (gfc_array_deallocate, gfc_array_allocate,
        gfc_trans_dealloc_allocated): Update prototypes.
        * trans-stmt.c (gfc_trans_sync): Fix indentation.
        (gfc_trans_allocate): Fix errmsg padding and label handling.
        (gfc_trans_deallocate): Ditto and handle -fcoarray=lib.
        * expr.c (gfc_is_coarray): Fix algorithm for BT_CLASS.
        * libgfortran.h (GFC_STAT_STOPPED_IMAGE): Use large value
        to avoid other stats accidentally matching this one.
        * trans-decl.c (gfor_fndecl_caf_deregister): New global var.
        (gfc_build_builtin_function_decls): Fix prototype decl of caf_register
        and add decl for caf_deregister.
        (gfc_trans_deferred_vars): Handle CAF vars with -fcoarrays=lib.
        * trans-intrinsic.c (conv_intrinsic_move_alloc): Update call to
        gfc_deallocate_with_status.

2012-01-06  Tobias Burnus <burnus@net-b.de>

        * caf/single.c (_gfortran_caf_register,
        * _gfortran_caf_deregister):
        Fix token handling.
        * caf/mpi.c  (_gfortran_caf_register, _gfortran_caf_deregister):
        * Ditto.
        * caf/libcaf.h (STAT_STOPPED_IMAGE): Sync with libgfortran.h.
        (_gfortran_caf_register, _gfortran_caf_deregister): Update prototype.

2012-01-06  Tobias Burnus <burnus@net-b.de>

        * gfortran.dg/deallocate_stat_2.f90: New.
        * coarray/allocate_errgmsg.f90: New.
        * gfortran.dg/coarray_lib_alloc_1.f90: New.
        * gfortran.dg/coarray_lib_alloc_2.f90: New.
        * coarray/subobject_1.f90: Fix for num_images > 1.
        * gfortran.dg/deallocate_stat.f90: Update due to changed
        stat= handling.

From-SVN: r182951
2012-01-06 14:38:49 +01:00
Andrew Stubbs
af0aec67b8 headmerge-2.c: Adjust scan pattern.
2012-01-06  Andrew Stubbs  <ams@codesourcery.com>

	* gcc.target/arm/headmerge-2.c: Adjust scan pattern.

From-SVN: r182950
2012-01-06 11:35:32 +00:00
Eric Botcazou
b71b28290b * ada/acats/overflow.lst: Add cb20004.
From-SVN: r182947
2012-01-06 10:50:00 +00:00
Jonathan Wakely
6e576613f7 re PR libstdc++/51504 (Data race hunting instructions in manual do not work)
PR libstdc++/51504
	* doc/xml/manual/debug.xml: Suggest using symbol interposition
	to override symbols using annotation macros.

From-SVN: r182943
2012-01-06 01:26:06 +00:00
GCC Administrator
ea0463d9d4 Daily bump.
From-SVN: r182942
2012-01-06 00:19:07 +00:00
Han Shen
17719d0974 Translate built-in include paths for sysroot.
gcc/
	  * Makefile.in (gcc_gxx_include_dir_add_sysroot): New.
	  (PREPROCESSOR_DEFINES): Define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT.

	  * cppdefault.c (cpp_include_defaults): Replace hard coded "0" with
	  GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT for "add_sysroot" field.

	  * configure.ac (AC_SUBST): Add gcc_gxx_include_dir_add_sysroot to
	  control whether sysroot should be prepended to gxx include dir.

	  * configure: Regenerate.

From-SVN: r182938
2012-01-06 00:14:32 +00:00
Torvald Riegel
b0c99997cc Mark transaction begin as returns-twice.
PR rtl-optimization/51771
	gcc/
	* builtin-attrs.def (ATTR_RETURNS_TWICE, ATTR_TM_NOTHROW_RT_LIST):
	New.
	* gtm-builtins.def (BUILT_IN_TM_START): Add returns-twice attrib.

From-SVN: r182937
2012-01-05 23:48:30 +00:00
Dodji Seketeli
45a29025db PR c++/51541 - ICE with invalid identifier in alias-declaration
gcc/cp/

	PR c++/51541
	* parser.c (cp_parser_alias_declaration): Get out early upon
	errors in the identifier or the attributes.

gcc/testsuite/

	PR c++/51541
	* g++.dg/cpp0x/alias-decl-18.C: New test.

From-SVN: r182935
2012-01-06 00:00:14 +01:00
Eric Botcazou
c3e686a350 re PR tree-optimization/51315 (unaligned memory accesses generated with -ftree-sra)
PR tree-optimization/51315
	* tree-sra.c (tree_non_aligned_mem_for_access_p): New predicate.
	(build_accesses_from_assign): Use it instead of tree_non_aligned_mem_p.

From-SVN: r182932
2012-01-05 22:21:29 +00:00
Uros Bizjak
2d130b315d re PR target/51681 (ICE in gcc.dg/torture/vshuf-v2si.c on ia64)
PR target/51681
	* config/ia64/ia64.c (expand_vec_perm_shrp): Use correct operands
	for shrp pattern.  Correctly handle and fixup shift variable.
	Return false when shift > nelt for BYTES_BIG_ENDIAN target.

From-SVN: r182931
2012-01-05 22:50:20 +01:00
Richard Henderson
a32e5e9357 libitm: PowerPC support.
* configure.tgt: Support powerpc-linux and powerpc-darwin.
	* config/linux/powerpc/futex_bits.h: New file.
	* config/powerpc/cacheline.h: New file.
	* config/powerpc/sjlj.S: New file.
	* config/powerpc/target.h: New file.
	* config/generic/asmcfi.h (cfi_offset): New.
	(cfi_restore, cfi_undefined): New.

From-SVN: r182930
2012-01-05 13:36:35 -08:00
Paul Thomas
003e0ad601 PR fortran/PR48946
2012-01-05  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/PR48946
	* resolve.c (resolve_typebound_static): If the typebound
	procedure is 'deferred' try to find the correct specific
	procedure in the derived type operator space itself.

2012-01-05  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/PR48946
	* gfortran.dg/typebound_operator_9.f03: This is now a copy of
	the old typebound_operator_8.f03.
	* gfortran.dg/typebound_operator_8.f03: New version of
	typebound_operator_7.f03 with 'u' a derived type instead of a
	class object.

From-SVN: r182929
2012-01-05 21:15:52 +00:00
François Dumont
f7d6ad0a5c hashtable_policy.h (_Hashtable_base<>::_M_eq()): protected rather than private, use it...
2012-01-05  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
	protected rather than private, use it...
	* include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
	* testsuite/23_containers/unordered_set/observers.cc: New.
	* testsuite/23_containers/unordered_multiset/observers.cc: New.
	* testsuite/23_containers/unordered_map/observers.cc: New.
	* testsuite/23_containers/unordered_multimap/observers.cc: New.

From-SVN: r182928
2012-01-05 20:59:17 +00:00
François Dumont
866622072a Restore 2012 entries that hasn't been saved.
From-SVN: r182926
2012-01-05 20:50:51 +00:00
François Dumont
632c71230e Roll ChangeLog file, move 2012 entries in the new ChangeLog.
From-SVN: r182925
2012-01-05 20:49:15 +00:00
Jakub Jelinek
f8f75b16c2 re PR debug/51762 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2231)
PR debug/51762
	* calls.c (emit_call_1): For noreturn calls force a REG_ARGS_SIZE
	note when !ACCUMULATE_OUTGOING_ARGS.

	* gcc.dg/pr51762.c: New test.

From-SVN: r182924
2012-01-05 21:47:16 +01:00
Eric Botcazou
629c2cca17 tree-vrp.c (extract_range_from_binary_expr_1): Remove duplicated condition.
* tree-vrp.c (extract_range_from_binary_expr_1): Remove duplicated
	condition.
	(extract_range_from_unary_expr_1): Avoid useless computations.

From-SVN: r182923
2012-01-05 20:43:43 +00:00
Jakub Jelinek
a3e6a37b65 re PR rtl-optimization/51767 (ICE with degenerated asm goto)
PR rtl-optimization/51767
	* cfgrtl.c (force_nonfallthru_and_redirect): Force addition
	of jump_block and add an extra edge for degenerated asm gotos.

	* gcc.c-torture/compile/pr51767.c: New test.

From-SVN: r182922
2012-01-05 21:20:57 +01:00
Jakub Jelinek
36363ebb88 re PR middle-end/51768 (ICE with invalid asm goto)
PR middle-end/51768
	* stmt.c (check_unique_operand_names): Don't ICE during error
	reporting if i is from labels chain.

	* c-c++-common/pr51768.c: New test.

From-SVN: r182921
2012-01-05 21:18:15 +01:00
Jakub Jelinek
1e69d24e61 re PR middle-end/44777 (ICE: SIGSEGV with -fprofile-use in gcc.c-torture/execute/comp-goto-2.c)
PR middle-end/44777
	* profile.c (branch_prob): Split bbs that have exit edge
	and need a fake entry edge too.

	* gcc.dg/tree-prof/pr44777.c: New test.

From-SVN: r182920
2012-01-05 20:54:16 +01:00
Jan Hubicka
56494762be re PR rtl-optimization/49710 (segfault)
PR middle-end/49710
	* cfgloopmanip.c (remove_path): Walk loop hiearchy upwards when
	unlooping loops.

From-SVN: r182919
2012-01-05 19:25:14 +00:00
Richard Guenther
10d12a3eeb re PR lto/50490 (ICE when compiling libglib2.0 with LTO, tree code 'optimization_node' is not supported in LTO streams)
2012-01-05  Richard Guenther  <rguenther@suse.de>

	PR lto/50490
	* tree-streamer-out.c (write_ts_optimization): New function.
	(streamer_write_tree_body): Call it.
	* tree-streamer-in.c (lto_input_ts_optimization): New function.
	(streamer_read_tree_body): Call it.
	* lto-streamer-out.c (lto_is_streamable): Handle OPTIMIZATION_NODE.

From-SVN: r182917
2012-01-05 15:43:54 +00:00
Richard Guenther
c4207e25d3 pr49309.C: Skip for -flto.
2012-01-05  Richard Guenther  <rguenther@suse.de>

	* g++.dg/torture/pr49309.C: Skip for -flto.

From-SVN: r182915
2012-01-05 15:28:30 +00:00
Jakub Jelinek
32be32afef re PR middle-end/51761 (ICE in verify_gimple_stmt, at tree-cfg.c:4241)
PR middle-end/51761
	* gimple.h (struct gimplify_ctx): Add in_cleanup_point_expr
	field.
	* gimplify.c (gimplify_cleanup_point_expr): Save and set
	in_cleanup_point_expr before gimplify_stmt call and restore it
	afterwards.
	(gimplify_target_expr): Don't add {CLOBBER} cleanup if
	in_cleanup_point_expr is false.

	* gcc.c-torture/compile/pr51761.c: New test.

From-SVN: r182914
2012-01-05 16:10:26 +01:00
Richard Guenther
5720c0dc9c re PR middle-end/51764 (mudflap does not work with LTO)
2012-01-05  Richard Guenther  <rguenther@suse.de>

	PR middle-end/51764
	* common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move
	to c.opt.
	* toplev.c (process_options): Reject combining mudflap and LTO.
	* tree-nomudflap.c (nogo): Use sorry instead of internal_error.

	c-family/
	* c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
	from common.opt.

From-SVN: r182913
2012-01-05 15:08:42 +00:00
Aldy Hernandez
be223aafde Add Patrick Marlier to ChangeLog entry.
From-SVN: r182912
2012-01-05 14:16:39 +00:00
Aldy Hernandez
1f53a8e6ab re PR libitm/51171 (XFAIL: libitm.c/reentrant.c execution test)
PR other/51171
        * testsuite/libitm.c/reentrant.c: Remove xfail.
        (thread): Pass x to pure().

From-SVN: r182911
2012-01-05 14:14:29 +00:00
Richard Guenther
6ad024b4c0 re PR tree-optimization/51760 (ICE in set_lattice_value, at tree-ssa-ccp.c:456)
2012-01-05  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/51760
	* tree-ssa-ccp.c (likely_value): Drop UNDEFINED to CONSTANT,
	not VARYING.
	(bit_value_unop): Handle UNDEFINED operands.
	(bit_value_binop): Likewise.

	* gcc.dg/torture/pr51760.c: New testcase.

From-SVN: r182909
2012-01-05 13:41:34 +00:00