platform/upstream/linaro-gcc.git
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

8 years ago PR c++/55095
mpolacek [Wed, 12 Aug 2015 17:25:23 +0000 (17:25 +0000)]
PR c++/55095
* c-common.c (maybe_warn_shift_overflow): Properly handle
left-shifting 1 into the sign bit.

* c-c++-common/Wshift-overflow-6.c: New test.
* c-c++-common/Wshift-overflow-7.c: New test.
* g++.dg/cpp1y/left-shift-2.C: New test.

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

8 years ago compiler: Don't make gc symbol for bad array type.
ian [Wed, 12 Aug 2015 17:21:11 +0000 (17:21 +0000)]
compiler: Don't make gc symbol for bad array type.

    When parsing a malformed array type, i.e. invalid length, gccgo
    would loop indefinitely based off of a uninitialized length variable.

    Fixes golang/go#11539.

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

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

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

PR c++/52742
* g++.dg/cpp0x/pr52742.C: New.

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

8 years ago * config/arm/arm-fpus.def: Replace booleans with feature flags.
mwahab [Wed, 12 Aug 2015 15:42:31 +0000 (15:42 +0000)]
* config/arm/arm-fpus.def: Replace booleans with feature flags.
Update comment.
* config/arm/arm.c (ARM_FPU): Update macro.
* config/arm/arm.h (TARGET_NEON_FP16): Update feature test.
(TARGET_FP16): Likewise.
(TARGET_CRYPTO): Likewise.
(TARGET_NEON): Likewise.
(struct arm_fpu_desc): Remove fields neon, fp16 and crypto.  Add
field features.

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

8 years agoFix warnings when bootstrapping on darwin with vtable verification enabled.
ctice [Wed, 12 Aug 2015 15:40:11 +0000 (15:40 +0000)]
Fix warnings when bootstrapping on darwin with vtable verification enabled.

libstdc++-v3/ChangeLog:

2015-08-11  Caroline Tice <cmtice@google.com>

        PR 66521, Contributed by Eric Gallager
        * acinclude.m4 (VTV_CXXLINKFLAGS): Make this variable OS-specific, and
        fix the rpath flag to work properly for darwin.
        * configure: Regenerated.

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

8 years agoRemove --with-host-libstdcxx
vries [Wed, 12 Aug 2015 15:13:35 +0000 (15:13 +0000)]
Remove --with-host-libstdcxx

2015-08-12  Tom de Vries  <tom@codesourcery.com>

PR other/67092
PR other/67098
* configure.ac: Remove --with_host_libstdcxx support.
* configure: Regenerate.

* doc/install.texi: Remove --with_host_libstdcxx item.  Update
--with-stage1-libs, --with-boot-ldflags and --with-boot-libs items
accordingly.  Mention default for --with-stage1-ldflags.

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

8 years ago * config/arm/arm.h (arm_fpu_feature_set): New.
mwahab [Wed, 12 Aug 2015 15:03:29 +0000 (15:03 +0000)]
* config/arm/arm.h (arm_fpu_feature_set): New.
(ARM_FPU_FSET_HAS): New.
(FPU_FL_NONE): New.
(FPU_FL_NEON): New.
(FPU_FL_FP16): New.
(FPU_FL_CRYPTO): New.

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

8 years agoAdd Knights Landing support to __builtin_cpu_is
hjl [Wed, 12 Aug 2015 14:52:22 +0000 (14:52 +0000)]
Add Knights Landing support to __builtin_cpu_is

This patch adds Knights Landing support to __builtin_cpu_is.

gcc/testsuite/

* gcc.target/i386/builtin_target.c (check_intel_cpu_model):
Check Knights Landing support.

libgcc/

* config/i386/cpuinfo.c (processor_types): Add INTEL_KNL.
(get_intel_cpu): Add Knights Landing support.

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

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

PR c++/47461
* g++.dg/warn/Wunused-result-1.C: New.

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

8 years ago[AArch64] Do not ICE after apologising for -mcmodel=large -fPIC
ktkachov [Wed, 12 Aug 2015 14:36:35 +0000 (14:36 +0000)]
[AArch64] Do not ICE after apologising for -mcmodel=large -fPIC

* config/aarch64/aarch64.c (initialize_aarch64_code_model): Break
after -mcmodel=large -fPIC sorry.

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

