platform/upstream/linaro-gcc.git
8 years ago2015-08-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 19 Aug 2015 13:20:29 +0000 (13:20 +0000)]
2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath: Fix typo in comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227007 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 19 Aug 2015 13:17:51 +0000 (13:17 +0000)]
2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath: Revert fix for libstdc++/58625, no
longer necessary (__builtin_signbit is now type-generic).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227006 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[AArch64] Cleanup whitespace in aarch64.c
jiwang [Wed, 19 Aug 2015 13:02:19 +0000 (13:02 +0000)]
[AArch64] Cleanup whitespace in aarch64.c

2015-08-19  Jiong Wang  <jiong.wang@arm.com>

gcc/
  * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Replace
  whitespaces with tab.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227005 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoMake the stack non-executable in GNAT tools
fw [Wed, 19 Aug 2015 13:00:24 +0000 (13:00 +0000)]
Make the stack non-executable in GNAT tools

Due to PR67205, the deeply nested instantiations require trampolines,
which in turn requires an executable stack for the GNAT tools on
architectures such as x86_64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227004 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * ChangeLog: Fix corrupted entry.
uros [Wed, 19 Aug 2015 09:19:08 +0000 (09:19 +0000)]
* ChangeLog: Fix corrupted entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227003 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM] Use %wd format for lane printing in bounds_check
ktkachov [Wed, 19 Aug 2015 08:26:43 +0000 (08:26 +0000)]
[ARM] Use %wd format for lane printing in bounds_check

* config/arm/arm.c (bounds_check): Use %wd print format
for HOST_WIDE_INT arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227002 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoremove more useless typedefs
tbsaunde [Wed, 19 Aug 2015 02:48:48 +0000 (02:48 +0000)]
remove more useless typedefs

gcc/c-family/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
 typedefs.

gcc/c/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* c-aux-info.c, c-parser.c, c-tree.h: Remove useless typedefs.

gcc/cp/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* call.c, class.c, cp-tree.h, decl.c, except.c, mangle.c,
method.c, name-lookup.h, parser.c, parser.h, rtti.c,
semantics.c, typeck2.c: Remove useless typedefs.

gcc/fortran/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* dependency.c, dependency.h, gfortran.h, io.c, module.c,
parse.h, resolve.c, trans-types.h, trans.h: remove useless
typedefs.

gcc/lto/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* lto.h: Remove useless typedefs.

gcc/objc/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* objc-act.h, objc-next-runtime-abi-02.c, objc-runtime-hooks.h:
Remove useless typedefs.

gcc/ChangeLog:

2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>

* bb-reorder.c, cfgloop.h, collect2.c, combine.c, dse.c,
dwarf2cfi.c, gcse-common.h, genopinit.c, ggc-page.c, machmode.h,
mcf.c, modulo-sched.c, omp-low.c, read-rtl.c, sched-rgn.c,
signop.h, tree-call-cdce.c, tree-dfa.c, tree-diagnostic.c,
tree-inline.h, tree-scalar-evolution.c, tree-ssa-address.c,
tree-ssa-loop-niter.c, tree-ssa-loop.h, tree-ssa-pre.c,
tree-ssa-reassoc.c, tree-ssa-sccvn.h, tree-ssa-structalias.c,
tree-ssa-uninit.c, tree-ssa.h, tree-vect-loop-manip.c,
tree-vectorizer.h, tree-vrp.c, var-tracking.c: Remove useless
typedefs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227001 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoremove useless typedefs
tbsaunde [Wed, 19 Aug 2015 02:48:16 +0000 (02:48 +0000)]
remove useless typedefs

gcc/ChangeLog:

2015-08-11  trevor Saunders  <tbsaunde@tbsaunde.org>

* bt-load.c, cgraph.h, dwarf2out.c, dwarf2out.h, final.c,
function.c, graphite-scop-detection.c, haifa-sched.c,
ipa-devirt.c, ipa-split.c, recog.c, ree.c, stmt.c,
tree-data-ref.c, tree-ssa-dom.c, tree-ssa-loop-ivopts.c,
varasm.c: Remove typedefs of structs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227000 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Wed, 19 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226998 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[gcc]
wschmidt [Tue, 18 Aug 2015 22:02:46 +0000 (22:02 +0000)]
[gcc]

2015-08-18  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* config/rs6000/altivec.h (vec_adde): New define.
(vec_addec): Likewise.
(vec_double): Likewise.
(vec_bperm): Likewise.
(vec_gb): Likewise.
* config/rs6000/rs6000-builtin.def (ADDE): New
BU_ALTIVEC_OVERLOAD_3.
(ADDEC): Likewise.
(DOUBLE): New BU_VSX_OVERLOAD_1.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add new
entries for ALTIVEC_BUILTIN_VEC_ADDC, ALTIVEC_BUILTIN_VEC_ADDE,
ALTIVEC_BUILTIN_VEC_ADDEC, ALTIVEC_BUILTIN_VEC_ANDC,
VSX_BUILTIN_VEC_DOUBLE, ALTIVEC_BUILTIN_VEC_MERGEH,
ALTIVEC_BUILTIN_VEC_MERGEL, ALTIVEC_BUILTIN_VEC_NOR,
ALTIVEC_BUILTIN_VEC_OR, ALTIVEC_BUILTIN_VEC_XOR,
ALTIVEC_BUILTIN_VEC_PERM, ALTIVEC_BUILTIN_VEC_SEL,
P8V_BUILTIN_VEC_EQV, P8V_BUILTIN_VEC_NAND, P8V_BUILTIN_VEC_ORC,
and P8V_BUILTIN_VEC_VBPERMQ.

[gcc/testsuite]

2015-08-18  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* gcc.target/powerpc/altivec-35.c: New test.
* gcc.target/powerpc/p8vector-builtin-8.c: New test.
* gcc.target/powerpc/vsx-vector-7.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226995 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * print-tree.c (print_node): Handle TREE_BINFO.
jason [Tue, 18 Aug 2015 21:29:12 +0000 (21:29 +0000)]
* print-tree.c (print_node): Handle TREE_BINFO.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226994 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/66919
jason [Tue, 18 Aug 2015 21:29:07 +0000 (21:29 +0000)]
PR c++/66919
* g++.dg/cpp1y/auto-fn27.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226993 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago DR 1155
jason [Tue, 18 Aug 2015 21:29:01 +0000 (21:29 +0000)]
DR 1155
* pt.c (convert_nontype_argument): Allow internal linkage in C++11
and up.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226992 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR middle-end/36757
fxcoudert [Tue, 18 Aug 2015 20:07:57 +0000 (20:07 +0000)]
PR middle-end/36757

