gcc.git
10 years agopt.c (tsubst_function_type): Initialize arg_types.
Paolo Carlini [Tue, 3 Jun 2014 02:31:01 +0000 (02:31 +0000)]
pt.c (tsubst_function_type): Initialize arg_types.

2014-06-02  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (tsubst_function_type): Initialize arg_types.

From-SVN: r211158

10 years agoDaily bump.
GCC Administrator [Tue, 3 Jun 2014 00:17:07 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211157

10 years agoFix formating in my last changelog entry.
Andrew Pinski [Tue, 3 Jun 2014 00:06:41 +0000 (17:06 -0700)]
Fix formating in my last changelog entry.

From-SVN: r211153

10 years ago* gcc.target/powerpc/vsxcopy.c (dg-options): Add -mvsx.
Andreas Schwab [Mon, 2 Jun 2014 22:38:30 +0000 (22:38 +0000)]
* gcc.target/powerpc/vsxcopy.c (dg-options): Add -mvsx.

From-SVN: r211152

10 years agore PR debug/57519 (DW_TAG_imported_declaration put in wrong class (base class instead...
Siva Chandra Reddy [Mon, 2 Jun 2014 22:10:57 +0000 (22:10 +0000)]
re PR debug/57519 (DW_TAG_imported_declaration put in wrong class (base class instead of derived class))

        PR debug/57519
        * class.c (handle_using_decl): Pass the correct scope to
        cp_emit_debug_info_for_using.

From-SVN: r211151

10 years agoaarch64-linux.h (GLIBC_DYNAMIC_LINKER): /lib/ld-linux32-aarch64.so.1 is used for...
Andrew Pinski [Mon, 2 Jun 2014 21:24:41 +0000 (21:24 +0000)]
aarch64-linux.h (GLIBC_DYNAMIC_LINKER): /lib/ld-linux32-aarch64.so.1 is used for ILP32.

2014-06-02  Andrew Pinski  <apinski@cavium.com>

* config/aarch64/aarch64-linux.h (GLIBC_DYNAMIC_LINKER):
/lib/ld-linux32-aarch64.so.1 is used for ILP32.
(LINUX_TARGET_LINK_SPEC): Update linker script for ILP32.
file whose name depends on -mabi= and -mbig-endian.
* config/aarch64/t-aarch64-linux (MULTILIB_OSDIRNAMES):
Handle LP64 better and handle ilp32 too.
(MULTILIB_OPTIONS): Delete.
(MULTILIB_DIRNAMES): Delete.

From-SVN: r211148

10 years agore PR c++/59483 (A nested lambda fails to find a protected name with qualified name)
Ville Voutilainen [Mon, 2 Jun 2014 20:47:55 +0000 (23:47 +0300)]
re PR c++/59483 (A nested lambda fails to find a protected name with qualified name)

PR c++/59483
PR c++/61148
* search.c (accessible_p): Use current_nonlambda_class_type.
* semantics.c (check_accessibility_of_qualified_id): Likewise.

From-SVN: r211147

10 years agoexpr.h: Remove prototypes of functions defined in builtins.c.
Andrew MacLeod [Mon, 2 Jun 2014 20:13:44 +0000 (20:13 +0000)]
expr.h: Remove prototypes of functions defined in builtins.c.

* expr.h: Remove prototypes of functions defined in builtins.c.
* tree.h: (build_call_expr_*, build_string_literal): Add prototypes.
Remove prototypes of functions defined in builtins.c.
* builtins.h: Update prototype list to include all exported functions.
* builtins.c: (default_libc_has_function, gnu_libc_has_function,
no_c99_libc_has_function): Move to targhooks.c
(build_string_literal, build_call_expr_loc_array,
build_call_expr_loc_vec, build_call_expr_loc, build_call_expr): Move
to tree.c.
(expand_builtin_object_size, fold_builtin_object_size): Make static.
* targhooks.c (default_libc_has_function, gnu_libc_has_function,
no_c99_libc_has_function): Relocate from builtins.c.
* tree.c: Include builtins.h.
(build_call_expr_loc_array, build_call_expr_loc_vec,
build_call_expr_loc, build_call_expr, build_string_literal): Relocate
from builtins.c.
* fold-const.h (fold_fma): Move prototype to builtins.h.
* realmpfr.h (do_mpc_arg2): Move prototype to builtins.h.

* fortran/trans.c (trans_runtime_error_vararg): Call
fold_build_call_array_loc instead of fold_builtin_call_array.

* asan.c: Include builtins.h.
* cfgexpand.c: Likewise.
* convert.c: Likewise.
* emit-rtl.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* fold-const.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimplify.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* lto-streamer-out.c: Likewise.
* stmt.c: Likewise.
* tree-inline.c: Likewise.
* tree-object-size.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.

c
* c-decl.c: Include builtins.h.
* c-parser.c: Likewise.

cp
* decl.c: Include builtins.h.
* semantics.c: Likewise.

go
* go-gcc.cc: Include builtins.h.

lto
* lto-symtab.c: Include builtins.h.

config
* aarch64/aarch64.c: Include builtins.h.
* alpha/alpha.c: Likewise.
* arc/arc.c: Likewise.
* arm/arm.c: Likewise.
* avr/avr.c: Likewise.
* bfin/bfin.c: Likewise.
* c6x/c6x.c: Likewise.
* cr16/cr16.c: Likewise.
* cris/cris.c: Likewise.
* epiphany/epiphany.c: Likewise.
* fr30/fr30.c: Likewise.
* frv/frv.c: Likewise.
* h8300/h8300.c: Likewise.
* i386/i386.c: Likewise.
* i386/winnt.c: Likewise.
* ia64/ia64.c: Likewise.
* iq2000/iq2000.c: Likewise.
* lm32/lm32.c: Likewise.
* m32c/m32c.c: Likewise.
* m32r/m32r.c: Likewise.
* m68k/m68k.c: Likewise.
* mcore/mcore.c: Likewise.
* mep/mep.c: Likewise.
* microblaze/microblaze.c: Likewise.
* mips/mips.c: Likewise.
* mmix/mmix.c: Likewise.
* mn10300/mn10300.c: Likewise.
* moxie/moxie.c: Likewise.
* msp430/msp430.c: Likewise.
* nds32/nds32.c: Likewise.
* pa/pa.c: Likewise.
* pdp11/pdp11.c: Likewise.
* picochip/picochip.c: Likewise.
* rl78/rl78.c: Likewise.
* rs6000/rs6000.c: Likewise.
* rx/rx.c: Likewise.
* s390/s390.c: Likewise.
* score/score.c: Likewise.
* sh/sh.c: Likewise.
* sparc/sparc.c: Likewise.
* spu/spu.c: Likewise.
* stormy16/stormy16.c: Likewise.
* tilegx/tilegx.c: Likewise.
* tilepro/tilepro.c: Likewise.
* v850/v850.c: Likewise.
* vax/vax.c: Likewise.
* xtensa/xtensa.c: Likewise.

From-SVN: r211145

10 years agoregex_compiler.h (__detail::_BracketMatcher): Reorder members to avoid wasted space...
Jonathan Wakely [Mon, 2 Jun 2014 19:36:14 +0000 (20:36 +0100)]
regex_compiler.h (__detail::_BracketMatcher): Reorder members to avoid wasted space when not using a cache.

* include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
members to avoid wasted space when not using a cache.
(__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
* include/bits/regex_compiler.tcc
(__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
search on set.
* include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
New enumeration type to indicate match mode.
(__detail::_Executor::_State_info): New type holding members only
needed in BFS-mode. Replace unique_ptr<vector<bool>> with
unique_ptr<bool[]>.
(__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
Replace template parameter with run-time function parameter.
(__detail::_Executor::_M_main): Likewise. Dispatch to ...
(__detail::_Executor::_M_main_dispatch): New overloaded functions to
implement DFS and BFS mode.
* include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
Split implementation into ...
(__detail::_Executor::_M_main_dispatch): New overloaded functions.
(__detail::_Executor::_M_lookahead): Create nested executor on stack.
(__detail::_Executor::_M_rep_once_more): Pass match mode as function
argument instead of template argument.
(__detail::_Executor::_M_dfs): Likewise.
* include/bits/regex_scanner.tcc: Fix typos in comments.
* testsuite/performance/28_regex/range.cc: New.

From-SVN: r211143

10 years agore PR rtl-optimization/61094 (-O3 insn Internal compiler error in copyprop_hardreg_fo...
Jeff Law [Mon, 2 Jun 2014 19:12:08 +0000 (13:12 -0600)]
re PR rtl-optimization/61094 (-O3 insn Internal compiler error in copyprop_hardreg_forward_1, at regcprop.c:775)

PR rtl-optimization/61094
* ree.c (combine_reaching_defs): Do not reextend an insn if it
was marked as do_no_reextend.  If a copy is needed to eliminate
an extension, then mark it as do_not_reextend.

PR rtl-optimization/61094
* g++.dg/pr61094: New test.

From-SVN: r211142

10 years ago[AArch64] Remove ISB after FPCR write.
Marcus Shawcroft [Mon, 2 Jun 2014 16:40:06 +0000 (16:40 +0000)]
[AArch64] Remove ISB after FPCR write.

From-SVN: r211140

10 years agore PR target/61336 (ICE on alpha: in print_operand_address, at config/alpha/alpha...
Richard Henderson [Mon, 2 Jun 2014 16:27:41 +0000 (09:27 -0700)]
re PR target/61336 (ICE on alpha: in print_operand_address, at config/alpha/alpha.c:5454)

PR target/61336

        * config/alpha/alpha.c (print_operand_address): Allow symbolic
        addresses inside asms.  Use output_operand_lossage instead of
        gcc_unreachable.

From-SVN: r211139

10 years agocondition_variable (condition_variable_any::_Unlock): Do not swallow __forced_unwind.
Jonathan Wakely [Mon, 2 Jun 2014 15:45:09 +0000 (16:45 +0100)]
condition_variable (condition_variable_any::_Unlock): Do not swallow __forced_unwind.

* include/std/condition_variable (condition_variable_any::_Unlock): Do
not swallow __forced_unwind.
* include/std/future (__future_base::_Task_setter): Likewise.
(__future_base::_Async_state_impl): Turn __forced_unwind into broken
promise and rethrow.
* include/std/mutex (try_lock): Likewise.
* testsuite/30_threads/async/forced_unwind.cc: New.
* testsuite/30_threads/packaged_task/forced_unwind.cc: New.

From-SVN: r211138

10 years agotype_traits (__strictest_alignment): New helper struct.
Rüdiger Sonderfeld [Mon, 2 Jun 2014 13:55:14 +0000 (13:55 +0000)]
type_traits (__strictest_alignment): New helper struct.

2014-06-02  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
    Jonathan Wakely  <jwakely@redhat.com>

* libstdc++-v3/include/std/type_traits (__strictest_alignment): New
helper struct.
(aligned_union): New struct (C++11).
(aligned_union_t): New type alias (C++14).
* doc/xml/manual/status_cxx2011.xml: Update.
* libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r211137

10 years agoxop-rotate1-vector.c (dg-options): Add -mno-avx2.
Uros Bizjak [Mon, 2 Jun 2014 13:40:49 +0000 (15:40 +0200)]
xop-rotate1-vector.c (dg-options): Add -mno-avx2.

* gcc.target/i386/xop-rotate1-vector.c (dg-options): Add -mno-avx2.
* gcc.target/i386/xop-rotate2-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-rotate3-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-imul32widen-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-imul64-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift1-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift2-vector.c (dg-options): Ditto.
* gcc.target/i386/xop-shift3-vector.c (dg-options): Ditto.

From-SVN: r211136

10 years agore PR target/61239 (ICE in decompose, at rtl.h when compiling vshuf-v16hi.c using...
Uros Bizjak [Mon, 2 Jun 2014 13:22:34 +0000 (15:22 +0200)]
re PR target/61239 (ICE in decompose, at rtl.h when compiling vshuf-v16hi.c using -mavx2)

PR target/61239
* config/i386/i386.c (ix86_expand_vec_perm) [case V32QImode]: Use
GEN_INT (-128) instead of GEN_INT (128) to set MSB of QImode constant.

From-SVN: r211134

10 years agoFix ICE in aarch64_float_const_representable_p
Tom de Vries [Mon, 2 Jun 2014 13:13:43 +0000 (13:13 +0000)]
Fix ICE in aarch64_float_const_representable_p

2014-06-02  Tom de Vries  <tom@codesourcery.com>

* config/aarch64/aarch64.c (aarch64_float_const_representable_p): Handle
case that x has VOIDmode.

From-SVN: r211132

10 years agoFix a decl to match the calls to it.
Bernd Schmidt [Mon, 2 Jun 2014 12:06:20 +0000 (12:06 +0000)]
Fix a decl to match the calls to it.

* trans-decl.c (gfc_build_builtin_function_decls): Correct number of
arguments to caf_init.

From-SVN: r211131

10 years agoDelete a copy that looks like a relic from obstack times.
Bernd Schmidt [Mon, 2 Jun 2014 12:06:11 +0000 (12:06 +0000)]
Delete a copy that looks like a relic from obstack times.

* varasm.c (copy_constant): Delete function.
(build_constant_desc): Don't call it.

From-SVN: r211130

10 years agore PR target/61154 ([ARM] wide-int merge introduced regressions in vshuf tests)
Ramana Radhakrishnan [Mon, 2 Jun 2014 08:22:30 +0000 (08:22 +0000)]
re PR target/61154 ([ARM] wide-int merge introduced regressions in vshuf tests)

Fix PR target/61154

2014-06-02  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/61154
* config/arm/arm.h (TARGET_SUPPORTS_WIDE_INT): Define.
* config/arm/arm.md (mov64 splitter): Replace const_double_operand
with immediate_operand.

From-SVN: r211129

10 years agore PR tree-optimization/61346 (VRP chooses bad bounds for variable)
Richard Biener [Mon, 2 Jun 2014 08:07:23 +0000 (08:07 +0000)]
re PR tree-optimization/61346 (VRP chooses bad bounds for variable)

2014-06-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61346
* gcc.dg/torture/pr61346.c: New testcase.

From-SVN: r211128

10 years ago* config/ia64/ia64.c
Andreas Schwab [Mon, 2 Jun 2014 07:53:26 +0000 (07:53 +0000)]
* config/ia64/ia64.c
(ia64_first_cycle_multipass_dfa_lookahead_guard): Check
pending_data_specs first.

From-SVN: r211127

10 years agore PR middle-end/61378 (Obvious bug in vn_reference_lookup_3)
Richard Biener [Mon, 2 Jun 2014 07:45:15 +0000 (07:45 +0000)]
re PR middle-end/61378 (Obvious bug in vn_reference_lookup_3)

2014-06-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61378
* tree-ssa-sccvn.c (vn_reference_lookup_3): Initialize
valueized_anything.

From-SVN: r211126

10 years agoDaily bump.
GCC Administrator [Mon, 2 Jun 2014 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211125

10 years agouses_allocator.h (__uses_allocator_helper): Simplify.
Jonathan Wakely [Sun, 1 Jun 2014 22:35:42 +0000 (23:35 +0100)]
uses_allocator.h (__uses_allocator_helper): Simplify.

* include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
(__uses_allocator_arg): Remove unused type.
(__uses_alloc0): Turn into a trivial type.
(__uses_alloc): Add missing template parameter in primary template.
(__uses_alloc_impl): Rename to __uses_alloc_t.

From-SVN: r211121

10 years agosibcall-2.c: Xfail dg-final scan-assembler-not, not compilation.
Uros Bizjak [Sun, 1 Jun 2014 21:14:02 +0000 (23:14 +0200)]
sibcall-2.c: Xfail dg-final scan-assembler-not, not compilation.

* gcc.target/i386/sibcall-2.c: Xfail dg-final scan-assembler-not,
not compilation.
* gcc.target/i386/sibcall-4.c: Ditto.
* gcc.target/i386/fuse-caller-save.c: Add -mregparm=1 for ia32 target.

From-SVN: r211120

10 years agoconstraints.md (Bw): Rename from 'w'.
Uros Bizjak [Sun, 1 Jun 2014 20:53:18 +0000 (22:53 +0200)]
constraints.md (Bw): Rename from 'w'.

* config/i386/constraints.md (Bw): Rename from 'w'.
(Bz): Rename from 'z'.
* config/i386/i386.md: Change 'w' to 'Bw' and 'z' to 'Bz' globally.

From-SVN: r211119

10 years agosibcall-2.c (dg-final): Properly escape '[' and ']' in scan-assembler-not string.
Uros Bizjak [Sun, 1 Jun 2014 20:37:41 +0000 (22:37 +0200)]
sibcall-2.c (dg-final): Properly escape '[' and ']' in scan-assembler-not string.

* gcc.target/i386/sibcall-2.c (dg-final): Properly escape '[' and ']'
in scan-assembler-not string.
* gcc.target/i386/sibcall-3.c (dg-final): Ditto.
* gcc.target/i386/sibcall-4.c (dg-final): Ditto.
* gcc.target/i386/sibcall-6.c (dg-final): Ditto.

From-SVN: r211118

10 years ago* Add missing ChangeLog entry.
Kai Tietz [Sun, 1 Jun 2014 19:48:53 +0000 (21:48 +0200)]
* Add missing ChangeLog entry.

From-SVN: r211117

10 years agopex-win32.c (argv_to_cmdline): Don't quote args unnecessarily
Ray Donnelly [Sun, 1 Jun 2014 19:09:59 +0000 (19:09 +0000)]
pex-win32.c (argv_to_cmdline): Don't quote args unnecessarily

2014-06-01  Ray Donnelly  <mingw.android@gmail.com>

        * pex-win32.c (argv_to_cmdline): Don't quote
        args unnecessarily

From-SVN: r211116

10 years agopr60969.C (dg-do compile): Change ilp32 target to ia32.
Uros Bizjak [Sun, 1 Jun 2014 18:12:00 +0000 (20:12 +0200)]
pr60969.C (dg-do compile): Change ilp32 target to ia32.

* g++.dg/pr60969.C (dg-do compile): Change ilp32 target to ia32.

From-SVN: r211114

10 years agore PR libstdc++/61374 (string_view::operator string() is buggy)
Jonathan Wakely [Sun, 1 Jun 2014 17:23:41 +0000 (18:23 +0100)]
re PR libstdc++/61374 (string_view::operator string() is buggy)

PR libstdc++/61374
* include/experimental/string_view (operator basic_string): Correct
order of arguments.
(to_string): Replace with member function.
Add inline specifiers. Remove unused header. Remove _S_empty_rep and
allow _M_str to be null.
* testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
default constructor semantics.
* testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
* testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
copyright dates. Remove unused header.
* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/data/char/1.cc:
Fix copyright dates. Adjust to new default constructor semantics.
* testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
Likewise.
* testsuite/experimental/string_view/operations/to_string/1.cc: New.

From-SVN: r211113

10 years agore PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)
Kai Tietz [Sun, 1 Jun 2014 10:36:55 +0000 (12:36 +0200)]
re PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)

PR target/61377
* constrains.md (define_constrain): New 'Bs' constraint.
* i386.md (sibcall_insn_operand): Use Bs instead of m constraint.

From-SVN: r211112

10 years agore PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)
Kai Tietz [Sun, 1 Jun 2014 10:35:19 +0000 (12:35 +0200)]
re PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)

PR target/61377
* gcc.target/i386/sibcall-6.c: New test.

From-SVN: r211111

10 years agoDaily bump.
GCC Administrator [Sun, 1 Jun 2014 00:17:25 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211110

10 years agoSummary: m68k: add missing early clobber in beq0_di, bne0_di patterns
Andreas Schwab [Sat, 31 May 2014 12:08:25 +0000 (12:08 +0000)]
Summary: m68k: add missing early clobber in beq0_di, bne0_di patterns

* config/m68k/m68k.md (beq0_di, bne0_di): Make the "o" constraint
a separate alternative where the scratch operand 2 is marked as
early clobber.

From-SVN: r211104

10 years agoarm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
Kugan Vivekanandarajah [Sat, 31 May 2014 09:27:52 +0000 (09:27 +0000)]
arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.

gcc/

2014-05-31  Kugan Vivekanandarajah  <kuganv@linaro.org>

* config/arm/arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
(arm_builtins) : Add ARM_BUILTIN_GET_FPSCR and ARM_BUILTIN_SET_FPSCR.
(bdesc_2arg) : Add description for builtins __builtins_arm_set_fpscr
and __builtins_arm_get_fpscr.
(arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and
__builtins_arm_get_fpscr.
(arm_expand_builtin) : Expand builtins __builtins_arm_set_fpscr and
__builtins_arm_ldfpscr.
(arm_atomic_assign_expand_fenv): New function.
* config/arm/vfp.md (set_fpscr): New pattern.
(get_fpscr) : Likewise.
* config/arm/unspecs.md (unspecv): Add VUNSPEC_GET_FPSCR and
VUNSPEC_SET_FPSCR.
* doc/extend.texi (AARCH64 Built-in Functions) : Document
__builtins_arm_set_fpscr, __builtins_arm_get_fpscr.

From-SVN: r211103

10 years agoDR 1227 PR c++/57543
Paolo Carlini [Sat, 31 May 2014 08:51:20 +0000 (08:51 +0000)]
DR 1227 PR c++/57543

/cp
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1227
PR c++/57543
* cp-tree.h (TYPE_HAS_LATE_RETURN_TYPE): Add.
* pt.c (tsubst_function_type): Inject the this parameter; do the
substitutions in the order mandated by the DR.
(copy_default_args_to_explicit_spec): Copy TYPE_HAS_LATE_RETURN_TYPE.
* decl.c (grokdeclarator): Maybe set TYPE_HAS_LATE_RETURN_TYPE.
(static_fn_type): Copy it.
* decl2.c (build_memfn_type, change_return_type,
cp_reconstruct_complex_type): Likewise.
* parser.c (cp_parser_lambda_declarator_opt): Likewise.
* tree.c (strip_typedefs): Likewise.
* typeck.c (merge_types): Likewise.

/testsuite
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

DR 1227
PR c++/57543
* g++.dg/cpp0x/pr57543-1.C: New.
* g++.dg/cpp0x/pr57543-2.C: Likewise.
* g++.dg/cpp0x/pr57543-3.C: Likewise.
* g++.dg/cpp0x/decltype59.C: Likewise.

From-SVN: r211102

10 years agoDaily bump.
GCC Administrator [Sat, 31 May 2014 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211101

10 years agoAdd missing closing brace
Tom de Vries [Fri, 30 May 2014 22:58:46 +0000 (22:58 +0000)]
Add missing closing brace

2014-05-31  Tom de Vries  <tom@codesourcery.com>

* gcc.target/i386/sibcall-4.c: Add missing closing brace.

From-SVN: r211097

10 years agoappendix_contributing.xml (list.copyright): Add Paolo's address too.
Jonathan Wakely [Fri, 30 May 2014 19:26:15 +0000 (20:26 +0100)]
appendix_contributing.xml (list.copyright): Add Paolo's address too.

* doc/xml/manual/appendix_contributing.xml (list.copyright): Add
Paolo's address too.

From-SVN: r211095

10 years agore PR c++/56947 (Bogus 'XX' was not declared in this scope)
Jason Merrill [Fri, 30 May 2014 18:55:56 +0000 (14:55 -0400)]
re PR c++/56947 (Bogus 'XX' was not declared in this scope)

PR c++/56947
* pt.c (instantiate_decl): Check that defer_ok is not set for
local class members.

From-SVN: r211094

10 years agotarget-libpath.exp (set_gcc_exec_prefix_env_var, [...]): New procedures.
Jakub Jelinek [Fri, 30 May 2014 18:40:20 +0000 (20:40 +0200)]
target-libpath.exp (set_gcc_exec_prefix_env_var, [...]): New procedures.

* lib/target-libpath.exp (set_gcc_exec_prefix_env_var,
restore_gcc_exec_prefix_env_var): New procedures.
(set_ld_library_path_env_vars,
restore_ld_library_path_env_vars): Use them.
* lib/c-compat.exp: Load target-libpath.exp.
(compat-use-alt-compiler): Call restore_gcc_exec_prefix_env_var.
(compat-use-tst-compiler): Call set_gcc_exec_prefix_env_var.
* g++.dg/compat/compat.exp (compat-use-alt-compiler): Call
restore_gcc_exec_prefix_env_var.
* g++.dg/compat/struct-layout-1.exp (compat-use-alt-compiler):
Likewise.

From-SVN: r211093

10 years agoasan.c (report_error_func): Add SLOW_P argument, use BUILT_IN_ASAN_*_N if set.
Jakub Jelinek [Fri, 30 May 2014 18:37:59 +0000 (20:37 +0200)]
asan.c (report_error_func): Add SLOW_P argument, use BUILT_IN_ASAN_*_N if set.

* asan.c (report_error_func): Add SLOW_P argument, use
BUILT_IN_ASAN_*_N if set.
(build_check_stmt): Likewise.
(instrument_derefs): If T has insufficient alignment,
force same handling as for odd sizes.

* c-c++-common/asan/misalign-1.c: New test.
* c-c++-common/asan/misalign-2.c: New test.

From-SVN: r211092

10 years agosanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N, [...]): New.
Jakub Jelinek [Fri, 30 May 2014 18:37:05 +0000 (20:37 +0200)]
sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N, [...]): New.

* sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N,
BUILT_IN_ASAN_REPORT_STORE_N): New.
* asan.c (struct asan_mem_ref): Change access_size type to
HOST_WIDE_INT.
(asan_mem_ref_init, asan_mem_ref_new, get_mem_refs_of_builtin_call,
update_mem_ref_hash_table): Likewise.
(asan_mem_ref_hasher::hash): Hash in a HWI.
(report_error_func): Change size_in_bytes argument to HWI.
Use *_N builtins if size_in_bytes is larger than 16 or not power of
two.
(build_shadow_mem_access): New function.
(build_check_stmt): Use it.  Change size_in_bytes argument to HWI.
Handle size_in_bytes not power of two or larger than 16.
(instrument_derefs): Don't give up if size_in_bytes is not
power of two or is larger than 16.

From-SVN: r211091

10 years agoasan_test.C: Add -std=c++11 and -DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options...
Jakub Jelinek [Fri, 30 May 2014 18:36:24 +0000 (20:36 +0200)]
asan_test.C: Add -std=c++11 and -DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options...

* g++.dg/asan/asan_test.C: Add -std=c++11 and
-DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options, remove
-DASAN_USE_DEJAGNU_GTEST=1.
* g++.dg/asan/asan_mem_test.cc: Updated from upstream
r209283.
* g++.dg/asan/asan_oob_test.cc: Likewise.
* g++.dg/asan/sanitizer_test_utils.h: Likewise.
* g++.dg/asan/asan_str_test.cc: Likewise.
* g++.dg/asan/asan_test_utils.h: Likewise.
* g++.dg/asan/sanitizer_test_config.h: Likewise.
* g++.dg/asan/asan_test.cc: Likewise.  Allow size 12
for long double.
* g++.dg/asan/sanitizer_pthread_wrappers.h: New file.
Imported from upstream r209283.
* g++.dg/asan/asan_test_config.h: Likewise.

From-SVN: r211090

10 years agore PR target/60104 (load not folded into indirect branch on x86-64)
Kai Tietz [Fri, 30 May 2014 18:00:11 +0000 (20:00 +0200)]
re PR target/60104 (load not folded into indirect branch on x86-64)

PR target/60104
* config/i386/i386.c (x86_output_mi_thunk): Add memory case
for sibling-tail-calls.
* config/i386/i386.md (sibcall_insn_operand): Add memory-constrain
to its use.
* config/i386/predicates.md (sibcall_memory_operand): New predicate.
(sibcall_insn_operand): Add check for sibcall_memory_operand.

PR target/60104
* gcc.target/i386/sibcall-1.c: New test.
* gcc.target/i386/sibcall-2.c: New test.
* gcc.target/i386/sibcall-3.c: New test.
* gcc.target/i386/sibcall-4.c: New test.

From-SVN: r211089

10 years agore PR libstdc++/61011 (libstdc++-v3 should be target-libstdc++-v3 in top level configure)
Jonathan Wakely [Fri, 30 May 2014 17:16:14 +0000 (18:16 +0100)]
re PR libstdc++/61011 (libstdc++-v3 should be target-libstdc++-v3 in top level configure)

PR libstdc++/61011
* configure.ac (--disable-libstdcxx): Set noconfigdirs correctly.
Disable libcilkrts, libitm, libsanitizer when not building libstdc++.
* configure: Regenerate.

From-SVN: r211087

10 years agoappendix_contributing.xml (list.copyright): Replace Benjamin's old email address.
Jonathan Wakely [Fri, 30 May 2014 16:58:58 +0000 (17:58 +0100)]
appendix_contributing.xml (list.copyright): Replace Benjamin's old email address.

* doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
Benjamin's old email address.

From-SVN: r211086

10 years agoavr-mcus.def: Change ATA6289 ISA to AVR4
Pitchumani Sivanupandi [Fri, 30 May 2014 16:36:05 +0000 (16:36 +0000)]
avr-mcus.def: Change ATA6289 ISA to AVR4

* config/avr/avr-mcus.def: Change ATA6289 ISA to AVR4
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

From-SVN: r211085

10 years agore PR c++/60992 (ICE in tsubst_copy, at cp/pt.c:12637)
Jason Merrill [Fri, 30 May 2014 15:09:40 +0000 (11:09 -0400)]
re PR c++/60992 (ICE in tsubst_copy, at cp/pt.c:12637)

PR c++/60992
* pt.c (tsubst_init): Split out from...
(tsubst_expr) [DECL_EXPR]: Here.
(tsubst_copy) [VAR_DECL]: Use it.
* semantics.c (finish_id_expression): Return the decl for static/const.

From-SVN: r211084

10 years agoruntime: Use _mm_pause rather than __builtin_ia32_pause.
Ian Lance Taylor [Fri, 30 May 2014 13:53:58 +0000 (13:53 +0000)]
runtime: Use _mm_pause rather than __builtin_ia32_pause.

Based on a patch from Peter Collingbourne.

From-SVN: r211081

10 years agosanitizer_stacktrace.cc: Cherry pick upstream r209879.
Jakub Jelinek [Fri, 30 May 2014 13:48:22 +0000 (15:48 +0200)]
sanitizer_stacktrace.cc: Cherry pick upstream r209879.

* sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream
r209879.
* sanitizer_common/sanitizer_common.h: Likewise.
* asan/asan_mapping.h: Likewise.
* asan/asan_linux.cc: Likewise.
* tsan/tsan_mman.cc: Cherry pick upstream r209744.
* sanitizer_common/sanitizer_allocator.h: Likewise.

From-SVN: r211080

10 years agoxmmintrin.h (_mm_pause): Move out of scope of pragma target("sse").
Ian Lance Taylor [Fri, 30 May 2014 13:11:05 +0000 (13:11 +0000)]
xmmintrin.h (_mm_pause): Move out of scope of pragma target("sse").

gcc/:
* config/i386/xmmintrin.h (_mm_pause): Move out of scope of pragma
target("sse").
testsuite/:
* gcc.target/i386/pause-2.c: New test.

From-SVN: r211079

10 years ago-fuse-caller-save - Enable for i386
Tom de Vries [Fri, 30 May 2014 11:39:49 +0000 (11:39 +0000)]
-fuse-caller-save - Enable for i386

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* config/i386/i386.c (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS):
Redefine as true.

* gcc.target/i386/fuse-caller-save.c: New test.
* gcc.dg/ira-shrinkwrap-prep-1.c: Run with -fno-use-caller-save.
* gcc.dg/ira-shrinkwrap-prep-2.c: Same.

From-SVN: r211078

10 years agolibstdc++.exp (libstdc++_init): Adjust regexp to work with previous versions of Tcl.
Jonathan Wakely [Fri, 30 May 2014 11:11:15 +0000 (12:11 +0100)]
libstdc++.exp (libstdc++_init): Adjust regexp to work with previous versions of Tcl.

* testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
work with previous versions of Tcl.

From-SVN: r211077

10 years ago* generate_libstdcxx_web_docs: New script.
Jonathan Wakely [Fri, 30 May 2014 11:11:10 +0000 (12:11 +0100)]
* generate_libstdcxx_web_docs: New script.

From-SVN: r211076

10 years agoAdd execution tests of ARM REV intrinsics.
Alan Lawrence [Fri, 30 May 2014 09:49:49 +0000 (09:49 +0000)]
Add execution tests of ARM REV intrinsics.

gcc.target/arm/simd/vrev16p8_1.c: New file.
gcc.target/arm/simd/vrev16qp8_1.c: New file.
gcc.target/arm/simd/vrev16qs8_1.c: New file.
gcc.target/arm/simd/vrev16qu8_1.c: New file.
gcc.target/arm/simd/vrev16s8_1.c: New file.
gcc.target/arm/simd/vrev16u8_1.c: New file.
gcc.target/arm/simd/vrev32p16_1.c: New file.
gcc.target/arm/simd/vrev32p8_1.c: New file.
gcc.target/arm/simd/vrev32qp16_1.c: New file.
gcc.target/arm/simd/vrev32qp8_1.c: New file.
gcc.target/arm/simd/vrev32qs16_1.c: New file.
gcc.target/arm/simd/vrev32qs8_1.c: New file.
gcc.target/arm/simd/vrev32qu16_1.c: New file.
gcc.target/arm/simd/vrev32qu8_1.c: New file.
gcc.target/arm/simd/vrev32s16_1.c: New file.
gcc.target/arm/simd/vrev32s8_1.c: New file.
gcc.target/arm/simd/vrev32u16_1.c: New file.
gcc.target/arm/simd/vrev32u8_1.c: New file.
gcc.target/arm/simd/vrev64f32_1.c: New file.
gcc.target/arm/simd/vrev64p16_1.c: New file.
gcc.target/arm/simd/vrev64p8_1.c: New file.
gcc.target/arm/simd/vrev64qf32_1.c: New file.
gcc.target/arm/simd/vrev64qp16_1.c: New file.
gcc.target/arm/simd/vrev64qp8_1.c: New file.
gcc.target/arm/simd/vrev64qs16_1.c: New file.
gcc.target/arm/simd/vrev64qs32_1.c: New file.
gcc.target/arm/simd/vrev64qs8_1.c: New file.
gcc.target/arm/simd/vrev64qu16_1.c: New file.
gcc.target/arm/simd/vrev64qu32_1.c: New file.
gcc.target/arm/simd/vrev64qu8_1.c: New file.
gcc.target/arm/simd/vrev64s16_1.c: New file.
gcc.target/arm/simd/vrev64s32_1.c: New file.
gcc.target/arm/simd/vrev64s8_1.c: New file.
gcc.target/arm/simd/vrev64u16_1.c: New file.
gcc.target/arm/simd/vrev64u32_1.c: New file.
gcc.target/arm/simd/vrev64u8_1.c: New file.

From-SVN: r211075

10 years ago-fuse-caller-save - Support in lra
Tom de Vries [Fri, 30 May 2014 08:43:05 +0000 (08:43 +0000)]
-fuse-caller-save - Support in lra

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
* lra.c (initialize_lra_reg_info_element): Add init of
actual_call_used_reg_set field.
(lra): Call lra_create_live_ranges before lra_inheritance for
-fuse-caller-save.
* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
-fuse-caller-save.
* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
instead of call_used_reg_set for -fuse-caller-save.
* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211074

10 years ago[ARM] Use mov_imm type for movw operations consistently
Kyrylo Tkachov [Fri, 30 May 2014 08:31:38 +0000 (08:31 +0000)]
[ARM] Use mov_imm type for movw operations consistently

* config/arm/thumb2.md (*thumb2_movhi_insn): Set type of movw
to mov_imm.
* config/arm/vfp.md (*thumb2_movsi_vfp): Likewise.

From-SVN: r211073

10 years agoira.c (ira_get_dup_out_num): Check for output operands at the start of the loop.
Richard Sandiford [Fri, 30 May 2014 07:35:47 +0000 (07:35 +0000)]
ira.c (ira_get_dup_out_num): Check for output operands at the start of the loop.

gcc/
* ira.c (ira_get_dup_out_num): Check for output operands at
the start of the loop.  Handle cases where an included alternative
follows an excluded one.

From-SVN: r211072

10 years agoDaily bump.
GCC Administrator [Fri, 30 May 2014 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r211071

10 years agore PR target/61352 (gcc 4.9.0 fails to execute dsymutil when linking executables...
Mike Stump [Thu, 29 May 2014 23:20:39 +0000 (23:20 +0000)]
re PR target/61352 (gcc 4.9.0 fails to execute dsymutil when linking executables on darwin)

PR debug/61352
* collect2.c (maybe_run_lto_and_relink): Be sure to always run
post ld passes when lto is used.

From-SVN: r211067

10 years agoruntime: add the --without-libatomic configure option
Ian Lance Taylor [Thu, 29 May 2014 20:22:27 +0000 (20:22 +0000)]
runtime: add the --without-libatomic configure option

This adds the --without-libatomic configure option, which is useful for building libgo
with a non-gcc compiler.

It disables libgo's dependency on libatomic. This
is useful for platforms where it is known that the libatomic runtime
functions are not required, or where the compiler automatically
provides an implementation of them.

From-SVN: r211065

10 years agore PR rtl-optimization/61325 (aarch64_be build fails)
Vladimir Makarov [Thu, 29 May 2014 17:37:23 +0000 (17:37 +0000)]
re PR rtl-optimization/61325 (aarch64_be build fails)

2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* lra-constraints.c (process_address): Rename to
process_address_1.
(process_address): New function.

2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* gcc.target/aarch64/pr61325.c: New.

From-SVN: r211061

10 years agoAdd execution tests of ARM EXT intrinsics
Alan Lawrence [Thu, 29 May 2014 17:24:34 +0000 (17:24 +0000)]
Add execution tests of ARM EXT intrinsics

gcc.target/arm/simd/vextQf32_1.c: New file.
gcc.target/arm/simd/vextQp16_1.c: New file.
gcc.target/arm/simd/vextQp8_1.c: New file.
gcc.target/arm/simd/vextQs16_1.c: New file.
gcc.target/arm/simd/vextQs32_1.c: New file.
gcc.target/arm/simd/vextQs64_1.c: New file.
gcc.target/arm/simd/vextQs8_1.c: New file.
gcc.target/arm/simd/vextQu16_1.c: New file.
gcc.target/arm/simd/vextQu32_1.c: New file.
gcc.target/arm/simd/vextQu64_1.c: New file.
gcc.target/arm/simd/vextQu8_1.c: New file.
gcc.target/arm/simd/vextQp64_1.c: New file.
gcc.target/arm/simd/vextf32_1.c: New file.
gcc.target/arm/simd/vextp16_1.c: New file.
gcc.target/arm/simd/vextp8_1.c: New file.
gcc.target/arm/simd/vexts16_1.c: New file.
gcc.target/arm/simd/vexts32_1.c: New file.
gcc.target/arm/simd/vexts64_1.c: New file.
gcc.target/arm/simd/vexts8_1.c: New file.
gcc.target/arm/simd/vextu16_1.c: New file.
gcc.target/arm/simd/vextu32_1.c: New file.
gcc.target/arm/simd/vextu64_1.c: New file.
gcc.target/arm/simd/vextu8_1.c: New file.
gcc.target/arm/simd/vextp64_1.c: New file.

From-SVN: r211059

10 years agoDetect EXT patterns to vec_perm_const, use for EXT intrinsics
Alan Lawrence [Thu, 29 May 2014 16:57:42 +0000 (16:57 +0000)]
Detect EXT patterns to vec_perm_const, use for EXT intrinsics

        * config/aarch64/aarch64-builtins.c (aarch64_types_binopv_qualifiers,
        TYPES_BINOPV): New static data.
        * config/aarch64/aarch64-simd-builtins.def (im_lane_bound): New builtin.
        * config/aarch64/aarch64-simd.md (aarch64_ext, aarch64_im_lane_boundsi):
        New patterns.
        * config/aarch64/aarch64.c (aarch64_expand_vec_perm_const_1): Match
        patterns for EXT.
        (aarch64_evpc_ext): New function.

        * config/aarch64/iterators.md (UNSPEC_EXT): New enum element.

        * config/aarch64/arm_neon.h (vext_f32, vext_f64, vext_p8, vext_p16,
        vext_s8, vext_s16, vext_s32, vext_s64, vext_u8, vext_u16, vext_u32,
        vext_u64, vextq_f32, vextq_f64, vextq_p8, vextq_p16, vextq_s8,
        vextq_s16, vextq_s32, vextq_s64, vextq_u8, vextq_u16, vextq_u32,
        vextq_u64): Replace __asm with __builtin_shuffle and im_lane_boundsi.

From-SVN: r211058

10 years agoFix rtl-check build
Tom de Vries [Thu, 29 May 2014 16:32:16 +0000 (16:32 +0000)]
Fix rtl-check build

2014-05-29  Tom de Vries  <tom@codesourcery.com>

* rtl.h (BLOCK_SYMBOL_CHECK): Use SYMBOL_REF_FLAGS.

From-SVN: r211057

10 years agobool_set: Use UTF-8 for accented characters.
Jonathan Wakely [Thu, 29 May 2014 14:04:43 +0000 (15:04 +0100)]
bool_set: Use UTF-8 for accented characters.

* include/tr2/bool_set: Use UTF-8 for accented characters.
* scripts/run_doxygen: Handle Doxygen 1.8.x change.
* doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.

From-SVN: r211053

10 years agoextend.texi: Rewrite inline asm page / re-org asm-related pages.
David Wohlferd [Thu, 29 May 2014 11:50:22 +0000 (11:50 +0000)]
extend.texi: Rewrite inline asm page / re-org asm-related pages.

2014-05-09  David Wohlferd <LimeGreenSocks@yahoo.com>
Andrew Haley <aph@redhat.com>
Richard Sandiford <rdsandiford@googlemail.com>

* doc/extend.texi: Rewrite inline asm page / re-org asm-related
pages.

From-SVN: r211051

10 years agoiterators.md (shiftable_ops): New code iterator.
Richard Earnshaw [Thu, 29 May 2014 09:39:07 +0000 (09:39 +0000)]
iterators.md (shiftable_ops): New code iterator.

        * arm/iterators.md (shiftable_ops): New code iterator.
        (t2_binop0, arith_shift_insn): New code attributes.
* arm/predicates.md (shift_nomul_operator): New predicate.
        * arm/arm.md (insn_enabled): Delete.
        (enabled): Remove insn_enabled test.
        (*arith_shiftsi): Delete.  Replace with ...
        (*<arith_shift_insn>_multsi): ... new pattern.
(*<arith_shift_insn>_shiftsi): ... new pattern.
* config/arm/arm.c (arm_print_operand): Handle operand format 'b'.

Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r211050

10 years ago-fuse-caller-save - Enable for MIPS
Radovan Obradovic [Thu, 29 May 2014 08:59:08 +0000 (08:59 +0000)]
-fuse-caller-save - Enable for MIPS

2014-05-29  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* config/mips/mips.h (POST_CALL_TMP_REG): Define.
* config/mips/mips.c (mips_emit_call_insn): Add POST_CALL_TMP_REG
clobber.
(mips_split_call): Use POST_CALL_TMP_REG.
(TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Redefine to true.

* gcc.target/mips/mips.exp: Add use-caller-save to -ffoo/-fno-foo
options.
* gcc.target/mips/fuse-caller-save.h: New include file.
* gcc.target/mips/fuse-caller-save.c: New test.
* gcc.target/mips/fuse-caller-save-mips16.c: Same.
* gcc.target/mips/fuse-caller-save-micromips.c: Same.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r211049

10 years agopr52252-ld.c: Fix target and options for the test.
Evgeny Stupachenko [Thu, 29 May 2014 08:53:02 +0000 (08:53 +0000)]
pr52252-ld.c: Fix target and options for the test.

gcc/testsuite/
        * gcc.dg/vect/pr52252-ld.c: Fix target and options for the test.

From-SVN: r211048

10 years agoFix bootstrap on powerpc64le-linux-gnu
Tom de Vries [Thu, 29 May 2014 08:25:05 +0000 (08:25 +0000)]
Fix bootstrap on powerpc64le-linux-gnu

2014-05-29  Tom de Vries  <tom@codesourcery.com>

* final.c (collect_fn_hard_reg_usage): Guard variable declaration
with #ifdef STACK_REGS.

From-SVN: r211047

10 years agovarasm.c (get_variable_section): Walk aliases.
Jan Hubicka [Thu, 29 May 2014 06:14:52 +0000 (08:14 +0200)]
varasm.c (get_variable_section): Walk aliases.

* varasm.c (get_variable_section): Walk aliases.
(place_block_symbol): Walk aliases.

From-SVN: r211045

10 years agoDaily bump.
GCC Administrator [Thu, 29 May 2014 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r211041

10 years agoruntime: disable split stacks for runtime_printf function under Clang
Ian Lance Taylor [Thu, 29 May 2014 00:03:30 +0000 (00:03 +0000)]
runtime: disable split stacks for runtime_printf function under Clang

LLVM's code generator does not currently support split stacks for vararg
functions, so we disable split stacks for the only function that uses this
feature under Clang. This appears to be OK as long as:
- this function only calls non-inlined, internal-linkage (hence no dynamic
  loader) functions compiled with split stacks (i.e. go_vprintf), which can
  allocate more stack space as required;
- this function itself does not occupy more than BACKOFF bytes of stack space
  (see libgcc/config/i386/morestack.S).
These conditions are currently known to be satisfied by Clang on x86-32 and
x86-64. Note that signal handlers receive slightly less stack space than they
would normally do if they happen to be called while this function is being
run. If this turns out to be a problem we could consider increasing BACKOFF.

From-SVN: r211037

10 years agoruntime: fix misc gcc-isms and undefined behavior
Ian Lance Taylor [Wed, 28 May 2014 23:10:47 +0000 (23:10 +0000)]
runtime: fix misc gcc-isms and undefined behavior

This includes the use of __complex and __builtin_ functions where
unprefixed entities would suffice, and the use of a union for
bit-casting between types.

From-SVN: r211036

10 years agoFix demangler testsuite crashes with CP_DEMANGLE_DEBUG defined
Pedro Alves [Wed, 28 May 2014 21:55:41 +0000 (21:55 +0000)]
Fix demangler testsuite crashes with CP_DEMANGLE_DEBUG defined

Running the demangler's testsuite with CP_DEMANGLE_DEBUG defined
crashes, with:

 Program received signal SIGSEGV, Segmentation fault.
 0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 567       switch (dc->type)

 (gdb) bt 3
 #0  0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 #1  0x000000000040ae47 in d_dump (dc=0x7fffffffd098, indent=10) at ../../src/libiberty/cp-demangle.c:787
 #2  0x000000000040ae47 in d_dump (dc=0x7fffffffd0c8, indent=8) at ../../src/libiberty/cp-demangle.c:787

Note dc=0x1, which is obviously a bogus pointer.  This is the end of
d_dump recursing for a component type that that doesn't actually have
subtrees:

 787       d_dump (d_left (dc), indent + 2);
 788       d_dump (d_right (dc), indent + 2);

This fixes the two cases the testsuite currently trips on.

libiberty/
2014-05-28  Pedro Alves  <palves@redhat.com>

* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_FUNCTION_PARAM
and DEMANGLE_COMPONENT_NUMBER.

From-SVN: r211035

10 years agoAdd myself to MAINTAINERS.
Pedro Alves [Wed, 28 May 2014 21:51:47 +0000 (21:51 +0000)]
Add myself to MAINTAINERS.

2014-05-28  Pedro Alves  <palves@redhat.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r211034

10 years agorevert: lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
Tom de Vries [Wed, 28 May 2014 21:50:28 +0000 (21:50 +0000)]
revert: lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.

2014-05-28  Tom de Vries  <tom@codesourcery.com>

Revert:
2014-05-28  Tom de Vries  <tom@codesourcery.com>

* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
* lra.c (initialize_lra_reg_info_element): Add init of
actual_call_used_reg_set field.
(lra): Call lra_create_live_ranges before lra_inheritance for
-fuse-caller-save.
* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
-fuse-caller-save.
* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
instead of call_used_reg_set for -fuse-caller-save.
* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211033

10 years agomd.texi: Document that the % constraint character must be at the beginning of the...
Richard Sandiford [Wed, 28 May 2014 19:49:18 +0000 (19:49 +0000)]
md.texi: Document that the % constraint character must be at the beginning of the string.

gcc/
* doc/md.texi: Document that the % constraint character must
be at the beginning of the string.
* genoutput.c (validate_insn_alternatives): Check that '=',
'+' and '%' only appear at the beginning of a constraint.
* ira.c (commutative_constraint_p): Delete.
(ira_get_dup_out_num): Expect the '%' commutativity marker to be
at the start of the string.
* config/alpha/alpha.md (*movmemdi_1, *clrmemdi_1): Remove
duplicate '='s.
* config/arm/neon.md (bicdi3_neon): Likewise.
* config/iq2000/iq2000.md (addsi3_internal, subsi3_internal, sgt_si)
(slt_si, sltu_si): Likewise.
* config/vax/vax.md (sbcdi3): Likewise.
* config/h8300/h8300.md (*cmpstz): Remove duplicate '+'.
* config/arc/arc.md (mulsi_600, mulsidi_600, umulsidi_600)
(mul64): Move '%' to beginning of constraint.
* config/arm/arm.md (*xordi3_insn): Likewise.
* config/nds32/nds32.md (add<mode>3, mulsi3, andsi3, iorsi3)
(xorsi3): Likewise.

From-SVN: r211031

10 years agomd.texi: Document the restrictions on the "enabled" attribute.
Richard Sandiford [Wed, 28 May 2014 19:30:35 +0000 (19:30 +0000)]
md.texi: Document the restrictions on the "enabled" attribute.

gcc/
* doc/md.texi: Document the restrictions on the "enabled" attribute.

From-SVN: r211030

10 years agore PR c++/47202 (Endless recursion during mangling)
Jason Merrill [Wed, 28 May 2014 16:38:23 +0000 (12:38 -0400)]
re PR c++/47202 (Endless recursion during mangling)

PR c++/47202
gcc/cp/
* decl.c (cxx_comdat_group): Return a decl.
* optimize.c (cdtor_comdat_group): Get its DECL_ASSEMBLER_NAME.
gcc/
* cgraph.h (symtab_node::get_comdat_group_id): New.
* cgraphunit.c (analyze_functions): Call it.
* symtab.c (dump_symtab_node): Likewise.
* tree.c (decl_comdat_group_id): New.
* tree.h: Declare it.
* lto-streamer-out.c (write_symbol): Use it.
* trans-mem.c (ipa_tm_create_version_alias): Likewise.

From-SVN: r211026

10 years agopt.c (tsubst): Check for array of array of unknown bound.
Jason Merrill [Wed, 28 May 2014 16:30:46 +0000 (12:30 -0400)]
pt.c (tsubst): Check for array of array of unknown bound.

* pt.c (tsubst) [ARRAY_TYPE]: Check for array of array of unknown
bound.

From-SVN: r211025

10 years agore PR c++/61242 (Bogus "no matching function for call to ‘Foo::Create(<brace-enclosed...
Jason Merrill [Wed, 28 May 2014 15:55:03 +0000 (11:55 -0400)]
re PR c++/61242 (Bogus "no matching function for call to ‘Foo::Create(<brace-enclosed initializer list>)")

PR c++/61242
* call.c (build_aggr_conv): Ignore passed in flags.
(build_array_conv, build_complex_conv): Likewise.

From-SVN: r211024

10 years agoPR bootstrap/PR61146
Francois-Xavier Coudert [Wed, 28 May 2014 15:17:29 +0000 (15:17 +0000)]
PR bootstrap/PR61146

PR bootstrap/PR61146
* wide-int.cc: Do not include longlong.h when compiling with clang.

From-SVN: r211023

10 years agotree-ssa-propagate.c (add_control_edge): Print less vertical space.
Richard Biener [Wed, 28 May 2014 14:24:09 +0000 (14:24 +0000)]
tree-ssa-propagate.c (add_control_edge): Print less vertical space.

2014-05-28  Richard Biener  <rguenther@suse.de>

* tree-ssa-propagate.c (add_control_edge): Print less vertical space.
* tree-vrp.c (extract_range_from_ssa_name): Also copy VR_UNDEFINED.
(vrp_visit_assignment_or_call): Print less vertical space.
(vrp_visit_stmt): Likewise.
(vrp_visit_phi_node): Likewise.  For a PHI argument with
VR_VARYING range consider recording it as copy.

From-SVN: r211022

10 years agorevert: hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.
Richard Biener [Wed, 28 May 2014 14:17:45 +0000 (14:17 +0000)]
revert: hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.

2014-05-28  Richard Biener  <rguenther@suse.de>

Revert
2014-05-28  Richard Biener  <rguenther@suse.de>

* hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.

From-SVN: r211021

10 years agoexpr.c (expand_assignment): Fold the bitpos in the to_rtx if sufficiently aligned...
Bernd Edlinger [Wed, 28 May 2014 13:37:02 +0000 (13:37 +0000)]
expr.c (expand_assignment): Fold the bitpos in the to_rtx if sufficiently aligned and an offset is used at...

2014-05-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * expr.c (expand_assignment): Fold the bitpos in the to_rtx if
        sufficiently aligned and an offset is used at the same time.
        (expand_expr_real_1): Likewise.

From-SVN: r211020

10 years agore PR middle-end/61045 (Wrong constant folding)
Richard Biener [Wed, 28 May 2014 12:44:11 +0000 (12:44 +0000)]
re PR middle-end/61045 (Wrong constant folding)

2014-05-28  Richard Biener  <rguenther@suse.de>

PR middle-end/61045
* fold-const.c (fold_comparison): When folding
X +- C1 CMP Y +- C2 to X CMP Y +- C2 +- C1 also ensure
the sign of the remaining constant operand stays the same.

* gcc.dg/pr61045.c: New testcase.

From-SVN: r211018

10 years agoRL78 64bit double support added
Kaushik Phatak [Wed, 28 May 2014 12:23:15 +0000 (12:23 +0000)]
RL78 64bit double support added

From-SVN: r211017

10 years agoRL78 64bit double support added
Kaushik Phatak [Wed, 28 May 2014 12:22:19 +0000 (12:22 +0000)]
RL78 64bit double support added

From-SVN: r211016

10 years agoCentralise clearing hardware capabilities with Sun ld
Rainer Orth [Wed, 28 May 2014 11:32:54 +0000 (11:32 +0000)]
Centralise clearing hardware capabilities with Sun ld

gcc:
* configure.ac ($gcc_cv_ld_clearcap): New test.
* configure: Regenerate.
* config.in: Regenerate.
* config/sol2.opt (mclear-hwcap): New option.
* config/sol2.h (LINK_CLEARCAP_SPEC): Define.
* config/sol2-clearcap.map: Moved here from
testsuite/gcc.target/i386/clearcap.map.
* config/sol2-clearcapv2.map: Move here from
gcc.target/i386/clearcapv2.map.
* config/t-sol2 (install): Depend on install-clearcap-map.
(install-clearcap-map): New target.
* doc/invoke.texi (Option Summary, Solaris 2 Options): Document
-mclear-hwcap.

gcc/testsuite:
* lib/clearcap.exp: New file.
* gcc.dg/vect/vect.exp: Load clearcap.exp.
Remove clearcap_ldflags handling.
Call clearcap-init, clearcap-finish.
* gcc.target/i386/i386.exp: Likewise.
* gcc.target/i386/clearcap.map: Move to ../config/sol2-clearcap.map.
* gcc.target/i386/clearcapv2.map: Move to
../config/sol2-clearcapv2.map.
* gcc.target/x86_64/abi/avx/abi-avx.exp: Likewise.
* gcc.target/x86_64/abi/avx512f/abi-avx512f.exp: Likewise.

libitm:
* acinclude.m4 (LIBITM_CHECK_LINKER_HWCAP): Check for
-mclear-hwcap instead.
* configure: Regenerate.
* clearcap.map: Remove.

From-SVN: r211014

10 years agohwint.h (*_HALF_WIDE_INT*): Move to ...
Richard Biener [Wed, 28 May 2014 11:07:48 +0000 (11:07 +0000)]
hwint.h (*_HALF_WIDE_INT*): Move to ...

2014-05-28  Richard Biener  <rguenther@suse.de>

* hwint.h (*_HALF_WIDE_INT*): Move to ...
* wide-int.cc (HOST_BITS_PER_HALF_WIDE_INT, HOST_HALF_WIDE_INT):
... here and remove the rest.
* hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.

From-SVN: r211013

10 years agore PR tree-optimization/61335 (wrong code with -O2 -fbounds-check)
Richard Biener [Wed, 28 May 2014 11:07:06 +0000 (11:07 +0000)]
re PR tree-optimization/61335 (wrong code with -O2 -fbounds-check)

2014-05-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61335
* tree-vrp.c (vrp_visit_phi_node): If the compare of old and
new range fails, drop to varying.

* gfortran.dg/pr61335.f90: New testcase.

From-SVN: r211012

10 years agovxworks.h (VXCPU_FOR_8548): New.
Olivier Hainque [Wed, 28 May 2014 09:51:07 +0000 (09:51 +0000)]
vxworks.h (VXCPU_FOR_8548): New.

2014-05-28  Olivier Hainque  <hainque@adacore.com>

        * config/rs6000/vxworks.h (VXCPU_FOR_8548): New. Default to PPC85XX.
        (CPP_SPEC): Add entry for -mcpu=8548.
        * config/rs6000/vxworksae.h: Reinstate. Override VXCPU_FOR_8548.
        * config.gcc (powerpc-wrs-vxworksae, tm_file): Add back vxworksae.h.

From-SVN: r211011

10 years ago-fuse-caller-save - Support in lra
Tom de Vries [Wed, 28 May 2014 09:43:52 +0000 (09:43 +0000)]
-fuse-caller-save - Support in lra

2014-05-28  Tom de Vries  <tom@codesourcery.com>

* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
* lra.c (initialize_lra_reg_info_element): Add init of
actual_call_used_reg_set field.
(lra): Call lra_create_live_ranges before lra_inheritance for
-fuse-caller-save.
* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
-fuse-caller-save.
* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
instead of call_used_reg_set for -fuse-caller-save.
* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211010

10 years ago-fuse-caller-save - Add documentation
Radovan Obradovic [Wed, 28 May 2014 09:43:41 +0000 (09:43 +0000)]
-fuse-caller-save - Add documentation

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
gccoptlist.
(@item -fuse-caller-save): New item.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r211009

10 years ago-fuse-caller-save - Enable by default at O2 and higher
Radovan Obradovic [Wed, 28 May 2014 09:43:32 +0000 (09:43 +0000)]
-fuse-caller-save - Enable by default at O2 and higher

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry with
OPT_fuse_caller_save.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r211008