8 years ago2015-08-12 Richard Biener <rguenther@suse.de>
rguenth [Wed, 12 Aug 2015 14:27:40 +0000 (14:27 +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.

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

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

8 years ago2015-08-12 Yvan Roux <yvan.roux@linaro.org>
yroux [Wed, 12 Aug 2015 13:27:41 +0000 (13:27 +0000)]
2015-08-12  Yvan Roux  <yvan.roux@linaro.org>

PR target/67127
* config/arm/arm.md (movdi): Restrict illegitimate ldrd/strd checking
to ARM core registers.

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

8 years ago * tree-vrp.c (simplify_min_or_max_using_ranges): New.
nathan [Wed, 12 Aug 2015 13:08:23 +0000 (13:08 +0000)]
* tree-vrp.c (simplify_min_or_max_using_ranges): New.
(simplify_stmt_using_ranges): Simplify MIN and MAX exprs.

testsuite/
* gcc.dg/vrp-min-max-1.c: New.
* gcc.dg/vrp-min-max-2.c: New.

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

8 years ago * c-decl.c (grokdeclarator): Call error_at instead of error and pass
mpolacek [Wed, 12 Aug 2015 11:26:39 +0000 (11:26 +0000)]
* c-decl.c (grokdeclarator): Call error_at instead of error and pass
LOC to it.

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

8 years ago * doc/xml/manual/appendix_contributing.xml: Update patch email policy.
redi [Wed, 12 Aug 2015 10:47:30 +0000 (10:47 +0000)]
* doc/xml/manual/appendix_contributing.xml: Update patch email policy.
* doc/xml/manual/status_cxx2017.xml: Update status table.
* doc/html/manual/*: Regenerate.

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

8 years ago[MIPS] Scheduler fix for the 74k & 24k.
rts [Wed, 12 Aug 2015 10:44:56 +0000 (10:44 +0000)]
[MIPS] Scheduler fix for the 74k & 24k.

2015-08-12  Simon Dardis  <simon.dardis@imgtec.com>

gcc/
* config/mips/mips.c (mips_store_data_bypass_p): Bring code into
line with comments.
* config/mips/sb1.md: Update usage of mips_store_data_bypass_p.

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

8 years ago2015-08-12 Richard Biener <rguenther@suse.de>
rguenth [Wed, 12 Aug 2015 07:42:31 +0000 (07:42 +0000)]
2015-08-12  Richard Biener  <rguenther@suse.de>

* gimple.h (remove_pointer): New trait.
(GIMPLE_CHECK2): New inline template function.
(gassign::code_): New constant static member.
(is_a_helper<const gassign *>): Add.
(gimple_assign_lhs): Use GIMPLE_CHECK2 in the gimple overload
and forward to a new gassign overload with less checking and a
cheaper way to access the operand.
(gimple_assign_lhs_ptr): Likewise.
(gimple_assign_set_lhs): Likewise.
(gimple_assign_rhs1, gimple_assign_rhs1_ptr, gimple_assign_set_rhs1):
Likewise.
(gimple_assign_rhs2, gimple_assign_rhs2_ptr, gimple_assign_set_rhs2):
Likewise.
(gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3):
Likewise.
(gimple_assign_rhs_code): Likewise.
* gimple.c (gassign::code_): Define.

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

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

* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Eliminate edges marked as not executable by SCCVN.
* tree-ssa-sccvn.c: Include gimple-iterator.h.
(cond_dom_walker): Rename to sccvn_dom_walker.
(sccvn_dom_walker::before_dom_children): Value-number defs
of all stmts.
(run_scc_vn): Remove loop value-numbering all SSA names.
Drop not visited SSA names to varying.

* gcc.dg/tree-ssa/ssa-fre-43.c: Adjust.

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

8 years agoFix vect/trapv-vect-reduc-4.c for sparc
vries [Wed, 12 Aug 2015 05:50:55 +0000 (05:50 +0000)]
Fix vect/trapv-vect-reduc-4.c for sparc

2015-08-12  Tom de Vries  <tom@codesourcery.com>

PR testsuite/67175
* gcc.dg/vect/trapv-vect-reduc-4.c: Add reduction detection scan.
Handle absence of vector min/max for sparc.

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

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

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

8 years ago compiler: Check for EOF in malformed signatures.
ian [Tue, 11 Aug 2015 23:11:36 +0000 (23:11 +0000)]
compiler: Check for EOF in malformed signatures.

    When parsing a malformed function declaration with invalid parameters,
    gccgo would infinitely loop looking for the end of the function
    declaration.

    Fixes golang/go#11530, golang/go#11531.

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

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

8 years ago compiler: Handle newlines in general comments.
ian [Tue, 11 Aug 2015 22:45:32 +0000 (22:45 +0000)]
compiler: Handle newlines in general comments.

    On comments, the specification says
    (http://golang.org/ref/spec#Comments): General comments start with the
    character sequence /* and continue through the character sequence */.
    A general comment containing one or more newlines acts like a newline,
    otherwise it acts like a space.

    Fixes golang/go#11528.

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

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

8 years agoreplace several uses of the anon namespace with GCC_FINAL
tbsaunde [Tue, 11 Aug 2015 22:39:37 +0000 (22:39 +0000)]
replace several uses of the anon namespace with GCC_FINAL

gcc/ChangeLog:

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

* compare-elim.c, dce.c, dse.c, gimple-ssa-isolate-paths.c,
gimple-ssa-strength-reduction.c, graphite.c, init-regs.c,
ipa-pure-const.c, ipa-visibility.c, ipa.c, mode-switching.c,
omp-low.c, reorg.c, sanopt.c, trans-mem.c, tree-eh.c,
tree-if-conv.c, tree-ssa-copyrename.c, tree-ssa-dce.c,
tree-ssa-dom.c, tree-ssa-dse.c, tree-ssa-forwprop.c,
tree-ssa-sink.c, tree-ssanames.c, tree-stdarg.c, tree-tailcall.c,
tree-vect-generic.c, tree.c, ubsan.c, var-tracking.c,
vtable-verify.c, web.c: Use GCC_FINAL instead of the anonymous
namespace.

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

8 years agoadd GCC_FINAL to ansidecl.h
tbsaunde [Tue, 11 Aug 2015 22:39:31 +0000 (22:39 +0000)]
add GCC_FINAL to ansidecl.h

include/ChangeLog:

2015-08-11  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* ansidecl.h (GCC_FINAL): New macro.

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

8 years ago compiler: Don't make void-typed temporaries.
ian [Tue, 11 Aug 2015 21:37:26 +0000 (21:37 +0000)]
compiler: Don't make void-typed temporaries.

    Fixes golang/go#11568.

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

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

8 years ago * gcc.target/i386/avx2-vect-shift.c: Remove unneeded dg directives.
uros [Tue, 11 Aug 2015 18:27:46 +0000 (18:27 +0000)]
* gcc.target/i386/avx2-vect-shift.c: Remove unneeded dg directives.

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

8 years ago * configure.ac (tools/gjdoc): Depend on CREATE_WRAPPERS.
uros [Tue, 11 Aug 2015 17:59:25 +0000 (17:59 +0000)]
* configure.ac (tools/gjdoc): Depend on CREATE_WRAPPERS.
* configure: Regenerate.
* tools/Makefile.am: Remove unneeded dependencies for Automake 1.11.
* tools/Makefile.in: Regenerate.

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

8 years agolibgcc/ChangeLog:
uros [Tue, 11 Aug 2015 17:53:41 +0000 (17:53 +0000)]
libgcc/ChangeLog:

PR target/66954
* config/i386/cpuinfo.c (enum processor_features): Add FEATURE_PCLMUL.
(get_available_features): Handle FEATURE_PCLMUL.

gcc/ChangeLog:

PR target/66954
* config/i386/i386.c (get_builtin_code_for_version): Add P_PCLMUL
to enum feature_priority and feature_list.
(fold_builtin_cpu): Add F_PCLMUL to enum processor_features
and isa_names_table.

gcc/testsuite/ChangeLog:

PR target/66954
* g++.dg/ext/mv25.C: New test.

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

8 years agogcc/
ienkovich [Tue, 11 Aug 2015 13:52:17 +0000 (13:52 +0000)]
gcc/

* tree-vect-stmts.c (vectorizable_shift): Add missed test on
vect_induction_def.

gcc/testsuite:

* gcc.target/i386/avx2-vect-shift.c: New test.

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

8 years agogcc/ChangeLog:
manu [Tue, 11 Aug 2015 13:34:00 +0000 (13:34 +0000)]
gcc/ChangeLog:

2015-08-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/66098
PR c/66711
* diagnostic.c (diagnostic_classify_diagnostic): Take -Werror into
account when deciding what was the command-line status.

gcc/testsuite/ChangeLog:

2015-08-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/66098
PR c/66711
* gcc.dg/pragma-diag-3.c: New test.
* gcc.dg/pragma-diag-4.c: New test.

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

8 years ago * tree-vrp.c (simplify_abs_using_ranges): Simplify.
nathan [Tue, 11 Aug 2015 12:34:43 +0000 (12:34 +0000)]
* tree-vrp.c (simplify_abs_using_ranges): Simplify.

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

8 years ago * tree-ssa-phiopt.c (minmax_replacement): Create new ssa name if
nathan [Tue, 11 Aug 2015 12:34:06 +0000 (12:34 +0000)]
* tree-ssa-phiopt.c (minmax_replacement): Create new ssa name if
we're not the only contributor to target phi.

testsuite/
* c-c++-common/dfp/operator-comma.c: Call init function.
* c-c++-common/dfp/convert-dfp-2.c: New test.

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

8 years ago[AArch64][Obivious] Add the missing ',' for enumeration element
jiwang [Tue, 11 Aug 2015 11:17:28 +0000 (11:17 +0000)]
[AArch64][Obivious] Add the missing ',' for enumeration element

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

gcc/
  * config/aarch64/aarch64.h (REG_CLASS_NAMES): Add the missing ',' after
  FIXED_REG0.

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

8 years agoAdd todo comment for move_sese_region_to_fn
vries [Tue, 11 Aug 2015 09:15:19 +0000 (09:15 +0000)]
Add todo comment for move_sese_region_to_fn

2015-08-11  Tom de Vries  <tom@codesourcery.com>

* tree-cfg.c (move_sese_region_to_fn): Add todo comment.

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

8 years agoFix test failure on Solaris 9 where strtod() does not accept hexadecimals
ibuclaw [Tue, 11 Aug 2015 07:12:19 +0000 (07:12 +0000)]
Fix test failure on Solaris 9 where strtod() does not accept hexadecimals

2015-08-11  Iain Buclaw  <ibuclaw@gdcproject.org>

libiberty/

* d-demangle.c (dlang_parse_real): Remove call to strtod.
(strtod): Remove declaration.
* testsuite/d-demangle-expected: Update float and complex literal
tests to check correct hexadecimal demangling.

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

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

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

8 years ago2015-08-10 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 10 Aug 2015 21:45:01 +0000 (21:45 +0000)]
2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>

PR libfortran/67140
* intrinsics/mvbits.c: Fix build for paltforms without c_int128_t.

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

8 years agoTreat model == 0x4f as Broadwell
hjl [Mon, 10 Aug 2015 19:19:05 +0000 (19:19 +0000)]
Treat model == 0x4f as Broadwell

gcc/testsuite/

* gcc.target/i386/builtin_target.c (check_intel_cpu_model):
Treat model == 0x4f as Broadwell.

libgcc/

* config/i386/cpuinfo.c (get_intel_cpu): Treat model == 0x4f as
Broadwell.

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

8 years agoUpdate -mtune=knl for Knights Landing
hjl [Mon, 10 Aug 2015 18:59:35 +0000 (18:59 +0000)]
Update -mtune=knl for Knights Landing

From:

https://software.intel.com/sites/default/files/managed/e9/b5/Knights-Corner-is-your-path-to-Knights-Landing.pdf

Knights Landing is “Based on Intel Atom core (based on Silvermont
microarchitecture) with many HPC enhancements.”

This patch replaces CPU_KNL with CPU_SLM to tune for Knights Landing.

* config/i386/i386.c (processor_alias_table): Replace CPU_KNL
with CPU_SLM.
* config/i386/i386.md (cpu): Remove knl.

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

8 years ago2015-08-10 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 10 Aug 2015 17:42:00 +0000 (17:42 +0000)]
2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>