* builtins.c (expand_builtin_signbit): Add asserts to make sure
we can expand BUILT_IN_SIGNBIT inline.
* builtins.def (BUILT_IN_SIGNBIT): Make type-generic.
* doc/extend.texi: Document the type-generic __builtin_signbit.

* c-common.c (check_builtin_function_arguments): Add check
for BUILT_IN_SIGNBIT argument.

* gcc.dg/builtins-error.c: Add checks for __builtin_signbit.
* gcc.dg/tg-tests.h: Add checks for __builtin_signbit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226990 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
rsandifo [Tue, 18 Aug 2015 19:04:41 +0000 (19:04 +0000)]
gcc/
PR rtl-optimization/67218
* simplify-rtx.c (exact_int_to_float_conversion_p): New function.
(simplify_unary_operation_1): Use it.

gcc/testsuite/
PR rtl-optimization/67218
* gcc.c-torture/execute/ieee/pr67218.c,
gcc.target/aarch64/fcvt_int_float_double1.c,
gcc.target/aarch64/fcvt_int_float_double2.c,
gcc.target/aarch64/fcvt_int_float_double3.c,
gcc.target/aarch64/fcvt_int_float_double4.c,
gcc.target/aarch64/fcvt_uint_float_double1.c,
gcc.target/aarch64/fcvt_uint_float_double2.c,
gcc.target/aarch64/fcvt_uint_float_double3.c,
gcc.target/aarch64/fcvt_uint_float_double4.c: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226987 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67216
redi [Tue, 18 Aug 2015 18:04:48 +0000 (18:04 +0000)]
PR c++/67216
* testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
Fix use of safe-bool idiom that isn't valid in C++11.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226986 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * include/bits/ptr_traits.h: Include <bits/move.h> for addressof.
redi [Tue, 18 Aug 2015 18:04:42 +0000 (18:04 +0000)]
* include/bits/ptr_traits.h: Include <bits/move.h> for addressof.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226985 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR libstdc++/67066
redi [Tue, 18 Aug 2015 18:04:32 +0000 (18:04 +0000)]
PR libstdc++/67066
* doc/xml/manual/configure.xml (manual.intro.setup.configure): Add
caveats for --enable-concept-checks. Improve link text.
* doc/xml/manual/diagnostics.xml (std.diagnostics.concept_checking):
Clarify caveats.
* doc/html/*: Regenerate.
* include/bits/stl_deque.h (deque): Only use concept checks in C++03.
* include/bits/stl_stack.h (stack): Likewise.
* include/bits/stl_vector.h (vector): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226984 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Adjust
mwahab [Tue, 18 Aug 2015 16:10:10 +0000 (16:10 +0000)]
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Adjust
dg-options to disable LSE extensions.
* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
* gcc.target/aarch64/atomic-op-char.c: Likewise.
* gcc.target/aarch64/atomic-op-consume.c: Likewise.
* gcc.target/aarch64/atomic-op-imm.c: Likewise.
* gcc.target/aarch64/atomic-op-int.c: Likewise.
* gcc.target/aarch64/atomic-op-long.c: Likewise.
* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
* gcc.target/aarch64/atomic-op-release.c: Likewise.
* gcc.target/aarch64/atomic-op-short.c: Likewise.
* gcc.target/aarch64/sync-comp-swap.c: Likewise.
* gcc.target/aarch64/sync-op-acquire.c: Likewise.
* gcc.target/aarch64/sync-op-full.c: Likewise.
* gcc.target/aarch64/sync-op-release.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226979 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoc-family/
paolo [Tue, 18 Aug 2015 14:38:51 +0000 (14:38 +0000)]
c-family/
2015-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67160
* c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
in c++1z mode.

testsuite/
2015-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67160
* g++.dg/cpp1z/feat-cxx1z.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226972 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR middle-end/67222
mpolacek [Tue, 18 Aug 2015 13:41:27 +0000 (13:41 +0000)]
PR middle-end/67222
* gimple-low.c (lower_stmt): Don't lower BUILT_IN_POSIX_MEMALIGN
if the call isn't valid.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Check builtins using
gimple_call_builtin_p.
(call_may_clobber_ref_p_1): Likewise.
(stmt_kills_ref_p): Likewise.

* gcc.dg/torture/pr67222.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226969 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[MIPS] Fix register renaming in the interrupt handlers.
rts [Tue, 18 Aug 2015 12:42:12 +0000 (12:42 +0000)]
[MIPS] Fix register renaming in the interrupt handlers.

gcc/
* config/mips/mips-protos.h (mips_hard_regno_rename_ok): New prototype.
* config/mips/mips.c (mips_hard_regno_rename_ok): New function.
(mips_hard_regno_scratch_ok): Likewise.
(TARGET_HARD_REGNO_SCRATCH_OK): Define macro.
* config/mips/mips.h (HARD_REGNO_RENAME_OK): New.

gcc/testsuite/
* gcc.target/mips/interrupt_handler-bug-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226968 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
amker [Tue, 18 Aug 2015 07:57:54 +0000 (07:57 +0000)]
* tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
(determine_value_range): Call refine_value_range_using_guard for
each loop initial condition to improve value range.

gcc/testsuite/ChangeLog
* gcc.dg/tree-ssa/loop-bound-1.c: New test.
* gcc.dg/tree-ssa/loop-bound-3.c: New test.
* gcc.dg/tree-ssa/loop-bound-5.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226966 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoxtensa: fix _Unwind_GetCFA
jcmvbkbc [Tue, 18 Aug 2015 01:08:22 +0000 (01:08 +0000)]
xtensa: fix _Unwind_GetCFA

Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame
higher than what was actually used by code at context->ra. This results
in invalid CFA value in signal frames and premature unwinding completion
in forced unwinding used by uClibc NPTL thread cancellation.
Returning context->sp from _Unwind_GetCFA makes all CFA values valid and
matching code that used them.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return
context->sp instead of context->cfa.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226964 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoxtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde
jcmvbkbc [Tue, 18 Aug 2015 01:07:10 +0000 (01:07 +0000)]
xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde

This allows having exception cleanup code in binaries that don't
register their unwind tables.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/t-windowed (LIB2ADDEH): Replace unwind-dw2-fde
with unwind-dw2-fde-dip.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226963 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoxtensa: reimplement register spilling
jcmvbkbc [Tue, 18 Aug 2015 01:05:44 +0000 (01:05 +0000)]
xtensa: reimplement register spilling

Spilling windowed registers in userspace is much easier, more portable,
less error-prone and equally effective as in kernel. Now that register
spilling syscall is considered obsolete in the xtensa linux kernel
replace it with CALL12 followed by series of ENTRY in libgcc.

2015-08-18  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use
CALL12 followed by series of ENTRY to spill windowed registers.
(__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill
instead of making linux spill syscall.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226962 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Tue, 18 Aug 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226961 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agomips.exp: Redefine isa variable which is referenced in later code.
mpf [Mon, 17 Aug 2015 22:35:19 +0000 (22:35 +0000)]
mips.exp: Redefine isa variable which is referenced in later code.

gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Redefine isa
which is used in later code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226957 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago/cp
paolo [Mon, 17 Aug 2015 21:40:07 +0000 (21:40 +0000)]
/cp
2015-08-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67216
* call.c (null_ptr_cst_p): In C++11 return 'false' for 'false'.

/testsuite
2015-08-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67216
* g++.dg/cpp0x/nullptr34.C: New.
* g++.dg/warn/Wconversion2.C: Adjust.
* g++.dg/warn/Wnull-conversion-1.C: Likewise.
* g++.old-deja/g++.other/null3.C: Likewise.

* g++.dg/cpp0x/pr51313.C: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226956 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67244
jason [Mon, 17 Aug 2015 18:42:09 +0000 (18:42 +0000)]
PR c++/67244
* pt.c (tsubst_copy_and_build): Call insert_pending_capture_proxies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226950 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67104
jason [Mon, 17 Aug 2015 18:42:04 +0000 (18:42 +0000)]
PR c++/67104
* constexpr.c (array_index_cmp, find_array_ctor_elt): New.
(cxx_eval_array_reference, cxx_eval_store_expression): Use them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226949 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * constexpr.c (cxx_eval_store_expression): Don't set
jason [Mon, 17 Aug 2015 18:41:59 +0000 (18:41 +0000)]
* constexpr.c (cxx_eval_store_expression): Don't set
CONSTRUCTOR_NO_IMPLICIT_ZERO if we have an enclosing CONSTRUCTOR
without it.
(cxx_eval_array_reference): Check it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226948 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * except.c (check_noexcept_r): Assert that fn is POINTER_TYPE_P.
jason [Mon, 17 Aug 2015 18:40:57 +0000 (18:40 +0000)]
* except.c (check_noexcept_r): Assert that fn is POINTER_TYPE_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226947 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * da.po: Update.
jsm28 [Mon, 17 Aug 2015 17:13:16 +0000 (17:13 +0000)]
* da.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226944 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/i386/i386.c: Remove include of fibheap.h.
aldyh [Mon, 17 Aug 2015 16:28:13 +0000 (16:28 +0000)]
    * config/i386/i386.c: Remove include of fibheap.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226943 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
mpolacek [Mon, 17 Aug 2015 14:18:04 +0000 (14:18 +0000)]
* c-pretty-print.c (pp_c_cv_qualifiers): Remove code dealing
with whitespaces before qualifier names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226939 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-17 Richard Biener <rguenther@suse.de>
rguenth [Mon, 17 Aug 2015 14:17:33 +0000 (14:17 +0000)]
2015-08-17  Richard Biener  <rguenther@suse.de>

PR tree-optimization/67221
* tree-ssa-sccvn.c (visit_phi): Keep all-TOP args TOP.
(sccvn_dom_walker::before_dom_children): Mark backedges of
non-executable blocks as not executable.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226938 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/arm/arm.c (neon_element_bits): Replace call to
davids [Mon, 17 Aug 2015 11:06:34 +0000 (11:06 +0000)]
    * config/arm/arm.c (neon_element_bits): Replace call to
        GET_MODE_BITSIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_BITSIZE (m).
        * config/arm/neon.md (neon_vget_lane<mode>): Likewise.
        (neon_vget_laneu<mode>, neon_vset_lane<mode>): Likewise
        (neon_vdup_lane<mode>): Likewise.
        * config/i386/i386.c (ix86_expand_int_vcond): Likewise.
        (ix86_expand_multi_arg_builtin, ix86_expand_reduc): Likewise.
        (expand_vec_perm_palignr, ix86_expand_sse2_abs): Likewise.
        * config/rs6000/rs6000.c (rs6000_do_expand_vec_perm): Likewise.
        * config/spu/spu.c (arith_immediate_p): Likewise.
        * expmed.c (store_bit_field_1, extract_bit_field_1): Likewise.
        * expr.c (expand_expr_real_2): Likewise.
        * optabs.c (shift_amt_for_vec_perm_mask): Likewise.
        * simplify-rtx.c (simplify_immed_subreg): Likewise.
        * tree-cfg.c (verify_gimple_assign_ternary): Likewise.
        * tree-vect-patterns.c (vect_recog_mixed_size_cond_pattern): Likewise.
        New variable.
        * fold-const.c (fold_binary_loc): Replace call to
        GET_MODE_PRECISION (GET_MODE_INNER (m)) with
        GET_MODE_UNIT_PRECISION (m).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226936 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM] arm memcpy of aligned data
ktkachov [Mon, 17 Aug 2015 09:39:58 +0000 (09:39 +0000)]
[ARM] arm memcpy of aligned data

2015-08-17  Mike Stump  <mikestump@comcast.net>

* config/arm/arm.c (arm_block_move_unaligned_straight):
Emit normal move instead of unaligned load when source or destination
are appropriately aligned.

2015-08-17 Mike Stump  <mikestump@comcast.net>
           Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.target/arm/memcpy-aligned-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226935 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-17 Richard Biener <rguenther@suse.de>
naveenh [Mon, 17 Aug 2015 04:47:45 +0000 (04:47 +0000)]
2015-08-17  Richard Biener  <rguenther@suse.de>
    Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

PR middle-end/16107
* match.pd (div (coss (op @0) : New simplifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226934 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Mon, 17 Aug 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226932 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR fortran/54656
fxcoudert [Sun, 16 Aug 2015 19:47:02 +0000 (19:47 +0000)]
PR fortran/54656

* trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Add decl
for quadruple precision BUILT_IN_SQRT.

* gfortran.dg/norm_4.f90: Rename to...
* gfortran.dg/norm2_4.f90: this.
* gfortran.dg/norm2_5.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226929 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * trans-intrinsic.c (conv_intrinsic_ieee_is_negative): Use type
fxcoudert [Sun, 16 Aug 2015 16:37:18 +0000 (16:37 +0000)]
* trans-intrinsic.c (conv_intrinsic_ieee_is_negative): Use type
generic BUILT_IN_SIGNBIT.
(conv_intrinsic_ieee_copy_sign): Likewise.
* f95-lang.c (gfc_init_builtin_functions): Add BUILT_IN_ISINF,
BUILT_IN_ISINF_SIGN, BUILT_IN_SIGNBIT, BUILT_IN_ISLESS,
BUILT_IN_ISLESSGREATER, BUILT_IN_ISGREATER. Remove non-type generic
variants of BUILT_IN_SIGNBIT.
* mathbuiltins.def: Remove SIGNBIT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226924 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR fortran/41387
fxcoudert [Sun, 16 Aug 2015 12:47:15 +0000 (12:47 +0000)]
PR fortran/41387
* gfortran.texi: New section "File operations on symbolic links".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226923 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Sun, 16 Aug 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226915 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * cp-demangle.c (d_abi_tags): Preserve di->last_name across any
ian [Sat, 15 Aug 2015 13:23:30 +0000 (13:23 +0000)]
* cp-demangle.c (d_abi_tags): Preserve di->last_name across any
ABI tags.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226910 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/65974
jason [Sat, 15 Aug 2015 07:59:26 +0000 (07:59 +0000)]
PR c++/65974
* decl2.c (mark_vtable_entries): Suppress -Wdeprecated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226908 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Sat, 15 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226907 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[PR64164] Drop copyrename, use coalescible partition as base when optimizing.
aoliva [Fri, 14 Aug 2015 18:51:50 +0000 (18:51 +0000)]
[PR64164] Drop copyrename, use coalescible partition as base when optimizing.

for  gcc/ChangeLog

PR rtl-optimization/64164
PR bootstrap/66978
PR middle-end/66983
PR rtl-optimization/67000
PR middle-end/67034
PR middle-end/67035
* Makefile.in (OBJS): Drop tree-ssa-copyrename.o.
* tree-ssa-copyrename.c: Removed.
* opts.c (default_options_table): Drop -ftree-copyrename.  Add
-ftree-coalesce-vars.
* passes.def: Drop all occurrences of pass_rename_ssa_copies.
* common.opt (ftree-copyrename): Ignore.
(ftree-coalesce-inlined-vars): Likewise.
* doc/invoke.texi: Remove the ignored options above.
* gimple-expr.h (gimple_can_coalesce_p): Move declaration
* tree-ssa-coalesce.h: ... here.
* tree-ssa-uncprop.c: Include tree-ssa-coalesce.h and other
headers required by it.
* gimple-expr.c (gimple_can_coalesce_p): Allow coalescing
across variables when flag_tree_coalesce_vars.  Check register
use and promoted modes to allow coalescing.  Do not coalesce
maybe-byref parms with SSA_NAMEs of other variables, or
anonymous SSA_NAMEs.  Moved to tree-ssa-coalesce.c.
* tree-ssa-live.c (struct tree_int_map_hasher): Move along
with its member functions to tree-ssa-coalesce.c.
(var_map_base_init): Likewise.  Renamed to
compute_samebase_partition_bases.
(partition_view_normal): Drop want_bases parameter.
(partition_view_bitmap): Likewise.
* tree-ssa-live.h: Adjust declarations.
* tree-ssa-coalesce.c: Include explow.h and cfgexpand.h.
(build_ssa_conflict_graph): Process PARM_ and RESULT_DECLs's
default defs at the entry point.
(dump_part_var_map): New.
(compute_optimized_partition_bases): New, called by...
(coalesce_ssa_name): ... when flag_tree_coalesce_vars, instead
of compute_samebase_partition_bases.  Adjust.
* alias.c (nonoverlapping_memrefs_p): Disregard gimple-regs.
* cfgexpand.c (leader_merge, parm_maybe_byref_p): New.
(ssa_default_def_partition): New.
(get_rtl_for_parm_ssa_default_def): New.
(align_local_variable, add_stack_var): Support anonymous SSA
names.
(defer_stack_allocation): Likewise.  Declare earlier.
(set_rtl): Merge exprs and attrs, even for MEMs and non-SSA
vars.  Update DECL_RTL for PARM_DECLs and RESULT_DECLs too.
Do no record deferred-allocation marker in
SA.partition_to_pseudo.
(expand_stack_vars): Adjust check for the marker in it.
(expand_one_stack_var_at): Handle anonymous SSA_NAMEs.  Drop
redundant MEM attr setting.
(expand_one_stack_var_1): Handle anonymous SSA_NAMEs.  Renamed
from...
(expand_one_stack_var): ... this.  New wrapper to check and
skip already expanded SSA partitions.
(record_alignment_for_reg_var): New, factored out of...
(expand_one_var): ... this.
(expand_one_ssa_partition): New.
(adjust_one_expanded_partition_var): New.
(expand_one_register_var): Check and skip already expanded SSA
partitions.
(expand_used_vars): Don't create DECLs for anonymous SSA
names.  Expand all SSA partitions, then adjust all SSA names.
(pass::execute): Replace the loops that set
SA.partition_to_pseudo from partition leaders and cleared
DECL_RTL for multi-location variables, and that which used to
rename vars and set attrs, with one that clears DECL_RTL and
checks that PARMs and RESULTs default_defs match DECL_RTL.
* cfgexpand.h (get_rtl_for_parm_ssa_default_def): Declare.
* emit-rtl.c: Include stor-layout.h.
(set_reg_attrs_for_parm): Handle NULL decl.
(set_reg_attrs_for_decl_rtl): Take mode from expression if
it's not a DECL.
* stmt.c (emit_case_decision_tree): Pass it the SSA_NAME
rather than its possibly-NULL DECL.
* explow.c (promote_ssa_mode): New.
* explow.h (promote_ssa_mode): Declare.
* expr.c (expand_expr_real_1): Handle anonymous SSA_NAMEs.
(read_complex_part): Export.
* expr.h (read_complex_part): Declare.
* cfgexpand.h (parm_maybe_byref_p): Declare.
* function.c: Include cfgexpand.h.
(use_register_for_decl): Handle SSA_NAMEs, anonymous or not.
(use_register_for_parm_decl): Wrapper for the above to
special-case the result_ptr.
(rtl_for_parm): Ditto for get_rtl_for_parm_ssa_default_def.
(split_complex_args): Take assign_parm_data_all argument.
Pass it to rtl_for_parm.  Set up rtl and context for split
args.  Reset complex parm before fetching its default decl
rtl.
(assign_parms_unsplit_complex): Use the default-def complex
parm rtl if it matches the components.
(assign_parms_augmented_arg_list): Adjust.
(maybe_reset_rtl_for_parm): Reset DECL_RTL of parms with
multiple locations.  Recognize split complex args.
(assign_parm_adjust_stack_rtl): Add all and parm arguments,
for rtl_for_parm.  For SSA-assigned parms, zero stack_parm.
(assign_parm_setup_block): Prefer SSA-assigned location, and
fill in its address if the memory location of a maybe-byref
parm was not assigned by cfgexpand.
(assign_parm_setup_reg): Likewise.  Adjust its mode as
needed.  Use entry_parm for equiv if stack_parm is NULL.  Make
sure passed_pointer parms don't need conversion.  Copy address
or value as needed.
(assign_parm_setup_stack): Prefer SSA-assigned location.
(assign_parms): Maybe reset DECL_RTL of params.  Adjust stack
rtl before testing for pointer bounds.  Special-case result_ptr.
(expand_function_start): Maybe reset DECL_RTL of result.
Prefer SSA-assigned location for result and static chain.
Factor out DECL_RESULT and SET_DECL_RTL.  Convert static chain
to Pmode if needed, from H.J. Lu  <hongjiu.lu@intel.com>.
* tree-outof-ssa.c (insert_value_copy_on_edge): Handle
anonymous SSA names.  Use promote_ssa_mode.
(get_temp_reg): Likewise.
(remove_ssa_form): Adjust.
* stor-layout.c (layout_decl): Don't set mem attributes of
non-MEMs.
* var-tracking.c (dataflow_set_clear_at_call): Take call_insn
and get its reg_usage for reg invalidation.
(compute_bb_dataflow): Pass it insn.
(emit_notes_in_bb): Likewise.

for  gcc/testsuite/ChangeLog

* gcc.dg/guality/pr54200.c: Add -fno-tree-coalesce-vars.
* gcc.dg/ssp-1.c: Make counter a register.
* gcc.dg/ssp-2.c: Likewise.
* gcc.dg/torture/parm-coalesce.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226901 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * tree-core.h (tree_base): Fix typo.
mpolacek [Fri, 14 Aug 2015 17:59:41 +0000 (17:59 +0000)]
* tree-core.h (tree_base): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226900 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago compiler: Report unnamed receiver types.
ian [Fri, 14 Aug 2015 17:26:27 +0000 (17:26 +0000)]
compiler: Report unnamed receiver types.

    gccgo used to crash when presented with an invalid receiver type in a
    method.  Instead, unnamed receiver types should report an error.

    Fixes golang/go#11557.

    Reviewed-on: https://go-review.googlesource.com/13245

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226899 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR middle-end/67133
mpolacek [Fri, 14 Aug 2015 16:29:38 +0000 (16:29 +0000)]
PR middle-end/67133
* gimple.c (infer_nonnull_range_by_attribute): Check that the
nonnull argument position is not outside function arguments.

* gcc.dg/torture/pr67133.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226896 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
mwahab [Fri, 14 Aug 2015 15:05:42 +0000 (15:05 +0000)]
gcc/
2015-08-14  Matthew Wahab  <matthew.wahab@arm.com>

PR target/67143
* config/aarch64/atomics.md (atomic_<optab><mode>): Replace
'lconst_atomic' with 'const_atomic'.
(atomic_fetch_<optab><mode>): Likewise.
(atomic_<optab>_fetch<mode>): Likewise.
* config/aarch64/iterators.md (lconst-atomic): Move below
'const_atomic'.
(const_atomic): New.

gcc/testsuite/
2015-08-14  Matthew Wahab  <matthew.wahab@arm.com>
    Matthias Klose  <doko@debian.org>

PR target/67143
* gcc.c-torture/compile/pr67143.c: New
* gcc.target/aarch64/atomic-op-imm.c
(atomic_fetch_add_negative_RELAXED): New.
(atomic_fetch_sub_negative_ACQUIRE): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226895 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * include/experimental/any (any::operator=(const any&)): Move check
redi [Fri, 14 Aug 2015 11:51:18 +0000 (11:51 +0000)]
* include/experimental/any (any::operator=(const any&)): Move check
for self-assignment.
(any::operator=(any&&)): Add check for self-assignment.
(any::operator=(_ValueType&&)): Constrain template argument.
(any::swap(any&)): Add check for self-swap.
* testsuite/experimental/any/assign/self.cc: Test move and swap.
* testsuite/experimental/any/misc/any_cast_neg.cc: Update dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226894 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * include/experimental/array: Add feature-test macro.
redi [Fri, 14 Aug 2015 11:51:05 +0000 (11:51 +0000)]
* include/experimental/array: Add feature-test macro.
* testsuite/experimental/array/neg.cc: Update dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226893 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * inclhack.def (aix_stdio_inline): New fix.
dje [Fri, 14 Aug 2015 11:17:29 +0000 (11:17 +0000)]
    * inclhack.def (aix_stdio_inline): New fix.
        (aix_strtof_const): Limit to *-*-aix*.
        (aix_sysmachine): Same.
        (aix_syswait_2): Same.
        (aix_volatile): Same.
        * fixincl.x: Regenerated.
        * test/base/stdio.h [AIX_STDIO_INLINE]: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226891 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd DWARF2_LINENO_DEBUGGING_INFO, and use it for nvptx
tschwinge [Fri, 14 Aug 2015 10:37:14 +0000 (10:37 +0000)]
Add DWARF2_LINENO_DEBUGGING_INFO, and use it for nvptx

gcc/
* config/nvptx/nvptx.c (nvptx_option_override): Don't override
debug options.
* config/nvptx/nvptx.h (DWARF2_LINENO_DEBUGGING_INFO): Define.
(DWARF2_DEBUGGING_INFO): Don't define.
* debug.h (dwarf2_lineno_debug_hooks): Declare.
* toplev.c (process_options): Add a case for it.
* dwarf2out.c (dwarf2_lineno_debug_hooks): New variable.
(dwarf2out_init): Skip most initializations if
DWARF2_LINENO_DEBUGGING_INFO, but set cur_line_info_table in that
case.
* defaults.h (PREFERRED_DEBUGGING_TYPE): Also use DWARF2_DEBUG if
DWARF2_LINENO_DEBUGGING_INFO.
* opts.c (set_debug_level): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226890 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[AArch64][obvious] Fix some target attribute inlining tests for -fPIC
ktkachov [Fri, 14 Aug 2015 09:54:54 +0000 (09:54 +0000)]
[AArch64][obvious] Fix some target attribute inlining tests for -fPIC

* gcc.target/aarch64/target_attr_5.c: Add static modifier to bar.
* gcc.target/aarch64/target_attr_8.c: Likewise.
* gcc.target/aarch64/target_attr_14.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226889 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDWARF2: add extensions to handle biased types
pmderodat [Fri, 14 Aug 2015 09:48:13 +0000 (09:48 +0000)]
DWARF2: add extensions to handle biased types

include/ChangeLog:

* dwarf2.def (DW_AT_GNU_bias): New attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226888 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDWARF2: add extensions to handle fixed point types
pmderodat [Fri, 14 Aug 2015 09:48:02 +0000 (09:48 +0000)]
DWARF2: add extensions to handle fixed point types

include/ChangeLog:

* dwarf2.def (DW_AT_GNU_numerator, DW_AT_GNU_denominator): New
attributes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226887 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[AArch64][obvious] Mark target_attr_1.c as compile-only
ktkachov [Fri, 14 Aug 2015 09:45:44 +0000 (09:45 +0000)]
[AArch64][obvious] Mark target_attr_1.c as compile-only

* gcc.target/aarch64/target_attr_1.c: Make test compile-only.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226886 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[Patch ARM/AArch64] Add missing is_neon_type types
jgreenhalgh [Fri, 14 Aug 2015 09:38:36 +0000 (09:38 +0000)]
[Patch ARM/AArch64] Add missing is_neon_type types

gcc/

* config/arm/types.md (is_neon_type): Add missing types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226885 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
ienkovich [Fri, 14 Aug 2015 09:11:01 +0000 (09:11 +0000)]
gcc/

* config/i386/driver-i386.c (host_detect_local_cpu): Add support
for skylake.
* config/i386/i386.c (PTA_SKYLAKE): New macros.
(processor_alias_table): Add skylake description.
(enum processor_model): Add skylake processor.
(arch_names_table): Add skylake record.
* doc/invoke.texi: Add skylake item.

gcc/testsuite/

* gcc.target/i386/builtin_target.c: Add skylake check.

libgcc/

* config/i386/cpuinfo.c (enum processor_subtypes): Add skylake.
(get_intel_cpu): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226884 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agojit: on OS X, add -Wl,-undefined,dynamic_lookup to driver invocation
dmalcolm [Fri, 14 Aug 2015 01:18:14 +0000 (01:18 +0000)]
jit: on OS X, add -Wl,-undefined,dynamic_lookup to driver invocation

gcc/jit/ChangeLog:
* jit-playback.c (invoke_driver): On OS X, add
"-Wl,-undefined,dynamic_lookup" to the driver arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226882 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Fri, 14 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226881 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * dwarf.c (read_function_entry): Add vec_inlined parameter.
ian [Thu, 13 Aug 2015 22:56:01 +0000 (22:56 +0000)]
* dwarf.c (read_function_entry): Add vec_inlined parameter.
Change all callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226878 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.dg/pr66314.c: Moved from here to ..
law [Thu, 13 Aug 2015 22:19:56 +0000 (22:19 +0000)]
* gcc.dg/pr66314.c: Moved from here to ..
* gcc.dg/asan/pr66314.c: Here.  Use -fno-sanitize=all
to clear all sanitizers before -fsanitize=kernel-address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226877 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * ira-int.h: Include recog.h.
amacleod [Thu, 13 Aug 2015 21:39:03 +0000 (21:39 +0000)]
* ira-int.h: Include recog.h.
* ira-build.c: Don't include recog.h.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-lives.c: Likewise.
* ira.c: Likewise.
* sched-deps.c: Likewise.
* sel-sched.c: Likewise.
* target-globals.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226876 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
rsandifo [Thu, 13 Aug 2015 20:22:34 +0000 (20:22 +0000)]
gcc/
PR bootstrap/55035
* reload1.c (elimination_costs_in_insn): Make it obvious to the
compiler that the n_dups and n_operands loop bounds are invariant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226874 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[RTL-ifcvt] Allow PLUS+immediate expression in noce_try_store_flag_constants
ktkachov [Thu, 13 Aug 2015 17:06:14 +0000 (17:06 +0000)]
[RTL-ifcvt] Allow PLUS+immediate expression in noce_try_store_flag_constants

* ifcvt.c (noce_try_store_flag_constants): Handle PLUS-immediate
expressions in A and B.

* gcc.target/aarch64/cinc_common_1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226869 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 13 Aug 2015 15:45:37 +0000 (15:45 +0000)]
2015-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53421
* g++.dg/ext/attribute-may-alias-1.C: New.
* g++.dg/ext/attribute-may-alias-2.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226868 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Ville Voutilainen <ville.voutilainen@gmail.com>
ville [Thu, 13 Aug 2015 15:00:20 +0000 (15:00 +0000)]
2015-08-13  Ville Voutilainen  <ville.voutilainen@gmail.com>

        * testsuite/experimental/array/neg.s: Remove.
        * testsuite/experimental/array/neg.ii.gz: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226866 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Ville Voutilainen <ville.voutilainen@gmail.com>
ville [Thu, 13 Aug 2015 14:55:46 +0000 (14:55 +0000)]
2015-08-13  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement std::experimental::fundamentals_v2::make_array and
std::experimental::fundamentals_v2::to_array.
* include/Makefile.am: Add array.
* include/Makefile.in: Add array.
* include/experimental/array: New.
* testsuite/experimental/array/make_array.cc: Likewise.
* testsuite/experimental/array/neg.cc: Likewise.
* doc/html/manual/status.html: Mark make_array as Y.
* doc/xml/manual/status_cxx2017.xml: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226865 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * include/bits/alloc_traits.h: Add feature-test macro.
redi [Thu, 13 Aug 2015 13:57:41 +0000 (13:57 +0000)]
* include/bits/alloc_traits.h: Add feature-test macro.
* include/bits/allocator.h: Likewise.
* include/bits/range_access.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/unordered_map.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226864 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * testsuite/30_threads/mutex/unlock/2.cc: New.
redi [Thu, 13 Aug 2015 13:57:35 +0000 (13:57 +0000)]
* testsuite/30_threads/mutex/unlock/2.cc: New.
* testsuite/30_threads/recursive_mutex/unlock/2.cc: New.
* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: New.
* testsuite/30_threads/shared_mutex/unlock/1.cc: New.
* testsuite/30_threads/shared_timed_mutex/unlock/1.cc: New.
* testsuite/30_threads/timed_mutex/unlock/2.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226863 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Eelis van der Weegen <eelis@eelis.net>
redi [Thu, 13 Aug 2015 13:57:28 +0000 (13:57 +0000)]
2015-08-13  Eelis van der Weegen  <eelis@eelis.net>

* include/std/shared_mutex (shared_mutex::unlock()): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226862 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Richard Biener <rguenther@suse.de>
rguenth [Thu, 13 Aug 2015 12:34:36 +0000 (12:34 +0000)]
2015-08-13  Richard Biener  <rguenther@suse.de>

* tree.c (nonnull_arg_p): Move from ...
* tree-vrp.c (nonnull_arg_p): ... here.
* tree.h (nonnull_arg_p): Declare.
* tree-ssa-sccvn.c (init_scc_vn): Perform all lattice init
here, register ptr != 0 for nonnull_arg_p pointer arguments.
Properly initialize static chain and by-reference result pointer.
(run_scc_vn): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226861 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[MIPS] Enable load/store bonding for I6400
rts [Thu, 13 Aug 2015 11:45:21 +0000 (11:45 +0000)]
[MIPS] Enable load/store bonding for I6400

gcc/
* config/mips/mips.h (ENABLE_LD_ST_PAIRS): Enable load/store pairs for
I6400.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226860 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.target/aarch64/atomic-inst-cas.c: New.
mwahab [Thu, 13 Aug 2015 11:30:53 +0000 (11:30 +0000)]
* gcc.target/aarch64/atomic-inst-cas.c: New.
* gcc.target/aarch64/atomic-inst-ops.inc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226859 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/aarch64/aarch64-protos.h
mwahab [Thu, 13 Aug 2015 11:28:42 +0000 (11:28 +0000)]
* config/aarch64/aarch64-protos.h
(aarch64_gen_atomic_cas): Declare.
* config/aarch64/aarch64.c (aarch64_expand_compare_and_swap):
Choose appropriate instruction pattern for the target.
(aarch64_gen_atomic_cas): New.
* config/aarch64/atomics.md (UNSPECV_ATOMIC_CAS): New.
(atomic_compare_and_swap<mode>_1): Rename to
aarch64_compare_and_swap<mode>.  Fix some indentation.
(aarch64_compare_and_swap<mode>_lse): New.
(aarch64_atomic_cas<mode>): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226858 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/aarch64/aarch64.h (AARCH64_ISA_LSE): New.
mwahab [Thu, 13 Aug 2015 11:20:07 +0000 (11:20 +0000)]
* config/aarch64/aarch64.h (AARCH64_ISA_LSE): New.
(TARGET_LSE): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226857 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago* gcc.dg/tree-ssa/vrp33.c: Add -fno-tree-fre.
schwab [Thu, 13 Aug 2015 10:26:04 +0000 (10:26 +0000)]
* gcc.dg/tree-ssa/vrp33.c: Add -fno-tree-fre.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226856 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 13 Aug 2015 10:18:47 +0000 (10:18 +0000)]
2015-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62164
* g++.dg/torture/pr62164.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226855 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Richard Biener <rguenther@suse.de>
rguenth [Thu, 13 Aug 2015 09:39:50 +0000 (09:39 +0000)]
2015-08-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/67191
* tree-ssa-sccvn.c (sccvn_dom_walker::before_dom_children): Remove
assert we value-numbered last stmts operand because it can validly
trigger for unreachable code.

* gcc.dg/torture/pr67191.c: New testcase.
* g++.dg/torture/pr67191.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226854 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[RTL-ifcvt] Improve conditional select ops on immediates (fix failing x86_64 cmov...
ktkachov [Thu, 13 Aug 2015 09:11:13 +0000 (09:11 +0000)]
[RTL-ifcvt] Improve conditional select ops on immediates (fix failing x86_64 cmov tests)

PR rtl-optimization/67103
* ifcvt.c (noce_try_store_flag_constants): Move
x = (-(test != 0) & (b - a)) + a transformation to...
(noce_try_cmove): ... Here.  Try it if normal conditional
move fails.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226853 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-12 Richard Biener <rguenther@suse.de>
rguenth [Thu, 13 Aug 2015 07:52:06 +0000 (07:52 +0000)]
2015-08-12  Richard Biener  <rguenther@suse.de>

* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize
comparison operand order and commutative ternary op operand order.
(sccvn_dom_walker::cond_stack): New state to track temporary
expressions.
(sccvn_dom_walker::after_dom_children): Remove tempoary expressions
no longer valid.
(sccvn_dom_walker::record_cond): Add a single temporary conditional
expression.
(sccvn_dom_walker::record_conds): Add a temporary conditional
expressions and all related expressions also true/false.
(sccvn_dom_walker::before_dom_children): Record temporary
expressions based on the controlling condition of a single
predecessor.  When trying to simplify a conditional statement
lookup expressions we might have inserted earlier.

* testsuite/gcc.dg/tree-ssa/ssa-fre-47.c: New testcase.
* testsuite/gcc.dg/tree-ssa/ssa-fre-48.c: Likewise.
* testsuite/gcc.dg/tree-ssa/ssa-fre-49.c: Likewise.
* testsuite/g++.dg/tree-ssa/pr61034.C: Adjust.
* testsuite/gcc.dg/fold-compare-2.c: Likewise.
* testsuite/gcc.dg/pr50763.c: Likewise.
* testsuite/gcc.dg/predict-3.c: Likewise.
* testsuite/gcc.dg/tree-ssa/20030709-2.c: Likewise.
* testsuite/gcc.dg/tree-ssa/pr19831-3.c: Likewise.
* testsuite/gcc.dg/tree-ssa/pr20657.c: Likewise.
* testsuite/gcc.dg/tree-ssa/pr21001.c: Likewise.
* testsuite/gcc.dg/tree-ssa/pr37508.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp04.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp07.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp09.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp16.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp20.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp25.c: Likewise.
* testsuite/gcc.dg/tree-ssa/vrp87.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226852 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[MIPS] Remove W32 and W64 pseudo-processors.
rts [Thu, 13 Aug 2015 07:41:45 +0000 (07:41 +0000)]
[MIPS] Remove W32 and W64 pseudo-processors.

gcc/
* config/mips/mips.c (mips_rtx_cost_data): Remove costs for W32 and W64
pseudo-processors.
* config/mips/mips.md (processor): Remove w32 and w64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226851 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Richard Biener <rguenther@suse.de>
rguenth [Thu, 13 Aug 2015 07:06:10 +0000 (07:06 +0000)]
2015-08-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66502
PR tree-optimization/67167
* tree-ssa-sccvn.c (vn_phi_compute_hash): Do not include
backedge arguments.
(vn_phi_lookup): Adjust.
(vn_phi_insert): Likewise.
(visit_phi): Prefer to value-number to another PHI node
over value-numbering to a PHI argument.
(init_scc_vn): Mark DFS back edges.

* gcc.dg/tree-ssa/ssa-fre-46.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226850 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Richard Biener <rguenther@suse.de>
rguenth [Thu, 13 Aug 2015 06:59:25 +0000 (06:59 +0000)]
2015-08-13  Richard Biener  <rguenther@suse.de>

* gimple.h (gcall::code_): New constant static member.
(gcond::code_): Likewise.
* gimple.c (gcall::code_): Define.
(gcond::code_): Likewise.
(is_a_helper <const gcond *>): Add.
(gimple_call_lhs): Use GIMPLE_CHECK2 in the gimple overload
and forward to a new gcall overload with less checking and a
cheaper way to access the operand.
(gimple_call_lhs_ptr): Likewise.
(gimple_call_set_lhs): Likewise.
(gimple_call_internal_p): Likewise.
(gimple_call_with_bounds_p): Likewise.
(gimple_call_set_with_bounds): Likewise.
(gimple_call_internal_fn): Likewise.
(gimple_call_set_ctrl_altering): Likewise.
(gimple_call_ctrl_altering_p): Likewise.
(gimple_call_fntype): Likewise.
(gimple_call_fn): Likewise.
(gimple_call_fn_ptr): Likewise.
(gimple_call_set_fndecl): Likewise.
(gimple_call_fndecl): Likewise.
(gimple_call_chain): Likewise.
(gimple_call_num_args): Likewise.
(gimple_call_arg): Likewise.
(gimple_call_arg_ptr): Likewise.
(gimple_call_set_arg): Likewise.
(gimple_call_noreturn_p): Likewise.
(gimple_cond_code): Likewise.
(gimple_cond_lhs): Likewise.
(gimple_cond_rhs): Likewise.
(gimple_has_lhs): Reduce checking.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226849 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-13 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Thu, 13 Aug 2015 04:37:22 +0000 (04:37 +0000)]
2015-08-13  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

PR middle-end/25529
* match.pd (div (mult @0 @1) @1) : New simplifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226847 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago compiler: Flatten erroneous subtrees into errors.
ian [Thu, 13 Aug 2015 01:04:42 +0000 (01:04 +0000)]
compiler: Flatten erroneous subtrees into errors.

    Between the lowering and flattening passes of the compiler, there are
    several passes that modify the lowered Go parse tree and as errors are
    discovered, several nodes transform into error nodes.  However, for a
    higher level node such as a construction expression, the erroneous
    nodes in the subtrees might not propagate their error.  The flatten
    phase for a node now looks for errors in the subtree and flattens the
    node into an error node if any are found.

    Fixes golang/go#11559, golang/go#11536, golang/go#11558.

    Reviewed-on: https://go-review.googlesource.com/13097

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226845 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Thu, 13 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226844 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2015-08-12 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 12 Aug 2015 22:38:04 +0000 (22:38 +0000)]
2015-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53330
* g++.dg/init/new42.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226840 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[gcc]
meissner [Wed, 12 Aug 2015 21:54:23 +0000 (21:54 +0000)]
[gcc]
2015-08-12  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/67071
* config/rs6000/predicates.md (easy_vector_constant_vsldoi): New
predicate to allow construction of vector constants using the
VSLDOI vector shift instruction.

* config/rs6000/rs6000-protos.h (vspltis_shifted): Add
declaration.

* config/rs6000/rs6000.c (vspltis_shifted): New function to return
the number of bytes to be shifted left and filled in with either
all zero or all one bits.
(gen_easy_altivec_constant): Call vsplitis_shifted if no other
methods exist.
(output_vec_const_move): On power8, generate XXLORC to generate
a vector constant with all 1's. Do a split if we need to use a
VSLDOI instruction.

* config/rs6000/rs6000.h (EASY_VECTOR_MSB): Use mode mask to
properly test for the MSB.

* config/rs6000/altivec.md (VSLDOI splitter): Add splitter for
vector constants that can be created with VSLDOI.

[gcc/testsuite]
2015-08-12  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/67071
* gcc.target/powerpc/pr67071-1.c: New file to test PR 67071 new
vector constants.
* gcc.target/powerpc/pr67071-2.c: Likewise.
* gcc.target/powerpc/pr67071-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226836 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoRevert "replace several uses of the anon namespace with GCC_FINAL"
tbsaunde [Wed, 12 Aug 2015 20:09:33 +0000 (20:09 +0000)]
Revert "replace several uses of the anon namespace with GCC_FINAL"

This reverts commit daa5a8a3cf9b04cd9af5544c61e12e6dca14f870.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226834 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67104
jason [Wed, 12 Aug 2015 18:08:45 +0000 (18:08 +0000)]
PR c++/67104
* constexpr.c (cxx_eval_array_reference): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226833 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67104
jason [Wed, 12 Aug 2015 18:02:43 +0000 (18:02 +0000)]
PR c++/67104
* constexpr.c (cxx_eval_array_reference): Handle sparse
CONSTRUCTORs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226830 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67108
jason [Wed, 12 Aug 2015 18:02:35 +0000 (18:02 +0000)]
PR c++/67108
* decl2.c (c_parse_final_cleanups): Set at_eof to 2 at end.
* error.c (dump_template_bindings): Don't tsubst in that case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226829 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoxtensa: add -mauto-litpools option
jcmvbkbc [Wed, 12 Aug 2015 17:36:45 +0000 (17:36 +0000)]
xtensa: add -mauto-litpools option

With support from assembler this option allows compiling huge functions,
where single literal pool at the beginning of a function may not be
reachable by L32R instructions at its end.

Currently assembler --auto-litpools option cannot deal with literals
used from multiple locations separated by more than 256 KBytes of code.
Don't turn constants into literals, instead use MOVI instruction to load
them into registers and let the assembler turn them into literals as
necessary.

2015-08-12  Max Filippov  <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/constraints.md (define_constraint "Y"): New
constraint.
* config/xtensa/elf.h (ASM_SPEC): Add m(no-)auto-litpools.
* config/xtensa/linux.h (ASM_SPEC): Likewise.
* config/xtensa/predicates.md (move_operand): Match constants
and symbols in the presence of TARGET_AUTO_LITPOOLS.
* config/xtensa/xtensa.c (xtensa_valid_move): Don't allow
immediate references to TLS data.
(xtensa_emit_move_sequence): Don't force constants to memory in
the presence of TARGET_AUTO_LITPOOLS.
(print_operand): Add 'y' format, same as default, but capable of
printing SF mode constants as well.
* config/xtensa/xtensa.md (movsi_internal, movhi_internal)
(movsf_internal): Add movi pattern that loads literal.
(movsf, movdf): Don't force constants to memory in the presence
of TARGET_AUTO_LITPOOLS.
(movdf_internal): Add 'Y' constraint.
* config/xtensa/xtensa.opt (mauto-litpools): New option.
* doc/invoke.text (Xtensa options): Document -mauto-litpools.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226828 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/67161
jason [Wed, 12 Aug 2015 17:33:39 +0000 (17:33 +0000)]
PR c++/67161
* error.c (dump_decl) [TEMPLATE_ID_EXPR]: Pass
TFF_NO_OMIT_DEFAULT_TEMPLATE_ARGUMENTS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226827 138bc75d-0d04-0410-961f-82ee72b054a4