1. 07 Nov, 2011 19 commits
    • vms.h (TARGET_OBJECT_SUFFIX, [...]): Move to config/vms/vms.h · ba89fcb6
      2011-11-07  Tristan Gingold  <gingold@adacore.com>
      
      	* config/alpha/vms.h (TARGET_OBJECT_SUFFIX,
      	TARGET_EXECUTABLE_SUFFIX, TARGET_OS_CPP_BUILTINS,
      	TARGET_ABI_OPEN_VMS, LONG_TYPE_SIZE, ADA_LONG_TYPE_SIZE,
      	POINTER_SIZE, POINTERS_EXTEND_UNSIGNED): Move to config/vms/vms.h
      	(SUBTARGET_OS_CPP_BUILTINS): Define.
      	(TARGET_DEFAULT): Tune according to POINTER_SIZE.
      	(MASK_RETURN_ADDR): Define in 64 bit mode.
      	* config/ia64/vms.h: Likewise.
      	* config/vms/vms.h: New file.
      	* config/vms/vms64.h: New file.
      	* config/alpha/vms64.h: Removed.
      	* config/ia64/vms64.h: Removed.
      	* config.gcc (alpha64-dec-*vms*, alpha*-dec-*vms*, ia64-hp-*vms*):
      	Adjust for above change.
      
      From-SVN: r181078
      Tristan Gingold committed
    • re PR target/50962 (Additional opportunity for AGU stall avoidance optimization for Atom processor) · f3b61b78
      gcc/
      	PR target/50962
      	* config/i386/i386-protos.h (ix86_use_lea_for_mov): New.
      	* config/i386/i386.c (ix86_use_lea_for_mov): Likewise.
      	* config/i386/i386.md (movsi_internal): Emit lea if profitable.
      	(movdi_internal_rex64): Likewise.
      
      From-SVN: r181077
      Enkovich Ilya committed
    • acinclude.m4: Check for <stdalign.h> · e0f0ee74
      	* acinclude.m4: Check for <stdalign.h>
      	* configure: Regenerate.
      	* config.h.in: Likewise.
      	* include/Makefile.am: Add <cstdalign>.
      	* include/Makefile.in: Regenerate.
      	* include/c_global/cstdalign: New.
      	* testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
      	* doc/xml/manual/backwards_compatibility.xml: Update.
      	* doc/xml/manual/status_cxx2011.xml: Update.
      
      From-SVN: r181076
      Jonathan Wakely committed
    • re PR rtl-optimization/47698 (CMOV accessing volatile memory with read side effect) · b3242a4c
      gcc/
      	PR rtl-optimization/47698
      	* ifconv.c (noce_operand_ok): prevent CMOV generation
      	for volatile mem.
      
      gcc/testsuite/
      	PR rtl-optimization/47698
      	* gcc.target/i386/47698.c: New test.
      
      From-SVN: r181075
      Sergey Ostanevich committed
    • alpha-common.c (alpha_option_init_struct): New function. · f7a57cdc
      2011-11-07  Tristan Gingold  <gingold@adacore.com>
      
      	* common/config/alpha/alpha-common.c (alpha_option_init_struct):
      	New function.
      	(TARGET_OPTION_INIT_STRUCT): Define.
      	* config/alpha/alpha.c (TARGET_MIN_ANCHOR_OFFSET)
      	(TARGET_MAX_ANCHOR_OFFSET)
      	(TARGET_USE_BLOCKS_FOR_CONSTANT_P): Redefine.
      
      From-SVN: r181074
      Tristan Gingold committed
    • re PR libstdc++/50982 (AIX libstdc++ GTHREADS incompatibility) · ff02a38b
      	PR libstdc++/50982
      	* include/std/mutex (__once_proxy): Use void parameter list to
      	work on implicit extern "C" systems.
      
      From-SVN: r181072
      Jonathan Wakely committed
    • make __stl_prime_list in comdat · b9b8c6ae
      From-SVN: r181071
      Xinliang David Li committed
    • Fix r180999, update ChangeLog · e97764b8
      2011-11-06  Quentin Neill  <quentin.neill@amd.com>
      
      	Fix r180999, update ChangeLog
      	* config.gcc: Add f16cintrin.h.
      	* f16cintrin.h: Add missing endif.
      
      From-SVN: r181070
      Quentin Neill committed
    • re PR c++/35688 (template visibility not overridden by template arguments) · 8e7860a1
      	PR c++/35688
      gcc/c-common/
      	* c-common.c (decl_has_visibility_attr): Split out from...
      	(c_determine_visibility): ...here.
      	* c-common.h: Declare it.
      gcc/cp/
      	* decl2.c (constrain_visibility): Check decl_has_visibility_attr
      	rather than DECL_VISIBILITY_SPECIFIED.
      
      From-SVN: r181069
      Jason Merrill committed
    • Fix r180999. · c0baa6dc
      2011-11-05  Quentin Neill  <quentin.neill@amd.com>
      
      	Fix r180999.
      	* config.gcc: Add f16cintrin.h.
      
      From-SVN: r181068
      Quentin Neill committed
    • config.host (arm*-*-rtemseabi*): New target. · 76644b68
      2011-11-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>
      
      	* config.host (arm*-*-rtemseabi*): New target.
      
      From-SVN: r181065
      Sebastian Huber committed
    • config.gcc (arm*-*-rtemseabi*): New target. · e36c5271
      2011-11-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>
      
      	* config.gcc (arm*-*-rtemseabi*): New target.
      	* config/arm/rtems-eabi.h: New.
      	* config/arm/t-rtems-eabi: New.
      
      From-SVN: r181064
      Sebastian Huber committed
    • Get rid of sparc's UNSPEC_SHORT_LOAD. · 6e25d659
      	* config/sparc/sparc.md (UNSPEC_SHORT_LOAD): Delete.
      	(zero_extend_v8qi_vis, zero_extend_v4hi_vis,
      	*zero_extend_v8qi_<P:mode>_insn,
      	*zero_extend_v4hi_<P:mode>_insn): Express using vec_merge
      	and vec_duplicate instead of using an UNSPEC.
      
      From-SVN: r181063
      David S. Miller committed
    • wmul-1.c: Adjust optimization level. · 2805cc27
      2011-11-07  Terry Guo  <terry.guo@arm.com>
      
              * gcc.target/arm/wmul-1.c: Adjust optimization level.
              * gcc.target/arm/wmul-2.c: Ditto.
              * gcc.target/arm/wmul-3.c: Ditto.
              * gcc.target/arm/wmul-4.c: Ditto.
      
      From-SVN: r181062
      Terry Guo committed
    • re PR target/30282 (Optimization flag -O1 -fschedule-insns2 cause red zone to be… · d85087f6
      re PR target/30282 (Optimization flag -O1 -fschedule-insns2 cause red zone to be used when there is none)
      
      	PR target/30282
      	* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Always emit
      	blockage for ABI_V4.
      
      From-SVN: r181056
      Alan Modra committed
    • cygwin.h (LIBGCJ_SONAME): Updated to match recent libgcj version bump. · c5219bb0
      	* config/i386/cygwin.h (LIBGCJ_SONAME): Updated to match recent
      	libgcj version bump.
      	* config/i386/mingw32.h (LIBGCJ_SONAME): Likewise.
      
      From-SVN: r181055
      Dave Korn committed
    • gcse.c: Adjust outdated comments throughout. · 43c8a043
      	* gcse.c: Adjust outdated comments throughout.
      	(struct mem_conflict_info): New structure.
      	(mems_conflict_for_gcse_p): Use it to communicate with caller.
      	(load_killed_in_block_p): Pass it to note_stores.
      	(hash_expr): Remove superfluous line break.
      	(hash_scan_set): Rename PAT parameter into SET.
      	(hash_scan_insn): Reorder cases.
      	(canon_list_insert): Fix long line.
      	(edge_list): Delete.
      	(prune_expressions): Rename E local variable into EXPR.
      	(compute_pre_data): Return struct edge_list * object.
      	(pre_expr_reaches_here_p_work): Fix formatting.
      	(process_insert_insn): Move around comment.
      	(pre_edge_insert): Fix long line.
      	(pre_insert_copies): Likewise.
      	(gcse_emit_move_after): Swap SRC and DEST parameters.
      	(pre_delete): Adjust call to gcse_emit_move_after.
      	(pre_gcse): Take struct edge_list * parameter.  Fix long line.
      	(one_pre_gcse_pass): Use flag_gcse_lm condition for all routines.
      	Use a local list of edges.
      	(hoist_code): Fix long line.  Adjust call to gcse_emit_move_after.
      	(pre_ldst_expr_hash): Fix long line.
      	(free_ldst_mems): Rename into...
      	(free_ld_motion_mems): ...this.
      	(first_ls_expr): Delete.
      	(next_ls_expr): Likewise.
      	(print_ldst_list): Do not use above two functions.
      	(simple_mem): Adjust interface.
      	(compute_ld_motion_mems): Fix formatting.
      	(update_ld_motion_stores): Reuse local variable.
      
      From-SVN: r181054
      Eric Botcazou committed
    • Daily bump. · c8772697
      From-SVN: r181053
      GCC Administrator committed
    • basic_string.h (basic_string::at): Move adjacent to other overload. · f1e09f0d
      	* include/bits/basic_string.h (basic_string::at): Move adjacent to other
      	overload.
      	(basic_string::pop_back): Define.
      	* include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
      	* include/ext/vstring.h (__versa_string::pop_back): Likewise.
      	* config/abi/pre/gnu.ver: Add new symbols.
      	* testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
      	* testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
      	* testsuite/21_strings/basic_string/range_access.cc: Split to ...
      	* testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
      	* testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
      	* testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
      	* testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
      
      From-SVN: r181049
      Jonathan Wakely committed
  2. 06 Nov, 2011 19 commits
    • c-decl.c (shadow_tag_warned, [...]): Handle _Alignas specifiers. · d19fa6b5
      	* c-decl.c (shadow_tag_warned, grokdeclarator): Handle _Alignas
      	specifiers.
      	(build_null_declspecs): Initialize align_log and alignas_p fields.
      	(declspecs_add_alignas): New.
      	* c-parser.c (c_token_starts_declspecs): Handle RID_ALIGNAS.
      	(c_parser_declspecs): Handle _Alignas specifiers.
      	(c_parser_alignas_specifier): New.
      	(c_parser_alignof_expression): Diagnose alignof use for non-C1X.
      	Diagnose _Alignof (expression).
      	* c-tree.h (struct c_declspecs): Add align_log and alignas_p
      	fields.
      	(declspecs_add_alignas): Declare.
      	* ginclude/stddef.h (max_align_t): Define for C1X and C++11.
      	* ginclude/stdalign.h: New.
      	* Makefile.in (USER_H): Add stdalign.h.
      
      c-family:
      	* c-common.c (c_common_reswords): Add _Alignas and _Alignof.
      	(c_sizeof_or_alignof_type): Diagnose alignof applied to a function
      	type.
      	(check_user_alignment): New.  Split out of
      	handle_aligned_attribute.  Disallow integer constants with
      	noninteger types.  Conditionally allow zero.
      	(handle_aligned_attribute): Use check_user_alignment.
      	* c-common.h (RID_ALIGNAS, check_user_alignment): New.
      
      testsuite:
      	* g++.dg/cpp0x/alignof3.C, gcc.dg/c1x-align-1.c,
      	gcc.dg/c1x-align-2.c, gcc.dg/c1x-align-3.c, gcc.dg/c1x-align-4.c,
      	gcc.dg/c90-align-1.c, gcc.dg/c99-align-1.c: New tests.
      	* gcc.dg/gnu89-const-expr-1.c, gcc.dg/gnu90-const-expr-1.c,
      	gcc.dg/gnu99-const-expr-1.c, gcc.dg/gnu99-static-1.c: Update
      	expected diagnostics.
      
      From-SVN: r181048
      Joseph Myers committed
    • backwards_compatibility.xml: Fix autoconf tests for C++11 compiler features and library headers. · 55d2e499
      	* doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
      	C++11 compiler features and library headers. Add stable id
      	attributes. Use <filename> element for headers and surround in angle
      	brackets. Use <classname> for classes.
      	* doc/html/*: Regenerate.
      
      From-SVN: r181047
      Jonathan Wakely committed
    • regset.h (fixed_reg_set_regset): Declare. · 9e582b1d
              * regset.h (fixed_reg_set_regset): Declare.
              * dse.c: Include regset.h .
              (struct insn_info): Add member fixed_regs_live.
              (note_add_store_info): New typedef.
              (note_add_store): New function.
              (emit_inc_dec_insn_before): Expect arg to be of type insn_info_t .
              Use gen_add3_insn / gen_move_insn.
              Check new insn for unwanted clobbers before emitting it.
              (check_for_inc_dec): Rename to...
              (check_for_inc_dec_1:) ... this.  Return bool.  Take insn_info
              parameter.  Changed all callers in file.
              (check_for_inc_dec, copy_fixed_regs): New functions.
              (scan_insn): Set fixed_regs_live field of insn_info.
              * rtl.h (check_for_inc_dec): Update prototype.
              * postreload.c (reload_cse_simplify): Take new signature of
              check_ind_dec into account.
              * reginfo.c (fixed_reg_set_regset): New variable.
              (init_reg_sets_1): Initialize it.
      
      Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
      
      From-SVN: r181046
      Joern Rennecke committed
    • status_cxx2011.xml: Document <cuchar> and <cstdalign> as missing. · 57899d2f
      	* doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
      	<cstdalign> as missing.
      
      From-SVN: r181045
      Jonathan Wakely committed
    • gfortran.h (gfc_extend_expr): Modified prototype. · eaee02a5
      2011-11-06  Janus Weil  <janus@gcc.gnu.org>
      
      	* gfortran.h (gfc_extend_expr): Modified prototype.
      	* interface.c (gfc_extend_expr): Return 'match' instead of 'gfc_try'.
      	Remove argument 'real_error'.
      	* resolve.c (resolve_operator): Modified call to 'gfc_extend_expr'.
      
      From-SVN: r181044
      Janus Weil committed
    • re PR c++/47695 ([C++0X] Calling a deleted function fails twice) · 9965f21f
      2011-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/47695
      	* decl2.c (mark_used): Early return false after error or sorry.
      	* cp-tree.h (mark_used): Adjust declaration.
      	* semantics.c (finish_id_expression): Check mark_used return value.
      
      From-SVN: r181042
      Paolo Carlini committed
    • faq.xml: Replace references to C++0x with C++11. · f25481f4
      	* doc/xml/faq.xml: Replace references to C++0x with C++11.
      	* doc/xml/manual/intro.xml: Likewise.
      	* doc/xml/manual/backwards_compatibility.xml: Likewise.
      	* doc/xml/manual/shared_ptr.xml: Likewise.
      	* doc/xml/manual/configure.xml: Likewise.
      	* doc/xml/manual/evolution.xml: Likewise.
      	* doc/xml/manual/using.xml: Likewise.
      	* doc/xml/manual/strings.xml: Likewise.
      	* doc/xml/manual/debug_mode.xml: Likewise.
      	* doc/xml/manual/policy_data_structures.xml: Likewise.
      	* doc/xml/manual/extensions.xml: Likewise.
      	* doc/xml/manual/diagnostics.xml: Likewise.
      	* doc/xml/manual/test.xml: Likewise.
      	* doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
      	* doc/xml/manual/status_cxx2011.xml: Here.
      	* doc/Makefile.am: Rename status_cxx200x.xml.
      	* doc/Makefile.in: Regenerate.
      	* doc/html/*: Regenerate.
      
      From-SVN: r181041
      Jonathan Wakely committed
    • tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove any user labels. · 4a7ab00c
      	* tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove
      	any user labels.
      
      From-SVN: r181040
      Jakub Jelinek committed
    • re PR other/50991 (crtstuff.c:65:23: fatal error: libgcc_tm.h: No such file or directory) · 5e490f2a
      	PR other/50991
      	* Makefile.in: Make EXTRA_PARTS depend on libgcc_tm.h instead of
      	extra-parts.
      
      From-SVN: r181039
      John David Anglin committed
    • pa.c (pa_hpux_init_libfuncs): Rename to pa_init_libfuncs. · 50bbeefb
      	* config/pa/pa.c (pa_hpux_init_libfuncs): Rename to pa_init_libfuncs.
      	Remove dependence of declaration and target define on definition of
      	HPUX_LONG_DOUBLE_LIBRARY.  Update implementation.
      
      From-SVN: r181038
      John David Anglin committed
    • 41975.cc: Add tests to check performance with or without cache of hash code and with... · ba3aa0e6
      2011-11-06  François Dumont <fdumont@gcc.gnu.org>
      
      	* testsuite/performance/23_containers/insert_erase/41975.cc: Add
      	tests to check performance with or without cache of hash code and with
      	string type that has a costlier hash functor than int type.
      
      From-SVN: r181037
      François Dumont committed
    • Check in patch/merge from cxx-mem-model Branch · 86951993
      From-SVN: r181031
      Andrew Macleod committed
    • 2011-11-6 Richard Guenther <rguenther@suse.de> · a7a296ab
      	* ipa-prop.c (ipa_modify_call_arguments): Re-compute
      	inlinable flag.
      
      From-SVN: r181027
      Richard Guenther committed
    • tree-vectorizer.h (vectorizable_condition): Add argument. · f7e531cf
      
              * tree-vectorizer.h (vectorizable_condition): Add argument.
              * tree-vect-loop.c (vectorizable_reduction): Fail for condition
              in SLP.  Update calls to vectorizable_condition.
              * tree-vect-stmts.c (vect_is_simple_cond): Add basic block info
              to the arguments.  Pass it to vect_is_simple_use_1.
              (vectorizable_condition): Add slp_node to the arguments.
              Support vectorization of basic blocks.  Fail for reduction in
              SLP.  Update calls to vect_is_simple_cond and
              vect_is_simple_use.  Support SLP: call vect_get_slp_defs to get
              vector operands.
              (vect_analyze_stmt): Update calls to vectorizable_condition.
              (vect_transform_stmt): Likewise.
              * tree-vect-slp.c (vect_create_new_slp_node): Handle COND_EXPR.
              (vect_get_and_check_slp_defs): Handle COND_EXPR.  Allow pattern
              def stmts.
              (vect_build_slp_tree): Handle COND_EXPR.
              (vect_analyze_slp_instance): Push pattern statements to root
              node.
              (vect_get_constant_vectors): Fix comments.  Handle COND_EXPR.
      
      From-SVN: r181026
      Ira Rosen committed
    • More improvements to sparc VIS vec_init code generation. · 79cad86d
      gcc/
      
      	* config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec.
      	(zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders.
      	(*zero_extend_v8qi_<P:mode>_insn,
      	*zero_extend_v4hi_<P:mode>_insn): New insns.
      	* config/sparc/sparc.c (vector_init_move_words,
      	vector_init_prepare_elts, sparc_expand_vector_init_vis2,
      	sparc_expand_vector_init_vis1): New functions.
      	(vector_init_bshuffle): Rewrite to handle more cases and make use
      	of locs[] array prepared by vector_init_prepare_elts.
      	(vector_init_fpmerge, vector_init_faligndata): Delete.
      	(sparc_expand_vector_init): Rewrite using new infrastructure.
      
      gcc/testsuite/
      
      	* lib/test-supports.exp
      	(check_effective_target_ultrasparc_vis2_hw): New proc.
      	(check_effective_target_ultrasparc_vis3_hw): New proc.
      	* gcc.target/sparc/vec-init-1.inc: New vector init common code.
      	* gcc.target/sparc/vec-init-2.inc: Likewise.
      	* gcc.target/sparc/vec-init-3.inc: Likewise.
      	* gcc.target/sparc/vec-init-1-vis1.c: New test.
      	* gcc.target/sparc/vec-init-1-vis2.c: New test.
      	* gcc.target/sparc/vec-init-1-vis3.c: New test.
      	* gcc.target/sparc/vec-init-2-vis1.c: New test.
      	* gcc.target/sparc/vec-init-2-vis2.c: New test.
      	* gcc.target/sparc/vec-init-2-vis3.c: New test.
      	* gcc.target/sparc/vec-init-3-vis1.c: New test.
      	* gcc.target/sparc/vec-init-3-vis2.c: New test.
      	* gcc.target/sparc/vec-init-3-vis3.c: New test.
      
      From-SVN: r181024
      David S. Miller committed
    • * doc/xml/manual/test.xml: Fix dg-warning examples. · e940f96f
      From-SVN: r181023
      Jonathan Wakely committed
    • re PR libstdc++/44436 ([C++0x] Implement emplace* in associative containers) · 7c092690
      	PR libstdc++/44436
      	* doc/xml/manual/status_cxx200x.xml: Document emplace members are
      	missing.
      
      From-SVN: r181022
      Jonathan Wakely committed
    • Daily bump. · 0d70aaa7
      From-SVN: r181021
      GCC Administrator committed
  3. 05 Nov, 2011 2 commits
    • * decl.c (cp_finish_decl): Mostly revert previous change. · 90dba8f4
      From-SVN: r181017
      Jason Merrill committed
    • config.gcc (epiphany-*-*): New architecture. · feeeff5c
      gcc:
              * config.gcc (epiphany-*-*): New architecture.
              (epiphany-*-elf): New configuration.
              * config/epiphany, common/config/epiphany : New directories.
              * doc/extend.texi (disinterrupt attribute): Add Epiphany.
              (interrupt attribute): Add Epiphany.
              (long_call, short_call attribute): Add Epiphany.
              * doc/invoke.texi (Options): Add Epiphany options.
              * doc/md.texi (Machine Constraints): Add Epiphany constraints.
              * doc/install.texi (Options specification):
              Add --with-stack-offset=@var{num} description.
              (host/target specific issues): Add epiphany-*-elf.
              * doc/contrib.texi (Contributors): Mention Epiphany port.
      gcc/testsuite:
              * gcc.c-torture/execute/ieee/mul-subnormal-single-1.x:
              Disable test on Epiphany.
              * gcc.c-torture/execute/20101011-1.c: Disable test on Epiphany.
              * gcc.dg/stack-usage-1.c [__epiphany__] (SIZE): Define.
              * gcc.dg/pragma-pack-3.c: Disable test on Epiphany.
              * g++.dg/parse/pragma3.C: Likewise.
              * stackalign/builtin-apply-2.c (STACK_ARGUMENTS_SIZE): Define.
              (bar): Use it.
              * gcc.dg/weak/typeof-2.c [epiphany-*-*]: Add option -mshort-calls.
              * gcc.dg/tls/thr-cse-1.c: Likewise.
              * g++.dg/opt/devirt2.C: Likewise.
              * gcc.dg/20020312-2.c [epiphany-*-*] (PIC_REG): Define.
              * gcc.dg/builtin-apply2.c [__epiphany__]: (STACK_ARGUMENTS_SIZE): 20.
              * gcc.target/epiphany: New directory.
      libgcc:
              * config.host (epiphany-*-elf*): New configuration.
              * config/epiphany: New Directory.
      contrib:
              * contrib-list.mk: Add Epiphany configurations.
      
      From-SVN: r181016
      Joern Rennecke committed