PR libfortran/67140
* gfortran.map: Add _gfortran_mvbits_i16.
* intrinsics/mvbits.c: Generate mvbits for c_int128_t.

2015-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

PR libfortran/67140
* gfortran.dg/pr67140.f90: New test.

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

8 years ago[PR libgomp/65742, PR middle-end/66332] libgomp: Remove plugin for non-shared memory...
tschwinge [Mon, 10 Aug 2015 16:48:26 +0000 (16:48 +0000)]
[PR libgomp/65742, PR middle-end/66332] libgomp: Remove plugin for non-shared memory host execution

gcc/
* builtins.c (expand_builtin_acc_on_device) [ACCEL_COMPILER]: Emit
open-coded sequence.
* omp-low.c (oacc_process_reduction_data): Remove handline of
GOMP_DEVICE_HOST_NONSHM.
gcc/testsuite/
* c-c++-common/goacc/acc_on_device-2.c: Remove XFAIL for C.
include/
* gomp-constants.c (GOMP_DEVICE_HOST_NONSHM): Remove.
libgomp/
* libgomp-plugin.h (enum offload_target_type): Remove
OFFLOAD_TARGET_TYPE_HOST_NONSHM.
* openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
* openacc.h (enum acc_device_t): Likewise.
* openacc_lib.h: Likewise.
* oacc-init.c (name_of_acc_device_t): Don't handle it.
(acc_on_device): Just use __builtin_acc_on_device.
* testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
of acc_on_device builtin.
* plugin/plugin-host.h: Remove file.
* plugin/plugin-host.c: Likewise, but salvage some content into...
* oacc-host.c: ... this file.
* plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
* plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
* Makefile.in: Regenerate.
* configure: Likewise.
* testsuite/lib/libgomp.exp
(check_effective_target_openacc_host_nonshm_selected): Remove.
* testsuite/libgomp.oacc-c++/c++.exp: Don't handle
ACC_DEVICE_TYPE=host_nonshm.
* testsuite/libgomp.oacc-c/c.exp: Likewise.
* testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
* testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
* testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
* testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
* testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.

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

8 years agoEmpty libgomp for nvptx
tschwinge [Mon, 10 Aug 2015 15:53:33 +0000 (15:53 +0000)]
Empty libgomp for nvptx

* configure.ac (noconfigdirs): Don't add "target-libgomp" for target
nvptx*-*-*.
* configure: Regenerate.
libgomp/
* config/nvptx/affinity.c: New file.
* config/nvptx/alloc.c: Likewise.
* config/nvptx/bar.c: Likewise.
* config/nvptx/barrier.c: Likewise.
* config/nvptx/critical.c: Likewise.
* config/nvptx/env.c: Likewise.
* config/nvptx/error.c: Likewise.
* config/nvptx/fortran.c: Likewise.
* config/nvptx/iter.c: Likewise.
* config/nvptx/iter_ull.c: Likewise.
* config/nvptx/libgomp-plugin.c: Likewise.
* config/nvptx/lock.c: Likewise.
* config/nvptx/loop.c: Likewise.
* config/nvptx/loop_ull.c: Likewise.
* config/nvptx/mutex.c: Likewise.
* config/nvptx/oacc-async.c: Likewise.
* config/nvptx/oacc-cuda.c: Likewise.
* config/nvptx/oacc-host.c: Likewise.
* config/nvptx/oacc-init.c: Likewise.
* config/nvptx/oacc-mem.c: Likewise.
* config/nvptx/oacc-parallel.c: Likewise.
* config/nvptx/oacc-plugin.c: Likewise.
* config/nvptx/omp-lock.h: Likewise.
* config/nvptx/ordered.c: Likewise.
* config/nvptx/parallel.c: Likewise.
* config/nvptx/proc.c: Likewise.
* config/nvptx/ptrlock.c: Likewise.
* config/nvptx/sections.c: Likewise.
* config/nvptx/sem.c: Likewise.
* config/nvptx/single.c: Likewise.
* config/nvptx/splay-tree.c: Likewise.
* config/nvptx/target.c: Likewise.
* config/nvptx/task.c: Likewise.
* config/nvptx/team.c: Likewise.
* config/nvptx/time.c: Likewise.
* config/nvptx/work.c: Likewise.
* configure.ac: Don't probe pthreads support for host nvptx*-*-*.
* configure: Regenerate.
* configure.tgt (config_path): Set to "nvptx" for target
nvptx*-*-*.

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

8 years agoFix offloading machine mode stream reading
tschwinge [Mon, 10 Aug 2015 15:22:30 +0000 (15:22 +0000)]
Fix offloading machine mode stream reading

... in context of the GET_MODE_INNER changes applied in r226328.

gcc/
* lto-streamer-in.c (lto_input_mode_table): Adjust to
GET_MODE_INNER changes.
libgomp/
* testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.

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

8 years agoCorrectly advance iterator in offloading machine mode stream reading
tschwinge [Mon, 10 Aug 2015 15:22:24 +0000 (15:22 +0000)]
Correctly advance iterator in offloading machine mode stream reading

gcc/
* lto-streamer-in.c (lto_input_mode_table): Correctly advance
iterator.

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

8 years ago[AArch64] Recommit correct version for improving TLS descriptor pattern
jiwang [Mon, 10 Aug 2015 10:06:28 +0000 (10:06 +0000)]
[AArch64] Recommit correct version for improving TLS descriptor pattern

2015-08-06    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      Jiong Wang  <jiong.wang@arm.com>

gcc/
  * config/aarch64/aarch64.d (tlsdesc_small_pseudo_<mode>): New pattern.
  * config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
  (REG_CLASS_NAMES): Likewise.
  (REG_CLASS_CONTENTS): Likewise.
  * config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
  (aarch64_register_move_cost): Likewise.
  (aarch64_load_symref_appropriately): Invoke the new added pattern if
  possible.
  * config/aarch64/constraints.md (Uc0): New constraint.

gcc/testsuite/
  * gcc.target/aarch64/tlsdesc_hoist.c: New testcase.

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

8 years ago[AArch64] Revert wrong commit of "Improve TLS Descriptor pattern to release RTL loop...
jiwang [Mon, 10 Aug 2015 10:00:56 +0000 (10:00 +0000)]
[AArch64] Revert wrong commit of "Improve TLS Descriptor pattern to release RTL loop IV opt"

Revert the wrong commit of

  2015-08-06    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      Jiong Wang  <jiong.wang@arm.com>

* config/aarch64/aarch64.d (tlsdesc_small_pseudo_<mode>): New pattern.
* config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
* config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
(aarch64_register_move_cost): Likewise.
(aarch64_load_symref_appropriately): Invoke the new added pattern if
possible.
* config/aarch64/constraints.md (Uc0): New constraint.

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

8 years ago PR fortran/64022
uros [Mon, 10 Aug 2015 05:13:01 +0000 (05:13 +0000)]
PR fortran/64022
* gfortran.dg/ieee/large_4.f90: New test.

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

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

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

8 years agogcc/ChangeLog:
manu [Sun, 9 Aug 2015 19:30:17 +0000 (19:30 +0000)]
gcc/ChangeLog:

2015-08-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* doc/options.texi (EnabledBy): Document that the argument must be
a Common option.
* doc/invoke.texi (Wnull-dereference): Move after Wnonnull.
Not enabled by -Wall.
* optc-gen.awk: Give nicer error messages. Detect if the argument
of EnabledBy is not a Common option.
* common.opt (Wnull-dereference): Not enabled by -Wall.
* opt-functions.awk (lang_enabled_by): Nicer error messages.

gcc/c-family/ChangeLog:

2015-08-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c.opt (Wchkp): Use LangEnabledBy instead of EnabledBy.

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

8 years ago PR libfortran/66936
fxcoudert [Sun, 9 Aug 2015 16:43:42 +0000 (16:43 +0000)]
PR libfortran/66936
* io/unix.c (__MINGW32__): Undefine HAVE_UMASK.

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

8 years agoTreat model == 0x4f as Broadwell
hjl [Sun, 9 Aug 2015 13:59:08 +0000 (13:59 +0000)]
Treat model == 0x4f as Broadwell

From Intel SDM Vol 3:

Table 35-29 lists MSRs that are common to processors based on the
Broadwell microarchitectures (including CPUID signatures 06_3DH,
06_47H, 06_4FH, and 06_56H).

* config/i386/driver-i386.c (host_detect_local_cpu): Treat
model == 0x4f as Broadwell.

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

8 years ago * Makefile.am (libquadmath_la_SOURCES): Add math/logbq.c.
fxcoudert [Sun, 9 Aug 2015 08:46:52 +0000 (08:46 +0000)]
* Makefile.am (libquadmath_la_SOURCES): Add math/logbq.c.
* Makefile.in: Regenerate.
* libquadmath.texi: Document logbq.
* quadmath.h: Add logbq prototype.
* quadmath.map: Add logbq.
* quadmath_weak.h: Add logbq prototype.
* math/logbq.c: New file

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

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

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

8 years ago2015-08-09 Ville Voutilainen <ville.voutilainen@gmail.com>
ville [Sat, 8 Aug 2015 22:57:13 +0000 (22:57 +0000)]
2015-08-09  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement N4279, Improved insertion interface for unique-key maps.
* include/bits/stl_map.h (try_emplace, insert_or_assign): New.
* include/bits/stl_tree.h (_M_get_insert_unique_pos,
_M_get_insert_equal_pos, _M_get_insert_hint_unique_pos,
_M_get_insert_hint_equal_pos): Make public.
* include/bits/unordered_map.h (try_emplace, insert_or_assign): New.
* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
Likewise.
* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
* testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
Likewise.
* testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
Likewise.

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

8 years ago PR c++/67144
jason [Sat, 8 Aug 2015 22:04:34 +0000 (22:04 +0000)]
PR c++/67144
* call.c (joust): Only call more_constrained on decls.

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

8 years ago PR c++/67152
jason [Sat, 8 Aug 2015 22:01:39 +0000 (22:01 +0000)]
PR c++/67152
* pt.c (process_partial_specialization): Call
associate_classtype_constraints.

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

8 years ago PR c++/67159
jason [Sat, 8 Aug 2015 22:01:29 +0000 (22:01 +0000)]
PR c++/67159
* constraint.cc (finish_template_introduction):
SET_NON_DEFAULT_TEMPLATE_ARGS_COUNT.

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

8 years ago PR c++/67142
jason [Sat, 8 Aug 2015 22:01:21 +0000 (22:01 +0000)]
PR c++/67142
* pt.c (equal): Make sure tmpl is actually a template.

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

8 years ago PR c++/67114
jason [Sat, 8 Aug 2015 22:01:12 +0000 (22:01 +0000)]
PR c++/67114
* call.c (joust): Only call more_constrained on decls.

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

8 years ago PR fortran/67059
fxcoudert [Sat, 8 Aug 2015 19:59:16 +0000 (19:59 +0000)]
PR fortran/67059
* gfortranspec.c (lang_specific_driver): Adjust --version output.

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

8 years ago2015-08-08 Ville Voutilainen <ville.voutilainen@gmail.com>
ville [Sat, 8 Aug 2015 11:07:34 +0000 (11:07 +0000)]
2015-08-08  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement N4089 Safe conversions in unique_ptr<T[]> (LWG 2118)
and N4366 LWG 2228: Missing SFINAE rule in unique_ptr
templated assignment
* include/bits/unique_ptr.h
(__remove_cv, __is_derived_Tp): Remove.
(default_delete::default_delete(const default_delete<_Up[]>)):
Constrain with array convertibility.
(default_delete::operator(_Up*)): Turn into a template,
constrain with array convertibility.
(__safe_conversion_up): New, single object version.
(unique_ptr(unique_ptr<_Up, _Ep>&&)): Constrain with deleter
convertibility.
(unique_ptr::operator=(unique_ptr<_Up, _Ep>&&)): Likewise, and add
is_assignable as a constraint.
(__safe_conversion_up): Array version, renamed from __safe_conversion,
updated to implement N4089.
(__safe_conversion_raw): New.
(unique_ptr(_Up)): Turn into a template, constrain with array
convertibility.
(unique_ptr(_Up,
        typename conditional<is_reference<deleter_type>::value,
        deleter_type, const deleter_type&>::type)): Likewise.
(unique_ptr(_Up, typename
  remove_reference<deleter_type>::type&&)): Likewise.
(unique_ptr(unique_ptr<_Up, _Ep>&&)): Likewise.
(operator=(unique_ptr<_Up, _Ep>&&)): Likewise, and add
is_assignable as a constraint (array version).
(reset(_Up)): Turn into a template, constrain with array
convertibility.
(reset(nullptr_t)): New.
* testsuite/20_util/default_delete/48631_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
* testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
* testsuite/20_util/unique_ptr/dr2228.cc: New.
* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Adjust.

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

8 years agoWhen undoing symbols, also restore common block lists
mikael [Sat, 8 Aug 2015 10:40:06 +0000 (10:40 +0000)]
When undoing symbols, also restore common block lists

gcc/fortran/
2015-08-08  Bud Davis  <jmdavis@link.com>
    Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/59746
* symbol.c (gfc_restore_last_undo_checkpoint): Delete a common block
symbol if it was put in the list.

gcc/testsuite/
2015-08-08  Bud Davis  <jmdavis@link.com>

PR fortran/59746
* gfortran.dg/common_22.f90: New.

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

8 years ago PR rtl-optimization/67028
segher [Sat, 8 Aug 2015 01:51:27 +0000 (01:51 +0000)]
PR rtl-optimization/67028
* combine.c (simplify_comparison): Fix comment.  Rearrange code.
Add test to see if a const_int fits in the new mode.

gcc/testsuite/
PR rtl-optimization/67028
* gcc.dg/pr67028.c: New testcase.

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

8 years ago* config/rx/rx.c (rx_mode_dependent_address_p): Remove unneeded asserts.
dj [Sat, 8 Aug 2015 01:09:20 +0000 (01:09 +0000)]
* config/rx/rx.c (rx_mode_dependent_address_p): Remove unneeded asserts.

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

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

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

8 years ago PR libfortran/66458
fxcoudert [Fri, 7 Aug 2015 16:23:53 +0000 (16:23 +0000)]
PR libfortran/66458
* runtime/main.c (init): Only call set_fpu() if requested by user.

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

8 years agoAdd alternative_mask to ira_implicitly_set_insn_hard_regs
hjl [Fri, 7 Aug 2015 16:18:09 +0000 (16:18 +0000)]
Add alternative_mask to ira_implicitly_set_insn_hard_regs

Since ira_implicitly_set_insn_hard_regs may be called outside of
ira-lives.c, it can't use the local variable, preferred_alternatives.
This patch adds an alternative_mask argument to
ira_implicitly_set_insn_hard_regs.

gcc/

PR rtl-optimization/67029
* ira-color.c: Include "recog.h" before including "ira-int.h".
* target-globals.c: Likewise.
* ira-lives.c (ira_implicitly_set_insn_hard_regs): Add an
adds an alternative_mask argument and use it instead of
preferred_alternatives.
* ira.h (ira_implicitly_set_insn_hard_regs): Moved to ...
* ira-int.h (ira_implicitly_set_insn_hard_regs): Here.
* sched-deps.c: Include "ira-int.h" after including "ira.h".
(sched_analyze_insn): Update call to
ira_implicitly_set_insn_hard_regs.
* sel-sched.c: Include "ira-int.h" after including "ira.h".
(implicit_clobber_conflict_p): Update call to
ira_implicitly_set_insn_hard_regs.

gcc/testsuite/

PR rtl-optimization/67029
* gcc.dg/pr67029.c: New test.

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

8 years ago PR fortran/64104
fxcoudert [Fri, 7 Aug 2015 15:02:15 +0000 (15:02 +0000)]
PR fortran/64104

* expr.c (gfc_check_init_expr): Allow some IEEE functions in
constant expressions.
(external_spec_function): Allow some IEEE functions in specification
expressions.
* simplify.c (gfc_simplify_ieee_selected_real_kind): Remove.
(simplify_ieee_selected_real_kind, simplify_ieee_support,
matches_ieee_function_name, gfc_simplify_ieee_functions): New
functions.
* gfortran.h (gfc_simplify_ieee_selected_real_kind): Remove
prototype.
(gfc_simplify_ieee_functions): Add prototype.

* gfortran.dg/ieee/ieee_8.f90: New test.

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

8 years ago[AArch64] Check branch types for noplt testcases
jiwang [Fri, 7 Aug 2015 13:26:23 +0000 (13:26 +0000)]
[AArch64] Check branch types for noplt testcases

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

gcc/testsuite/
  * gcc.target/aarch64/noplt_1.c: Check branch type instead of relocation
  modifers.
  * gcc.target/aarch64/noplt_2.c: Likewise.
  * gcc.target/aarch64/noplt_3.c: Likewise.

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

8 years ago * Makefile.in (.INTERMEDIATE): Add gpl.pod.
uros [Fri, 7 Aug 2015 12:12:41 +0000 (12:12 +0000)]
* Makefile.in (.INTERMEDIATE): Add gpl.pod.

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

8 years ago libgo/testsuite: don't call kill without args
ian [Fri, 7 Aug 2015 10:10:00 +0000 (10:10 +0000)]
libgo/testsuite: don't call kill without args

    If the timeout subshell has no child processes,
    the "xargs | kill" will fail. Ensure there is
    some input for kill before calling it.

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

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

8 years agoville
jason [Fri, 7 Aug 2015 08:41:33 +0000 (08:41 +0000)]
ville

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

8 years ago* config/sh/sh.c (sh_recog_treg_set_expr): Return false during
kkojima [Fri, 7 Aug 2015 08:11:45 +0000 (08:11 +0000)]
* config/sh/sh.c (sh_recog_treg_set_expr): Return false during
expand phase to avoid codegen differences with -g.

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

8 years ago * doc/texi2pod.pl: Escape braces in regexp involving @strong{...}.
uros [Fri, 7 Aug 2015 06:38:07 +0000 (06:38 +0000)]
* doc/texi2pod.pl: Escape braces in regexp involving @strong{...}.

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

8 years ago Add C++ Concepts TS support.
jason [Fri, 7 Aug 2015 05:44:49 +0000 (05:44 +0000)]
Add C++ Concepts TS support.
gcc/c-family/
* c-common.c (c_common_reswords): Add __is_same_as, concept, requires.
* c-common.h (enum rid): Add RID_IS_SAME_AS, RID_CONCEPT, RID_REQUIRES.
(D_CXX_CONCEPTS, D_CXX_CONCEPTS_FLAGS): New.
* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_concepts.
* c-opts.c (set_std_cxx1z): Set flag_concepts.
* c.opt (fconcepts): New.
gcc/cp/
* constraint.cc, logic.cc: New files.
* Make-lang.in (CXX_AND_OBJCXX_OBJS): Add constraint.o and logic.o.
(c++.tags): Also process .cc files.
* call.c (enum rejection_reason_code): Add rr_constraint_failure.
(print_z_candidate): Handle it.
(constraint_failure): New.
(add_function_candidate): Check constraints.
(build_new_function_call): Handle evaluating concepts.
(joust): Check more_constrained.
* class.c (add_method): Check equivalently_constrained.
(build_clone): Copy constraints.
(currently_open_class): Return tree.
(resolve_address_of_overloaded_function): Check constraints.
* constexpr.c (cxx_eval_constant_expression): Handle REQUIRES_EXPR.
(potential_constant_expression_1): Likewise.
* cp-objcp-common.c (cp_tree_size): Handle CONSTRAINT_INFO.
(cp_common_init_ts): Handle WILDCARD_DECL and REQUIRES_EXPR.
* cp-tree.def: Add CONSTRAINT_INFO, WILDCARD_DECL, REQUIRES_EXPR,
SIMPLE_REQ, TYPE_REQ, COMPOUND_REQ, NESTED_REQ, PRED_CONSTR,
EXPR_CONSTR, TYPE_CONSTR, ICONV_CONSTR, DEDUCT_CONSTR,
EXCEPT_CONSTR, PARM_CONSTR, CONJ_CONSTR, DISJ_CONSTR.
* cp-tree.h (struct tree_constraint_info, check_nonnull)
(check_constraint_info, CI_TEMPLATE_REQS, CI_DECLARATOR_REQS)
(CI_ASSOCIATED_CONSTRAINTS, CI_NORMALIZED_CONSTRAINTS)
(CI_ASSUMPTIONS, TEMPLATE_PARMS_CONSTRAINTS)
(TEMPLATE_PARM_CONSTRAINTS, COMPOUND_REQ_NOEXCEPT_P)
(PLACEHOLDER_TYPE_CONSTRAINTS, PRED_CONSTR_EXPR, EXPR_CONSTR_EXPR)
(TYPE_CONSTR_TYPE, ICONV_CONSTR_EXPR, ICONV_CONSTR_TYPE)
(DEDUCT_CONSTR_EXPR, DEDUCT_CONSTR_PATTERN)
(DEDUCT_CONSTR_PLACEHOLDER, EXCEPT_CONSTR_EXPR, PARM_CONSTR_PARMS)
(PARM_CONSTR_OPERAND, CONSTRAINT_VAR_P, CONSTRAINED_PARM_CONCEPT)
(CONSTRAINED_PARM_EXTRA_ARGS, CONSTRAINED_PARM_PROTOTYPE)
(DECL_DECLARED_CONCEPT_P, WILDCARD_PACK_P, struct cp_unevaluated)
(struct local_specialization_stack, enum auto_deduction_context)
(variable_concept_p, concept_template_p)
(struct deferring_access_check_sentinel): New.
(enum cp_tree_node_structure_enum): Add TS_CP_CONSTRAINT_INFO.
(union lang_tree_node): Add constraint_info field.
(struct lang_decl_base): Add concept_p flag.
(enum cp_decl_spec): Add ds_concept.
(struct cp_declarator): Add requires_clause.
* cxx-pretty-print.c (cxx_pretty_printer::primary_expression)
(cxx_pretty_printer::expression): Handle REQUIRES_EXPR,
TRAIT_EXPR, *_CONSTR.
(pp_cxx_parameter_declaration_clause): Accept a chain of
PARM_DECLs.
(cxx_pretty_printer::declarator): Print requires-clause.
(pp_cxx_template_declaration): Likewise.
(pp_cxx_trait_expression): Handle CPTK_IS_SAME_AS.
(pp_cxx_requires_clause, pp_cxx_requirement)
(pp_cxx_requirement_list, pp_cxx_requirement_body)
(pp_cxx_requires_expr, pp_cxx_simple_requirement)
(pp_cxx_type_requirement, pp_cxx_compound_requirement)
(pp_cxx_nested_requirement, pp_cxx_predicate_constraint)
(pp_cxx_expression_constraint, pp_cxx_type_constraint)
(pp_cxx_implicit_conversion_constraint)
(pp_cxx_argument_deduction_constraint)
(pp_cxx_exception_constraint, pp_cxx_parameterized_constraint)
(pp_cxx_conjunction, pp_cxx_disjunction, pp_cxx_constraint): New.
* cxx-pretty-print.h: Declare them.
* decl.c (decls_match): Compare constraints.
(duplicate_decls): Likewise.  Remove constraints before freeing.
(cxx_init_decl_processing): Call init_constraint_processing.
(cp_finish_decl): Diagnose concept without initializer.
(grokfndecl, grokvardecl): Handle concepts and constraints.
(grokdeclarator): Handle concept, requires-clause.
(grokparms): No longer static.
(xref_tag_1): Check constraints.
(finish_function): Call check_function_concept.
(cp_tree_node_structure): Handle CONSTRAINT_INFO.
(check_concept_refinement, is_concept_var, check_concept_fn): New.
* decl2.c (check_classfn): Compare constraints.
(mark_used): Don't instantiate concepts.
* error.c (dump_template_decl): Print constraints.
(dump_function_decl): Likewise.
(dump_expr): Handle REQUIRES_EXPR, *_REQ, *_CONSTR.
* lex.c (init_reswords): Set D_CXX_CONCEPTS.
* method.c (implicitly_declare_fn): Copy constraints from
inherited ctor.
* parser.h (struct cp_parser): Add in_result_type_constraint_p and
prevent_constrained_type_specifiers fields.
* parser.c (make_call_declarator): Add requires_clause parm.
(cp_parser_new): Clear prevent_constrained_type_specifiers.
(cp_parser_primary_expression): Handle RID_IS_SAME_AS, RID_REQUIRES.
(cp_parser_postfix_expression): Set prevent_constrained_type_specifiers.
(cp_parser_trait_expr): Handle RID_IS_SAME_AS.
(cp_parser_declaration): Handle concept introduction.
(cp_parser_member_declaration): Likewise.
(cp_parser_template_parameter): Handle constrained parameter.
(cp_parser_type_parameter): Handle constraints.
(cp_parser_decl_specifier_seq): Handle RID_CONCEPT.
(cp_parser_template_id): Handle partial concept id.
(cp_parser_type_name): Add overload that takes typename_keyword_p.
Handle constrained parameter.
(cp_parser_nonclass_name): Handle concept names.
(cp_parser_alias_declaration): Handle constraints.
(cp_parser_late_return_type_opt): Also handle requires-clause.
(cp_parser_type_id_1): Handle deduction constraint.
(cp_parser_parameter_declaration): Handle constrained parameters.
(cp_parser_class_specifier_1): Handle constraints.
(cp_parser_template_declaration_after_parameters): Split out from
cp_parser_template_declaration_after_export.
(cp_parser_single_declaration): Handle constraints.
(synthesize_implicit_template_parm): Handle constraints.
(cp_parser_maybe_concept_name, cp_parser_maybe_partial_concept_id)
(cp_parser_introduction_list, get_id_declarator)
(get_unqualified_id, is_constrained_parameter)
(cp_parser_check_constrained_type_parm)
(cp_parser_constrained_type_template_parm)
(cp_parser_constrained_template_template_parm)
(constrained_non_type_template_parm, finish_constrained_parameter)
(declares_constrained_type_template_parameter)
(declares_constrained_template_template_parameter)
(check_type_concept, cp_parser_maybe_constrained_type_specifier)
(cp_parser_maybe_concept_name, cp_parser_maybe_partial_concept_id)
(cp_parser_requires_clause, cp_parser_requires_clause_opt)
(cp_parser_requires_expression)
(cp_parser_requirement_parameter_list, cp_parser_requirement_body)
(cp_parser_requirement_list, cp_parser_requirement)
(cp_parser_simple_requirement, cp_parser_type_requirement)
(cp_parser_compound_requirement, cp_parser_nested_requirement)
(cp_parser_template_introduction)
(cp_parser_explicit_template_declaration)
(get_concept_from_constraint): New.
* pt.c (local_specialization_stack): Implement.
(maybe_new_partial_specialization): New.
(maybe_process_partial_specialization): Use it.
(retrieve_local_specialization, register_local_specialization)
(template_parm_to_arg, build_template_decl, extract_fnparm_pack)
(tsubst_expr): No longer static.
(spec_hasher::equal): Compare constraints.
(determine_specialization): Handle constraints.
(check_explicit_specialization): Handle concepts.
(process_template_parm): Handle constraints.
(end_template_parm_list): Add overload taking no arguments.
(process_partial_specialization): Handle concepts and constraints.
Register partial specializations of variable templates.
(redeclare_class_template): Handle constraints.
(convert_template_argument): Handle WILDCARD_DECL.  Check
is_compatible_template_arg.
(coerce_template_parameter_pack): Handle wildcard packs.
(coerce_template_parms): DR 1430 also applies to concepts.  Add
overloads taking fewer parameters.
(lookup_template_class_1): Handle constraints.
(lookup_template_variable): Concepts are always bool.
(finish_template_variable): Handle concepts and constraints.
(tsubst_friend_class): Handle constraints.
(gen_elem_of_pack_expansion_instantiation): Handle constraints.
(tsubst_pack_expansion): Handle local parameters.
(tsubst_decl) [FUNCTION_DECL]: Handle constraints.
(tsubst) [TEMPLATE_TYPE_PARM]: Handle deduction constraints.
(tsubst_copy_and_build): Handle REQUIRES_EXPR.
(more_specialized_fn, more_specialized_partial_spec): Check constraints.
(more_specialized_inst): Split out from most_specialized_instantiation.
(most_specialized_partial_spec): Check constraints.
(instantiate_decl): Never instantiate a concept.
(value_dependent_expression_p): Handle REQUIRES_EXPR, TYPE_REQ,
variable concepts.
(type_dependent_expression_p): Handle WILDCARD_DECL, REQUIRES_EXPR.
(instantiation_dependent_r): Handle REQUIRES_EXPR and concepts.
(do_auto_deduction): Add overload taking tsubst flags and context enum.
Handle constraints.
(get_template_for_ordering, most_constrained_function)
(is_compatible_template_arg, convert_wildcard_argument)
(struct constr_entry, struct constr_hasher, decl_constraints)
(valid_constraints_p, get_constraints, set_constraints)
(remove_constraints, init_constraint_processing): New.
* ptree.c (cxx_print_xnode): Handle CONSTRAINT_INFO.
* search.c (lookup_member): Do lookup in the open partial
instantiation.
* semantics.c (finish_template_template_parm): Handle constraints.
(fixup_template_type): New.
(finish_template_type): Call it.
(trait_expr_value, finish_trait_expr): Handle CPTK_IS_SAME_AS.
* tree.c (cp_tree_equal): Handle local parameters, CONSTRAINT_INFO.
(cp_walk_subtrees): Handle REQUIRES_EXPR.
* typeck.c (cp_build_function_call_vec): Check constraints.

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

8 years ago2015-08-06 Yaakov Selkowitz <yselkowi@redhat.com>
dj [Fri, 7 Aug 2015 05:13:52 +0000 (05:13 +0000)]
2015-08-06  Yaakov Selkowitz  <yselkowi@redhat.com>

* Makefile.def (libiconv): Define bootstrap=true.
Mark pdf/html/info as missing.
(configure-gcc): Depend on all-libiconv.
(all-gcc): Ditto.
(configure-libcpp): Ditto.
(all-libcpp): Ditto.
(configure-intl): Ditto.
(all-intl): Ditto.
* Makefile.in: Regenerate.

intl/
* configure: Reflects renaming of configure.in to configure.ac

libcpp/
* configure: Regenerate.

gcc/
* configure.ac: Define LIBICONV_DEP with in-tree libiconv.
* configure: Regenerate.

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

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

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

8 years agoMove one condition out of gfc_trans_scalar_assign
mikael [Thu, 6 Aug 2015 20:47:36 +0000 (20:47 +0000)]
Move one condition out of gfc_trans_scalar_assign

* trans.h (gfc_trans_scalar_assign): Remove fourth argument.
* trans-expr.c (gfc_trans_scalar_assign): Merge fourth into sixth
argument.
(gfc_conv_subref_array_arg, gfc_trans_subarray_assign,
 gfc_trans_subcomponent_assign, gfc_trans_assignment_1): Update callers.
* trans-array.c (gfc_conv_expr_descriptor): Ditto.
* trans-stmt.c (forall_make_variable_temp,
generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
gfc_trans_where_assign, gfc_trans_where_3): Ditto.

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

8 years agojit.dg/test-benchmark.c: add a summary of timings
dmalcolm [Thu, 6 Aug 2015 19:05:52 +0000 (19:05 +0000)]
jit.dg/test-benchmark.c: add a summary of timings

gcc/testsuite/ChangeLog:
* jit.dg/test-benchmark.c (main): Record all elapsed times at each
optimization level, and print a summary at the end.

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

8 years ago * runtime/compile_options.c (set_options): Fix typos.
fxcoudert [Thu, 6 Aug 2015 17:42:19 +0000 (17:42 +0000)]
* runtime/compile_options.c (set_options): Fix typos.

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

8 years ago PR c++/66533
jason [Thu, 6 Aug 2015 16:33:14 +0000 (16:33 +0000)]
PR c++/66533
* parser.c (cp_parser_primary_expression): Don't skip to the end
of the statement if we're parsing tentatively.

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