]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
7 years agoAdd a vect_get_scalar_dr_size helper function
rsandifo [Fri, 22 Sep 2017 16:26:43 +0000 (16:26 +0000)] 
Add a vect_get_scalar_dr_size helper function

This patch adds a helper function for getting the number of bytes
accessed by an unvectorised data reference, which helps when general
modes have a variable size.

2017-09-22  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* tree-vectorizer.h (vect_get_scalar_dr_size): New function.
* tree-vect-data-refs.c (vect_update_misalignment_for_peel): Use it.
(vect_enhance_data_refs_alignment): Likewise.

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

7 years ago[arm] Improve error checking in parsecpu.awk
vp [Fri, 22 Sep 2017 16:24:46 +0000 (16:24 +0000)] 
[arm] Improve error checking in parsecpu.awk

This patch adds a bit more error checking to parsecpu.awk to ensure
that statements are not missing arguments or have excess arguments
beyond those permitted.  It also slightly improves the handling of
errors so that we terminate properly if parsing fails and be as
helpful as we can while in the parsing phase.

2017-09-22  Richard Earnshaw  <richard.earnshaw@arm.com>

* config/arm/parsecpu.awk (fatal): Note that we've encountered an
error.  Only quit immediately if parsing is complete.
(BEGIN): Initialize fatal_err and parse_done.
(begin fpu, end fpu): Check number of arguments.
(begin arch, end arch): Likewise.
(begin cpu, end cpu): Likewise.
(cname, tune for, tune flags, architecture, fpu, option): Likewise.
(optalias): Likewise.

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

7 years ago[arm] auto-generate arm-isa.h from CPU descriptions
vp [Fri, 22 Sep 2017 16:17:11 +0000 (16:17 +0000)] 
[arm] auto-generate arm-isa.h from CPU descriptions

This patch autogenerates arm-isa.h from new entries in arm-cpus.in.
This has the primary advantage that it makes the description file more
self-contained, but it also solves the 'array dimensioning' problem
that Tamar recently encountered.  It adds two new constructs to
arm-cpus.in: features and fgroups.  Fgroups are simply a way of naming
a group of feature bits so that they can be referenced together.  We
follow the convention that feature bits are all lower case, while
fgroups are (predominantly) upper case. This is helpful as in some
contexts they share the same namespace. Most of the minor changes in
this patch are related to adopting this new naming convention.

2017-09-22  Richard Earnshaw  <richard.earnshaw@arm.com>

* config.gcc (arm*-*-*): Don't add arm-isa.h to tm_p_file.
* config/arm/arm-isa.h: Delete.  Move definitions to ...
* arm-cpus.in: ... here.  Use new feature and fgroup values.
* config/arm/arm.c (arm_option_override): Use lower case for feature
bit names.
* config/arm/arm.h (TARGET_HARD_FLOAT): Likewise.
(TARGET_VFP3, TARGET_VFP5, TARGET_FMA): Likewise.
* config/arm/parsecpu.awk (END): Add new command 'isa'.
(isa_pfx): Delete.
(print_isa_bits_for): New function.
(gen_isa): New function.
(gen_comm_data): Use print_isa_bits_for.
(define feature): New keyword.
(define fgroup): New keyword.
* config/arm/t-arm (TM_H): Remove.
(GTM_H): Add arm-isa.h.
(arm-isa.h): Add rule to generate file.
* common/config/arm/arm-common.c: (arm_canon_arch_option): Use lower
case for feature bit names.

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

7 years agoC++: underline parameters in mismatching function calls
dmalcolm [Fri, 22 Sep 2017 14:49:52 +0000 (14:49 +0000)] 
C++: underline parameters in mismatching function calls

gcc/cp/ChangeLog:
* call.c (get_fndecl_argument_location): New function.
(convert_like_real): Use it  when complaining about argument type
mismatches.
* cp-tree.h (struct cp_parameter_declarator): Add "loc" field.
* parser.c (make_parameter_declarator): Add "loc" param and use
it to initialize the new field.
(cp_parser_translation_unit): Add UNKNOWN_LOCATION for "loc" of
the "no_parameters" parameter.
(cp_parser_parameter_declaration_list): Set the location of the
result of grokdeclarator to be the parameter's loc, assuming no
errors.
(cp_parser_parameter_declaration): Generate a location for the
parameter and pass to make_parameter_declarator.

gcc/testsuite/ChangeLog:
* g++.dg/diagnostic/param-type-mismatch.C: Update expected results
to reflect highlighting of parameters; add test coverage for
callback parameters.

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

7 years ago PR sanitizer/77631
ian [Fri, 22 Sep 2017 13:38:10 +0000 (13:38 +0000)] 
PR sanitizer/77631
* configure.ac: Check for lstat and readlink.
* elf.c (lstat, readlink): Provide dummy versions if real versions
are not available.
* configure, config.h.in: Rebuild.

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

7 years ago2017-09-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Sep 2017 13:16:21 +0000 (13:16 +0000)] 
2017-09-22  Richard Biener  <rguenther@suse.de>

* graphite-isl-ast-to-gimple.c (graphite_verify): Inline into
single caller.
(graphite_regenerate_ast_isl): Do not reset SCEV.  Move debug
print of no dependency loops ...
* graphite.c (graphite_transform_loops): ... here.
(canonicalize_loop_closed_ssa_form): Work from inner to outer
loops.
(same_close_phi_node, remove_duplicate_close_phi,
make_close_phi_nodes_unique, defined_in_loop_p): Fold into ...
(canonicalize_loop_closed_ssa): ... here and simplify.
* graphite-optimize-isl.c: Include tree-vectorizer.h.
(optimize_isl): Use dump_printf_loc to tell when we stopped
optimizing because of an ISL timeout.

* gcc.dg/graphite/scop-24.c: New testcase.

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

7 years ago2017-09-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Sep 2017 12:00:55 +0000 (12:00 +0000)] 
2017-09-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82291
* tree-if-conv.c (predicate_mem_writes): Make sure to
remove writes in blocks predicated with false.

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

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

7 years ago2017-09-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Sep 2017 10:05:34 +0000 (10:05 +0000)] 
2017-09-22  Richard Biener  <rguenther@suse.de>

* sese.c: Include cfganal.h.
(if_region_set_false_region): Remove.
(create_if_region_on_edge): Likewise.
(move_sese_in_condition): Re-implement without destroying
dominators.

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

7 years ago2017-09-22 Paul Thomas <pault@gcc.gnu.org>
pault [Fri, 22 Sep 2017 08:38:31 +0000 (08:38 +0000)] 
2017-09-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/52832
* gfortran.dg/associate_31.f90 : Remove failing test.

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

7 years ago2017-09-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Sep 2017 07:31:32 +0000 (07:31 +0000)] 
2017-09-21  Richard Biener  <rguenther@suse.de>

* graphite-isl-ast-to-gimple.c (translate_pending_phi_nodes):
Verify both BBs contain loop PHI nodes before dispatching to
copy_loop_phi_args.
(graphite_regenerate_ast_isl): Do not recompute dominators,
do not verify three times.  Restructure for clarity.
* graphite-scop-detection.c (same_close_phi_node,
remove_duplicate_close_phi, make_close_phi_nodes_unique,
defined_in_loop_p, canonicalize_loop_closed_ssa,
canonicalize_loop_closed_ssa_form): Simplify, remove excess
checking and SSA rewrite, move to ...
* graphite.c: ... here.  Include ssa.h and tree-ssa-loop-manip.h.
(graphite_initialize): Do not pass in ctx, do not reset the
SCEV cache, compute only dominators.
(graphite_transform_loops): Allocate ISL ctx after
graphite_initialize.  Call canonicalize_loop_closed_ssa_form.
Maintain post-dominators only around build_scops.
* sese.c (if_region_set_false_region): Make static.  Free
and recompute dominators.
(move_sese_in_condition): Assert we don't get called with
post-dominators computed.
* sese.h (if_region_set_false_region): Remove.

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

7 years ago/gcc
uros [Fri, 22 Sep 2017 05:13:33 +0000 (05:13 +0000)] 
/gcc
        * config/i386/sse.md ("mov<mode>_internal"): Use <sseinsnmode>
mode attribute for TARGET_AVX512VL.

* config/i386/i386.opt (mprefer-avx256): New option.
* config/i386/i386.c (ix86_target_string): Add -mprefer-avx256
to flag_opts.
(ix86_preferred_simd_mode): Return 256-bit AVX modes
for TARGET_PREFER_AVX256.
* doc/invoke.texi (x86 Options): Document -mprefer-avx256.

/testsuite

        * gcc.target/i386/avx512f-constant-set.c: New test.

* g++.dg/ext/pr57362.C: Test __attribute__((target("prefer-avx256"))).
* gcc.target/i386/avx512f-prefer.c: New test.

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

7 years agoDaily bump.
gccadmin [Fri, 22 Sep 2017 00:16:16 +0000 (00:16 +0000)] 
Daily bump.

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

7 years ago<commit missing files>
meissner [Thu, 21 Sep 2017 22:41:08 +0000 (22:41 +0000)] 
<commit missing files>

2017-09-13  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/float128-fma1.c: New test.
* gcc.target/powerpc/float128-fma2.c: Likewise.
* gcc.target/powerpc/float128-sqrt1.c: Likewise.
* gcc.target/powerpc/float128-sqrt2.c: Likewise.

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

7 years ago * config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash):
law [Thu, 21 Sep 2017 22:03:59 +0000 (22:03 +0000)] 
* config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash):
Fix dump output if the only stack space is for pushed registers.

* lib/target-supports.exp
(check_effective_target_frame_pointer_for_non_leaf): Add
case for x86 Solaris.

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

7 years agoFix spu build after r253072
rsandifo [Thu, 21 Sep 2017 21:36:27 +0000 (21:36 +0000)] 
Fix spu build after r253072

2017-09-21  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
* config/spu/spu.c (spu_sched_adjust_cost): Update after renaming
of insn_cost.

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

7 years ago PR go/82284
ian [Thu, 21 Sep 2017 18:44:39 +0000 (18:44 +0000)] 
PR go/82284
* elf.c (backtrace_initialize): Set pd.exe_filename.

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

7 years ago2017-09-21 Paul Thomas <pault@gcc.gnu.org>
pault [Thu, 21 Sep 2017 18:40:21 +0000 (18:40 +0000)] 
2017-09-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/52832
* match.c (gfc_match_associate): Before failing the association
try again, allowing a proc pointer selector.

PR fortran/80120
PR fortran/81903
PR fortran/82121
* primary.c (gfc_match_varspec): Introduce 'tgt_expr', which
points to the associate selector, if any. Go through selector
references, after resolution for variables, to catch any full
or section array references. If a class associate name does
not have the same declared type as the selector, resolve the
selector and copy the declared type to the associate name.
Before throwing a no implicit type error, resolve all allowed
selector expressions, and copy the resulting typespec.

PR fortran/67543
* resolve.c (resolve_assoc_var): Selector must cannot be the
NULL expression and it must have a type.

PR fortran/78152
* resolve.c (resolve_symbol): Allow associate names to be
coarrays.

2017-09-21  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/78512
* gfortran.dg/associate_26.f90 : New test.

PR fortran/80120
* gfortran.dg/associate_27.f90 : New test.

PR fortran/81903
* gfortran.dg/associate_28.f90 : New test.

PR fortran/82121
* gfortran.dg/associate_29.f90 : New test.

PR fortran/67543
* gfortran.dg/associate_30.f90 : New test.

PR fortran/52832
* gfortran.dg/associate_31.f90 : New test.

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

7 years agoPR c/81882 - attribute ifunc documentation uses invalid code
msebor [Thu, 21 Sep 2017 17:19:16 +0000 (17:19 +0000)] 
PR c/81882 - attribute ifunc documentation uses invalid code

gcc/ChangeLog:

PR c/81882
* doc/extend.texi (attribute ifunc): Avoid relying on ill-formed
code (in C++) or code that triggers warnings.

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

7 years ago[demangler PATCH]: Revert and update generic lambda demangling
nathan [Thu, 21 Sep 2017 15:52:31 +0000 (15:52 +0000)] 
[demangler PATCH]: Revert and update generic lambda demangling

https://gcc.gnu.org/ml/gcc-patches/2017-09/msg01482.html
PR demangler/82195
* cp-demangle.c (d_name): Revert addition of 'toplevel' parm.
(has_return_type): Recurse for DEMANGLE_COMPONENT_LOCAL_NAME.
(d_encoding): Revert d_name change.  Use is_fnqual_component_type
to strip modifiers that do not belong.
(d_special_name, d_class_enum_type): Revert d_name call change.
(d_expresion_1): Commonize DEMANGLE_COMPONENT_UNARY building.
(d_local_name): Revert parsing of a function type.
(d_print_comp_inner): An inner LOCAL_NAME might contain a
TEMPLATE.
* testsuite/demangle-expected: Add & adjust tests

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

7 years ago * stor-layout.c (bit_from_pos): Do not distribute the conversion.
ebotcazou [Thu, 21 Sep 2017 15:45:36 +0000 (15:45 +0000)] 
* stor-layout.c (bit_from_pos): Do not distribute the conversion.

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

7 years ago2017-09-21 Tamar Christina <tamar.christina@arm.com>
tnfchris [Thu, 21 Sep 2017 14:45:03 +0000 (14:45 +0000)] 
2017-09-21  Tamar Christina  <tamar.christina@arm.com>

PR testsuite/78421
* lib/target-supports.exp (check_effective_target_vect_hw_misalign):
Invert arm check.

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

7 years agoRename existing insn_cost to insn_sched_cost
segher [Thu, 21 Sep 2017 14:32:34 +0000 (14:32 +0000)] 
Rename existing insn_cost to insn_sched_cost

haifa-sched exports an insn_cost function, but it is only used in a
few places and specialised to scheduling.  This patch renames it to
insn_sched_cost.

* haifa-sched.c: Rename insn_cost to insn_sched_cost.
* sched-rgn.c: Ditto.
* sel-sched-ir.c: Ditto.

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

7 years ago gcc/fortran/
cesar [Thu, 21 Sep 2017 13:59:26 +0000 (13:59 +0000)] 
gcc/fortran/
* openmp.c (gfc_match_oacc_wait): Don't restrict wait directive
arguments to constant integers.

gcc/testsuite/
* gfortran.dg/goacc/wait.f90: New test.

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

7 years agotoplev: read from /dev/urandom only when needed
amonakov [Thu, 21 Sep 2017 12:58:14 +0000 (12:58 +0000)] 
toplev: read from /dev/urandom only when needed

* toplev.h (set_random_seed): Adjust return type.
* toplev.c (init_local_tick): Move eager initialization of random_seed
to get_random_seed.  Adjust comment.
(init_random_seed): Inline to get_random_seed, delete.
(get_random_seed): Initialize random_seed lazily.
(set_random_seed): Do not return previous value.
(print_switch_value): Do not call get_random_seed.

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

7 years agoipa: fix dumping with deleted multiversioning nodes
amonakov [Thu, 21 Sep 2017 12:54:38 +0000 (12:54 +0000)] 
ipa: fix dumping with deleted multiversioning nodes

2017-09-21  Evgeny Kudryashov <kudryashov@ispras.ru>

* cgraph.c (delete_function_version): New, broken out from...
(cgraph_node::delete_function_version): ...here.  Rename to
cgraph_node::delete_function_version_by_decl.  Update all uses.
(cgraph_node::remove): Call delete_function_version.

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

7 years ago PR sanitizer/81715
jakub [Thu, 21 Sep 2017 12:26:34 +0000 (12:26 +0000)] 
PR sanitizer/81715
* tree-inline.c (expand_call_inline): Emit clobber stmts for
VAR_DECLs to which addressable non-volatile parameters are mapped
and for id->retvar after the return value assignment.  Clear
id->retval and id->retbnd after inlining.

* g++.dg/tree-ssa/pr8781.C (noop): Change argument type from
const predicate to const predicate & to avoid UB.
* g++.dg/opt/pr81715.C: New test.

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

7 years ago2017-09-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Sep 2017 12:12:33 +0000 (12:12 +0000)] 
2017-09-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82276
PR tree-optimization/82244
* tree-vrp.c (build_assert_expr_for): Set
SSA_NAME_OCCURS_IN_ABNORMAL_PHI if the variable we assert on
has it set.
(remove_range_assertions): Revert earlier change.

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

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

7 years agoPR71951: Fix unwinding with -fomit-frame-pointer
wilco [Thu, 21 Sep 2017 12:08:12 +0000 (12:08 +0000)] 
PR71951: Fix unwinding with -fomit-frame-pointer

As described in PR71951, if libgcc is built with -fomit-frame-pointer,
unwinding crashes, for example while doing a backtrace.  The underlying
reason is the Dwarf unwinder does not setup the frame pointer register
in the initialization code.  When later unwinding a function that uses
the frame pointer, it tries to read FP using _Unwind_GetGR, and this
crashes if has never restored FP.  To unwind correctly the first frame
must save and restore FP (it is unwound in a special way so that it
uses SP instead of FP).  This is done by adding -fno-omit-frame-pointer.

    gcc/
PR target/71951
* config/aarch64/aarch64.h (LIBGCC2_UNWIND_ATTRIBUTE): Define.

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

7 years ago2017-09-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Sep 2017 12:02:58 +0000 (12:02 +0000)] 
2017-09-21  Richard Biener  <rguenther@suse.de>

* graphite-isl-ast-to-gimple.c (graphite_regenerate_ast_isl):
Restore valid IL after code generation errors.
* graphite.c (graphite_transform_loops): Diagnose code
generation issues as MSG_MISSED_OPTIMIZATION and continue
with processing SCOPs.

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

7 years agoMake more use of simplify_gen_binary
rsandifo [Thu, 21 Sep 2017 11:14:01 +0000 (11:14 +0000)] 
Make more use of simplify_gen_binary

This patch replaces various places that previously used:

  if (GET_CODE (y) == CONST_INT)
    ... plus_constant (..., x, [-]INTVAL (y)) ...
  else
    ... gen_rtx_PLUS/MINUS (..., x, y) ...

with single calls to simplify_gen_binary.  This allows
them to handle polynomial integers as well as constants.

2017-09-21  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* calls.c (compute_argument_addresses): Use simplify_gen_binary
rather than choosing between plus_constant and gen_rtx_<CODE>.
* expr.c (emit_push_insn): Likewise.
(expand_expr_real_2): Likewise.

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

7 years agoAdd copy_rtx call to RTL loop unroller
rsandifo [Thu, 21 Sep 2017 11:10:48 +0000 (11:10 +0000)] 
Add copy_rtx call to RTL loop unroller

This is needed if the step is an unshared constant, like many
(const ...)s are.  Without this patch, libgfortran would fail
to build for SVE.

2017-09-21  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* loop-unroll.c (split_iv): Call copy_rtx on the step.

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

7 years agoFix unguarded uses of tree_to_uhwi
rsandifo [Thu, 21 Sep 2017 11:06:48 +0000 (11:06 +0000)] 
Fix unguarded uses of tree_to_uhwi

This patch uses tree_fits_uhwi_p to protect a previously unguarded
use of tree_to_uhwi.  Previously we would ICE for variable-sized types.

2017-09-20  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* tree.c (find_atomic_core_type): Check tree_fits_uhwi_p before
calling tree_to_uhwi.

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

7 years agoTighten tree-ssa-ccp.c:get_value_for_expr condition
rsandifo [Thu, 21 Sep 2017 11:00:43 +0000 (11:00 +0000)] 
Tighten tree-ssa-ccp.c:get_value_for_expr condition

bit_value_unop and bit_value_binop require constant values
to be INTEGER_CSTs:

  gcc_assert ((rval.lattice_val == CONSTANT
               && TREE_CODE (rval.value) == INTEGER_CST)
              || wi::sext (rval.mask, TYPE_PRECISION (TREE_TYPE (rhs))) == -1);

However, when deciding whether to record a constant value,
the for_bits_p handling in get_value_for_expr used a negative
test for ADDR_EXPR:

  else if (is_gimple_min_invariant (expr)
           && (!for_bits_p || TREE_CODE (expr) != ADDR_EXPR))

This patch uses a positive test for INTEGER_CST instead.

Existing tests showed the need for this once polynomial constants
are added.

2017-09-21  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* tree-ssa-ccp.c (get_value_for_expr): Use a positive test for
INTEGER_CST rather than a negative test for ADDR_EXPR.

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

7 years agoTweak
ebotcazou [Thu, 21 Sep 2017 11:00:21 +0000 (11:00 +0000)] 
Tweak

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

7 years agoAdd missing int_cst_rangeN checks to tree-vrp.c
rsandifo [Thu, 21 Sep 2017 10:53:40 +0000 (10:53 +0000)] 
Add missing int_cst_rangeN checks to tree-vrp.c

The BIT_AND_EXPR handling in extract_range_from_binary_expr_1
was using value_range_constant_singleton without first checking
whether the range was a constant.  The earlier handling was correctly
guarded:

  /* If either input range contains only non-negative values
     we can truncate the result range maximum to the respective
     maximum of the input range.  */
  if (int_cst_range0 && tree_int_cst_sgn (vr0.min) >= 0)
    wmax = wi::min (wmax, vr0.max, TYPE_SIGN (expr_type));
  if (int_cst_range1 && tree_int_cst_sgn (vr1.min) >= 0)
    wmax = wi::min (wmax, vr1.max, TYPE_SIGN (expr_type));

so this patch uses the same guards again.

Existing tests showed the need for this once polynomial constants
are added.

2017-09-21  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* tree-vrp.c (extract_range_from_binary_expr_1): Check
int_cst_rangeN before calling value_range_constant_singleton (&vrN).

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

7 years ago2017-09-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Sep 2017 10:08:21 +0000 (10:08 +0000)] 
2017-09-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71351
* graphite-isl-ast-to-gimple.c (translate_isl_ast_to_gimple::
graphite_create_new_loop_guard): Remove, fold remaining parts
into caller ...
(translate_isl_ast_node_for): ... here and simplify.

* gfortran.dg/graphite/pr71351.f90: New testcase.
* gfortran.dg/graphite/interchange-3.f90: Adjust.

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

7 years agoFix tests for std::clamp
redi [Thu, 21 Sep 2017 09:59:55 +0000 (09:59 +0000)] 
Fix tests for std::clamp

* testsuite/25_algorithms/clamp/1.cc: Fix order of arguments and
expected results when using predicate defining reverse order.
* testsuite/25_algorithms/clamp/constexpr.cc: Likewise.

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

7 years ago PR target/82260
jakub [Thu, 21 Sep 2017 07:27:54 +0000 (07:27 +0000)] 
PR target/82260
* config/i386/i386.md (*movqi_internal): Replace (=q,q) alternative
with (=Q,Q), (=R,R) and (=r,r) alternatives, only enable the
latter two for 64-bit, renumber alternatives, for -Os imov (=q,n)
alternative always use QI mode, for -Os imov (=R,R) alternative
always use SI mode, for imov (=Q,Q) or (=r,r) alternatives
ignore -Os.

* gcc.target/i386/pr82260-1.c: New test.
* gcc.target/i386/pr82260-2.c: New test.

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

7 years ago * config/s390/s390.c (MIN_UNROLL_PROBES): Define.
law [Thu, 21 Sep 2017 04:30:16 +0000 (04:30 +0000)] 
* config/s390/s390.c (MIN_UNROLL_PROBES): Define.
(allocate_stack_space): New function, partially extracted from
s390_emit_prologue.
(s390_emit_prologue): Track offset to most recent stack probe.
Code to allocate space moved into allocate_stack_space.
Dump actions when no stack is allocated.
(s390_prologue_plus_offset): New function.
(s390_emit_stack_probe): Likewise.

* gcc.dg/stack-check-5.c:  Add argument for s390.
* lib/target-supports.exp:
(check_effective_target_supports_stack_clash_protection): Enable for
s390/s390x targets.

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

7 years ago[C++ PATCH] class member ordering
nathan [Thu, 21 Sep 2017 02:51:40 +0000 (02:51 +0000)] 
[C++ PATCH] class member ordering

https://gcc.gnu.org/ml/gcc-patches/2017-09/msg01426.html
* name-lookup.c (member_name_cmp): Use DECL_UID for final
ordering.

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

7 years agoenable handling of -gno- command-line options as negated prefixes
aoliva [Thu, 21 Sep 2017 02:18:02 +0000 (02:18 +0000)] 
enable handling of -gno- command-line options as negated prefixes

This patch that adds -g to the set of negatable prefixes along with -f,
-m and -W.  Besides the mapping from -gno- to negated -g in option_map
and adding g to the [fmW] matches for negatable options, I had to
introduce gno- as an remapping prefix, for the option searching
machinery to backtrack to and recognize as a remapping prefix, instead
of backtracking to -g and stopping at it as if no-* was its Joined
argument.  Adding such remapping prefixes to preempt further
backtracking can be accomplished by introducing the prefix as an
Undocumented option with a Joined argument and without Driver, Target,
Common, or any language-specific option.  Whenever we match such a fake
options prefix, we abandon further backtracking (it matches, after all),
but find_opt returns the same code it would if it hadn't found any
match, so that we resort to option mapping.

I've arranged for such remapping prefixes to not be considered when
looking for and suggesting a correct spelling for misspelled options.
While testing that, I found a few -W-started options that were not
marked as RejectNegative but should (-Wno-a, is not something we'd like
to suggest ;-)  I've also marked as such -g-started options that
it makes no sense to negate, and removed the explicit -gno- ones,
allowing their opposites to be negated.

for  gcc/ChangeLog

* common.opt (Wa, Wl, Wp, g, gz=): Add
RejectNegative.
(gno-column-info): Remove.
(gcolumn-info): Drop RejectNegative.
(gno-): New prefix.
(gno-record-gcc-switches): Remove.
(grecord-gcc-switches): Drop RejectNegative.
(gno-split-dwarf): Remove.
(gsplit-dwarf): Drop RejectNegative.
(gno-strict-dwarf): Remove.
(gstrict-dwarf): Drop RejectNegative.
* config/darwin.opt (gfull, gused): Add RejectNegative.
* dwarf2out.c (gen_producer_string): Drop
gno-record-gcc-switches handler.
* optc-gen.awk: Add g to prefixes with negative forms.
* opts-common.c (remapping_prefix_p): New.
(find_opt): Check it.
(generate_canonical_option): Test g prefix.
(option_map): Add -gno- mapping.
(add_misspelling_candidates): Check remapping_prefix_p.

for  gcc/ada/ChangeLog

* gcc-interface/lang.opt (gant, gnatO, gnat): Add
        RejectNegative.

for  gcc/c-family/ChangeLog

* c.opt (gen-decls): Add RejectNegative.

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

7 years agoDaily bump.
gccadmin [Thu, 21 Sep 2017 00:16:21 +0000 (00:16 +0000)] 
Daily bump.

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

7 years ago libgo: fix build when using -enable-static=no
ian [Wed, 20 Sep 2017 23:31:00 +0000 (23:31 +0000)] 
libgo: fix build when using -enable-static=no

    With -enable-static=no we don't build non-pic objects, but libgotool.a
    is built from non-pic objects.  Build the packages that go into
    libgotool.a in static mode in all cases.

    Also ensure that internal test packages are built, since nothing
    explicitly depended on them.

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

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

7 years agoFix C++ testsuite fallout from r252976.
msebor [Wed, 20 Sep 2017 22:46:49 +0000 (22:46 +0000)] 
Fix C++ testsuite fallout from r252976.

gcc/testsuite/ChangeLog:

PR c/81854
* g++.dg/ext/attr-ifunc-2.C: Correct type errors.
* g++.dg/ext/attr-ifunc-4.C: Ditto.
* lib/target-supports.exp: Adjust for C++.

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

7 years agoFix testsuite fallout from r252976.
msebor [Wed, 20 Sep 2017 22:19:53 +0000 (22:19 +0000)] 
Fix testsuite fallout from r252976.

gcc/testsuite/ChangeLog:

PR c/81854
* gcc.dg/attr-ifunc-1.c: Correct type errors.
* gcc.dg/attr-ifunc-2.c: Ditto.
* gcc.dg/attr-ifunc-3.c: Ditto.
* gcc.dg/attr-ifunc-4.c: Ditto.
* gcc.dg/attr-ifunc-5.c: Ditto.
* gcc.dg/pr81854.c: Require ifunc support.
* gcc/testsuite/lib/target-supports.exp: Correct type error.

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

7 years ago * config/powerpcspe/powerpcspe.c (rs6000_expand_prologue): Fix
law [Wed, 20 Sep 2017 22:06:11 +0000 (22:06 +0000)] 
* config/powerpcspe/powerpcspe.c (rs6000_expand_prologue): Fix
thinko in stack clash protection support.

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

7 years agoPR libstdc++/79162 Fix std::string regression due to LWG 2946 (old ABI)
redi [Wed, 20 Sep 2017 22:03:37 +0000 (22:03 +0000)] 
PR libstdc++/79162 Fix std::string regression due to LWG 2946 (old ABI)

PR libstdc++/79162
* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
(basic_string::_If_sv): Remove from the overload set when the
argument is derived from basic_string.

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

7 years ago * explow.c (compute_stack_clash_protection_loop_data): Use
law [Wed, 20 Sep 2017 21:59:50 +0000 (21:59 +0000)] 
* explow.c (compute_stack_clash_protection_loop_data): Use
CONST_INT_P instead of explicit test.  Verify object is a
CONST_INT_P before looking at INTVAL.
(anti_adjust_stack_and_probe_stack_clash): Use CONST_INT_P
instead of explicit test.

* gcc.target/i386/stack-check-11.c: Update test and regexp
so that it works for both i?86 and x86_64.

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

7 years agors6000: Don't touch below the stack pointer (PR77687)
segher [Wed, 20 Sep 2017 21:48:31 +0000 (21:48 +0000)] 
rs6000: Don't touch below the stack pointer (PR77687)

With the 32-bit SVR4 ABI we don't have a red zone, so we have to restore
the callee-saved registers before we restore the stack pointer.

The previous fix for this PR failed in two ways, for huge frames: first,
we use a negative offset from r11 in that case, so the (mem:BLK 11) access
does no good; second, sched does not handle accesses to mem:BLK correctly
in this case (does not make dependencies).

This patch fixes it by doing a store to (mem:BLK (scratch)) instead.
This means no unrelated (not to stack) loads/stores can be moved over the
stack restore either, but so be it.

PR target/77687
* config/rs6000/rs6000.md (stack_restore_tie): Store to a scratch
address instead of to r1 and r11.

gcc/testsuite/
PR target/77687
* gcc.target/powerpc/pr77687.c: New testcase.

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

7 years ago PR sanitizer/77631
ian [Wed, 20 Sep 2017 21:09:37 +0000 (21:09 +0000)] 
PR sanitizer/77631
Support for external debug info.
* elf.c: Include <errno.h>, <sys/stat.h>, <unistd.h>.
(S_ISLNK): Define if not defined.
(xstrnlen): Define if strnlen is not available.
(b_elf_note): Define type.
(NT_GNU_BUILD_ID): Define macro.
(elf_crc32, elf_crc32_file): New static functions.
(elf_is_symlink, elf_readlink): New static functions.
(elf_open_debugfile_by_buildid): New static function.
(elf_try_debugfile): New static function.
(elf_find_debugfile_by_debuglink): New static function.
(elf_open_debugfile_by_debuglink): New static function.
(elf_add): Add filename and debuginfo parameters.  Adjust all
callers.  Look for external debug info notes, and try to fetch
debug info from external file.
(struct phdr_data): Add exe_filename field.
(phdr_callback): Pass filename to elf_add.
(backtrace_initialize): Add filename parameter.
* internal.h (backtrace_initialize): Add filename parameter.
* fileline.c (fileline_initialize): Pass filename to
backtrace_initialize.
* pecoff.c (fileline_initialize): Add unused filename parameter.
* unknown.c (fileline_initialize): Likewise.
* xcoff.c (fileline_initialize): Likewise.
* configure.ac: Check for objcopy --add-gnu-debuglink.
* Makefile.am (dtest): New test target.
* configure, Makefile.in: Rebuild.

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

7 years ago P0409R2 - allow lambda capture [=, this]
jakub [Wed, 20 Sep 2017 19:36:47 +0000 (19:36 +0000)] 
P0409R2 - allow lambda capture [=, this]
* parser.c (cp_parser_lambda_introducer): For cxx2a don't pedwarn on
redundant [=, this].

* g++.dg/cpp1z/lambda-this1.C: Don't expect error for c++2a on [=, this]
capture.  Add further tests.
* g++.dg/cpp0x/lambda/lambda-capture-redundancy.C: Don't expect error
for c++2a on [=, this] capture.

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

7 years ago * g++.dg/cpp1z/cplusplus.C: Test that __cplusplus is equal to 201703L.
jakub [Wed, 20 Sep 2017 19:35:36 +0000 (19:35 +0000)] 
* g++.dg/cpp1z/cplusplus.C: Test that __cplusplus is equal to 201703L.
* g++.dg/cpp1z/cplusplus_1z.C: New test.

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

7 years agoPR libstdc++/79162 Fix std::string regression due to LWG 2946
redi [Wed, 20 Sep 2017 17:59:50 +0000 (17:59 +0000)] 
PR libstdc++/79162 Fix std::string regression due to LWG 2946

PR libstdc++/79162
* include/bits/basic_string.h (basic_string::_If_sv): Remove from the
overload set when the argument is derived from basic_string.
* testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc: New
test.
* testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
New test.

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

7 years ago syscall: enable ParseDirent for AIX
ian [Wed, 20 Sep 2017 17:49:11 +0000 (17:49 +0000)] 
syscall: enable ParseDirent for AIX

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

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

7 years ago syscall: workaround for getsockname bug in AIX
ian [Wed, 20 Sep 2017 17:40:11 +0000 (17:40 +0000)] 
syscall: workaround for getsockname bug in AIX

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

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

7 years agoFix failing C++17 test
redi [Wed, 20 Sep 2017 16:34:53 +0000 (16:34 +0000)] 
Fix failing C++17 test

* testsuite/24_iterators/range_access_cpp17.cc: Fix order of dg-do
and dg-options directives. Fix invalid test.

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

7 years agoPR libstdc++/81469 deprecate std::uncaught_exception for C++17
redi [Wed, 20 Sep 2017 16:34:49 +0000 (16:34 +0000)] 
PR libstdc++/81469 deprecate std::uncaught_exception for C++17

PR libstdc++/81469
* libsupc++/exception (uncaught_exception): Deprecate for C++17.
* testsuite/18_support/exception_ptr/62258.cc: Add -Wno-deprecated.
* testsuite/18_support/uncaught_exception/14026.cc: Likewise.

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

7 years agoDeprecate nested types in std::hash
redi [Wed, 20 Sep 2017 16:34:42 +0000 (16:34 +0000)] 
Deprecate nested types in std::hash

* include/bits/c++config (_GLIBCXX17_DEPRECATED): Define.
* include/bits/functional_hash.h (__hash_base::result_type)
(__hash_base::argument_type): Add _GLIBCXX17_DEPRECATED.
* include/std/optional (hash<optional<T>>::result_type)
(hash<optional<T>>::argument_type): Add deprecated attribute.
(__is_fast_hash<hash<optional<T>>>): Add partial specialization.
* include/std/variant (hash<variant<Types...>>::result_type)
(hash<variant<Types...>>::argument_type): Add deprecated attribute.
(__is_fast_hash<hash<variant<Types...>>>): Add partial specialization.

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

7 years ago internal,net,os,runtime,syscall: fixes for AIX following update to go1.9
ian [Wed, 20 Sep 2017 14:59:39 +0000 (14:59 +0000)] 
internal,net,os,runtime,syscall: fixes for AIX following update to go1.9

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

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

7 years agogcc/
uros [Wed, 20 Sep 2017 13:47:30 +0000 (13:47 +0000)] 
gcc/

        * config.gcc: Support "knm".
        * config/i386/driver-i386.c (host_detect_local_cpu): Detect "knm".
        * config/i386/i386-c.c (ix86_target_macros_internal): Handle
        PROCESSOR_KNM.
        * config/i386/i386.c (m_KNM): Define.
        (processor_target_table): Add "knm".
        (PTA_KNM): Define.
        (ix86_option_override_internal): Add "knm".
        (ix86_issue_rate): Add PROCESSOR_KNM.
        (ix86_adjust_cost): Ditto.
        (ia32_multipass_dfa_lookahead): Ditto.
        (get_builtin_code_for_version): Handle PROCESSOR_KNM.
        (fold_builtin_cpu): Add M_INTEL_KNM.
        * config/i386/i386.h (processor_costs): Define TARGET_KNM.
        (processor_type): Add PROCESSOR_KNM.
         * config/i386/x86-tune.def: Add m_KNM.
        * doc/invoke.texi: Add knm as x86 -march=/-mtune= CPU type.

libgcc/
        * config/i386/cpuinfo.h (processor_types): Add INTEL_KNM.
        * config/i386/cpuinfo.c (get_intel_cpu): Detect Knights Mill.

gcc/testsuite/

        * gcc.target/i386/builtin_target.c: Test knm.
        * gcc.target/i386/funcspec-56.inc: Test arch=knm.

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

7 years ago Revert my 2017-09-19 patch.
uros [Wed, 20 Sep 2017 13:33:43 +0000 (13:33 +0000)] 
Revert my 2017-09-19 patch.

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

7 years agoRemove non-standard std::copy_exception function
redi [Wed, 20 Sep 2017 13:25:07 +0000 (13:25 +0000)] 
Remove non-standard std::copy_exception function

* libsupc++/exception_ptr.h (copy_exception): Remove deprecated
non-standard function.

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

7 years agoPR libstdc++/82262 fix std::hash<std::optional<const T>>
redi [Wed, 20 Sep 2017 13:24:45 +0000 (13:24 +0000)] 
PR libstdc++/82262 fix std::hash<std::optional<const T>>

PR libstdc++/82262
* include/std/optional (__optional_hash_call_base): Add template
parameter for remove_const_t<_Tp> and use it consistently.
* testsuite/20_util/optional/hash.cc: Test optional<const T>.

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

7 years ago2017-09-20 Richard Biener <rguenther@suse.de>
rguenth [Wed, 20 Sep 2017 12:08:16 +0000 (12:08 +0000)] 
2017-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/80213
* graphite-scop-detection.c (trivially_empty_bb_p): Labels
are allowed in empty BBs as well.
(canonicalize_loop_closed_ssa): Also look for other complex
edges.
(scop_detection::get_sese): Include the loop-closed PHI block
in loop SESEs.
(scop_detection::merge_sese): Remove code adding extra blocks.
(scop_detection::region_has_one_loop): Adjust for get_sese changes.
(build_scops): Assert the final returned scop is invalid.

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

7 years ago2017-09-20 Richard Biener <rguenther@suse.de>
rguenth [Wed, 20 Sep 2017 11:21:23 +0000 (11:21 +0000)] 
2017-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/77362
* gcc.dg/graphite/pr77362.c: New testcase.

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

7 years ago2017-09-20 Richard Biener <rguenther@suse.de>
rguenth [Wed, 20 Sep 2017 11:08:35 +0000 (11:08 +0000)] 
2017-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82264
* tree-ssa-sccvn.c (vn_phi_eq): Use safe_dyn_cast to check
for GIMPLE_CONDs.
(vn_phi_lookup): Likewise.
(vn_phi_insert): Likewise.

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

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

7 years ago * dwarf2out.c (tree_add_const_value_attribute): For INTEGER_CST
jakub [Wed, 20 Sep 2017 09:04:22 +0000 (09:04 +0000)] 
* dwarf2out.c (tree_add_const_value_attribute): For INTEGER_CST
that fits into uhwi or shwi, add DW_AT_const_value regardless
of early_dwarf without going through RTL, using add_AT_unsigned
or add_AT_int.

* g++.dg/debug/dwarf2/template-params-13.C: New test.
* g++.dg/debug/dwarf2/template-params-5.C: Adjust regexps so that
it doesn't match newlines.
* g++.dg/debug/dwarf2/template-params-3.C: Likewise.
* g++.dg/debug/dwarf2/template-func-params-3.C: Likewise.
* g++.dg/debug/dwarf2/lang-cpp98.C: Likewise.
* g++.dg/debug/dwarf2/template-func-params-2.C: Likewise.
* g++.dg/debug/dwarf2/template-func-params-1.C: Likewise.
* g++.dg/debug/dwarf2/template-func-params-5.C: Likewise.
* g++.dg/debug/dwarf2/template-params-1.C: Likewise.
* g++.dg/debug/dwarf2/template-params-2.C: Likewise.
* g++.dg/debug/dwarf2/lang-cpp14.C: Likewise.
* g++.dg/debug/dwarf2/lang-cpp11.C: Likewise.

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

7 years ago * dwarf2out.c (DEBUG_LTO_DWO_INFO_SECTION): Reorder defines.
jakub [Wed, 20 Sep 2017 09:02:52 +0000 (09:02 +0000)] 
* dwarf2out.c (DEBUG_LTO_DWO_INFO_SECTION): Reorder defines.
(DEBUG_LTO_ABBREV_SECTION): Likewise.
(DEBUG_LTO_MACINFO_SECTION): Likewise.
(DEBUG_MACRO_SECTION): Likewise.
(DEBUG_LTO_MACRO_SECTION): Likewise.
(DEBUG_STR_DWO_SECTION): Likewise.
(DEBUG_LTO_STR_DWO_SECTION): Likewise.
(DEBUG_LTO_LINE_SECTION): Drop .dwo suffix from the name.
(DEBUG_LTO_DWO_LINE_SECTION): Define.
(DEBUG_LTO_LINE_STR_SECTION): Define.
(init_sections_and_labels): Initialize debug_line_str_section
variable.  Initialize debug_loc_section for -gdwarf-5 to
DEBUG_LOCLISTS_SECTION.  Formatting fixes.

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

7 years ago2017-09-20 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 20 Sep 2017 07:53:27 +0000 (07:53 +0000)] 
2017-09-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64954
* g++.dg/cpp0x/constexpr-ctor20.C: New.

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

7 years ago2017-09-20 Richard Biener <rguenther@suse.de>
rguenth [Wed, 20 Sep 2017 07:34:55 +0000 (07:34 +0000)] 
2017-09-20  Richard Biener  <rguenther@suse.de>

* graphite-sese-to-poly.c (extract_affine): Properly handle
POINTER_PLUS_EXPR, BIT_NOT_EXPR and conversion to signed.

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

7 years ago2017-09-20 Richard Biener <rguenther@suse.de>
rguenth [Wed, 20 Sep 2017 07:33:58 +0000 (07:33 +0000)] 
2017-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/81373
* graphite-scop-detection.c (build_cross_bb_scalars_def):
Force SESE live-out defs to be handled even if they are
scev_analyzable_p.

* gcc.dg/graphite/pr81373.c: New testcase.

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

7 years ago * combine-stack-adj.c (combine_stack_adjustments_for_block): Do
law [Wed, 20 Sep 2017 05:43:28 +0000 (05:43 +0000)] 
* combine-stack-adj.c (combine_stack_adjustments_for_block): Do
nothing for stack adjustments with REG_STACK_CHECK.
* sched-deps.c (parse_add_or_inc): Reject insns with
REG_STACK_CHECK from dependency breaking.
* config/i386/i386.c (pro_epilogue_adjust_stack): Return insn.
(ix86_adjust_satck_and_probe_stack_clash): Add REG_STACK_NOTEs.
* reg-notes.def (STACK_CHECK): New note.

* gcc.target/i386/stack-check-11.c: New test.

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

7 years ago * config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash): New.
law [Wed, 20 Sep 2017 05:35:07 +0000 (05:35 +0000)] 
* config/i386/i386.c (ix86_adjust_stack_and_probe_stack_clash): New.
(ix86_expand_prologue): Dump stack clash info as needed.
Call ix86_adjust_stack_and_probe_stack_clash as needed.

* gcc.dg/stack-check-4.c: New test.
* gcc.dg/stack-check-5.c: New test.
* gcc.dg/stack-check-6.c: New test.
* gcc.dg/stack-check-6a.c: New test.
* gcc.dg/stack-check-7.c: New test.
* gcc.dg/stack-check-8.c: New test.
* gcc.dg/stack-check-9.c: New test.
* gcc.dg/stack-check-10.c: New test.
* lib/target-supports.exp
(check_effective_target_supports_stack_clash_protection): Enable for
x86 and x86_64 targets.

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

7 years ago * function.c (dump_stack_clash_frame_info): New function.
law [Wed, 20 Sep 2017 05:23:51 +0000 (05:23 +0000)] 
    * function.c (dump_stack_clash_frame_info): New function.
        * function.h (dump_stack_clash_frame_info): Prototype.
        (enum stack_clash_probes): New enum.

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

7 years ago * config/alpha/alpha.c (alpha_expand_prologue): Also check
law [Wed, 20 Sep 2017 05:21:09 +0000 (05:21 +0000)] 
* config/alpha/alpha.c (alpha_expand_prologue): Also check
flag_stack_clash_protection.
* config/arm/arm.c (arm_compute_static_chain_stack_bytes): Likewise.
(arm_expand_prologue, thumb1_expand_prologue): Likewise.
(arm_frame_pointer_required): Likewise.
* config/ia64/ia64.c (ia64_compute_frame_size): Likewise.
(ia64_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/powerpcspe/powerpcspe.c (rs6000_expand_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
(sparc_flat_expand_prologue): Likewise.
* config/spu/spu.c (spu_expand_prologue): Likewise.

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

7 years ago2017-09-18 Jeff Law <law@redhat.com>
law [Wed, 20 Sep 2017 05:05:12 +0000 (05:05 +0000)] 
2017-09-18  Jeff Law  <law@redhat.com>

* explow.c: Include "params.h".
(anti_adjust_stack_and_probe_stack_clash): New function.
(get_stack_check_protect): Likewise.
(compute_stack_clash_protection_loop_data): Likewise.
(emit_stack_clash_protection_loop_start): Likewise.
(emit_stack_clash_protection_loop_end): Likewise.
(allocate_dynamic_stack_space): Use get_stack_check_protect.
Use anti_adjust_stack_and_probe_stack_clash.
* explow.h (compute_stack_clash_protection_loop_data): Prototype.
(emit_stack_clash_protection_loop_start): Likewise.
(emit_stack_clash_protection_loop_end): Likewise.
* rtl.h (get_stack_check_protect): Prototype.
* target.def (stack_clash_protection_final_dynamic_probe): New hook.
* targhooks.c (default_stack_clash_protection_final_dynamic_probe): New.
* targhooks.h (default_stack_clash_protection_final_dynamic_probe):
Prototype.
* doc/tm.texi.in (TARGET_STACK_CLASH_PROTECTION_FINAL_DYNAMIC_PROBE):
Add @hook.
* doc/tm.texi: Rebuilt.
* config/aarch64/aarch64.c (aarch64_expand_prologue): Use
get_stack_check_protect.
* config/alpha/alpha.c (alpha_expand_prologue): Likewise.
* config/arm/arm.c (arm_expand_prologue): Likewise.
(arm_frame_pointer_required): Likewise.
* config/i386/i386.c (ix86_expand_prologue): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/powerpcspe/powerpcspe.c (rs6000_emit_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
(sparc_flat_expand_prologue): Likewise.

* gcc.dg/stack-check-3.c: New test.

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

7 years ago * common.opt (-fstack-clash-protection): New option.
law [Wed, 20 Sep 2017 04:56:54 +0000 (04:56 +0000)] 
* common.opt (-fstack-clash-protection): New option.
* flag-types.h (enum stack_check_type): Note difference between
-fstack-check= and -fstack-clash-protection.
* params.def (PARAM_STACK_CLASH_PROTECTION_GUARD_SIZE): New PARAM.
(PARAM_STACK_CLASH_PROTECTION_PROBE_INTERVAL): Likewise.
* toplev.c (process_options): Issue warnings/errors for cases
not handled with -fstack-clash-protection.
* doc/invoke.texi (-fstack-clash-protection): Document new option.
(-fstack-check): Note additional problem with -fstack-check=generic.
Note that -fstack-check is primarily for Ada and refer users
to -fstack-clash-protection for stack-clash-protection.
Document new params for stack clash protection.

* gcc.dg/stack-check-2.c: New test.
* lib/target-supports.exp
(check_effective_target_supports_stack_clash_protection): New function.
(check_effective_target_frame_pointer_for_non_leaf): Likewise.
(check_effective_target_caller_implicit_probes): Likewise.

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

7 years ago runtime: restore "goroutine in C code" message
ian [Wed, 20 Sep 2017 00:33:29 +0000 (00:33 +0000)] 
runtime: restore "goroutine in C code" message

    In the 1.9 upgrade I took out the word "goroutine" from a traceback
    showing a goroutine running in C code, to let TestCgoNumGoroutine
    pass.  However, it turns out that some code is actually checking for
    that string; for example,
    https://github.com/grpc/grpc-go/blob/master/test/leakcheck/leakcheck.go#L44
    So keep the message the same, and change the test.

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

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

7 years agoDaily bump.
gccadmin [Wed, 20 Sep 2017 00:16:22 +0000 (00:16 +0000)] 
Daily bump.

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

7 years ago * config/i386/i386.md (*scc_bt<mode>): New insn_and_split pattern.
uros [Tue, 19 Sep 2017 21:14:11 +0000 (21:14 +0000)] 
* config/i386/i386.md (*scc_bt<mode>): New insn_and_split pattern.
(*scc_bt<mode>_1): Ditto.
(*scc_bt<mode>_mask): Ditto.

testsuite/ChangeLog:

* gcc.target/i386/bt-5.c: New test.
* gcc.target/i386/bt-6.c: Ditto.
* gcc.target/i386/bt-mask-3.c: Ditto.
* gcc.target/i386/bt-mask-4.c: Ditto.

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

7 years ago * g++.dg/tree-ssa/pr31146-2.C: Only do scan-tree-dump for c++14_down.
jakub [Tue, 19 Sep 2017 21:03:11 +0000 (21:03 +0000)] 
* g++.dg/tree-ssa/pr31146-2.C: Only do scan-tree-dump for c++14_down.
* g++.dg/tree-ssa/pr41428.C: Likewise.
* g++.dg/expr/bool1.C: Only do dg-do compile instead of dg-do run for
c++17 and up.
* g++.dg/expr/bool3.C: Likewise.
* g++.dg/expr/bitfield5.C: Likewise.
* g++.old-deja/g++.jason/bool5.C: Likewise.

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

7 years ago * config/i386/i386.c (ix86_split_long_move): Do not handle
uros [Tue, 19 Sep 2017 18:38:10 +0000 (18:38 +0000)] 
* config/i386/i386.c (ix86_split_long_move): Do not handle
address used for LEA in a special way.

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

7 years agoPR libstdc++/71500 restore C++11 compatibility in <regex>
redi [Tue, 19 Sep 2017 17:06:12 +0000 (17:06 +0000)] 
PR libstdc++/71500 restore C++11 compatibility in <regex>

PR libstdc++/71500
* include/bits/regex_executor.tcc
(_Backref_matcher<BidIt, regex_traits<C>>::_M_apply): Use
std::__equal4 instead of C++14 4-iterator overloads of std::equal.
* include/bits/stl_algobase.h (__equal4): New functions implementing
4-iterator overloads of std::equal for use in C++11.
(equal(It1, It1, It2, It2), equal(It1, It1, It2, It2, BinaryPred)):
Move function bodies to new __equal4 functions.
* testsuite/28_regex/simple_c++11.cc: New.

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

7 years agoFix typo in simplify_binary_operation_1
segher [Tue, 19 Sep 2017 15:50:46 +0000 (15:50 +0000)] 
Fix typo in simplify_binary_operation_1

* simplify-rtx.c (simplify_binary_operation_1): Fix typo in comment.

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

7 years agoPR libstdc++/82254 fix std::is_nothrow_invocable_r w.r.t throwing conversions
redi [Tue, 19 Sep 2017 14:33:51 +0000 (14:33 +0000)] 
PR libstdc++/82254 fix std::is_nothrow_invocable_r w.r.t throwing conversions

PR libstdc++/82254
* include/std/type_traits (__is_invocable): Add partial specialization
for INVOKE<void> case and remove is_void<R> check from partial
specialization for INVOKE<R> case.
(__is_nt_invocable_impl): New helper for is_nothrow_invocable_r.
(is_nothrow_invocable_r): Use __is_nt_invocable_impl.
* testsuite/20_util/is_nothrow_invocable/value.cc: Add tests for
conversions that can throw or fail to convert. Use static assert
strings to explain negative results.
* testsuite/20_util/is_nothrow_invocable/value_ext.cc: Use
is_nothrow_constructible in is_nt_invocable_conv.

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

7 years agoPR c/81854 - weak alias of an incompatible symbol accepted
msebor [Tue, 19 Sep 2017 14:27:32 +0000 (14:27 +0000)] 
PR c/81854 - weak alias of an incompatible symbol accepted

gcc/ChangeLog:

PR c/81854
* cgraphunit.c (handle_alias_pairs): Reject aliases between functions
of incompatible types.

gcc/testsuite/ChangeLog:

PR c/81854
* gcc.dg/pr81854.c: New test.
* g++.dg/ext/attr-ifunc-5.C: New test.
* g++.dg/ext/attr-ifunc-1.C: Adjust.
* g++.dg/ext/attr-ifunc-2.C: Same.
* g++.dg/ext/attr-ifunc-3.C: Same.
* g++.dg/ext/attr-ifunc-4.C: Same.
* g++.old-deja/g++.abi/vtable2.C: Same.
* gcc.dg/attr-ifunc-1.c: Same.

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

7 years ago[gcc]
willschm [Tue, 19 Sep 2017 13:42:48 +0000 (13:42 +0000)] 
[gcc]

2017-09-19  Will Schmidt  <will_schmidt@vnet.ibm.com>

    * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling
    for early folding of vector loads (ALTIVEC_BUILTIN_LVX_*).
    * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
    Remove obsoleted code for handling ALTIVEC_BUILTIN_VEC_LD.

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

7 years ago[gcc/testsuite]
willschm [Tue, 19 Sep 2017 13:32:54 +0000 (13:32 +0000)] 
[gcc/testsuite]

2017-09-19  Will Schmidt  <will_schmidt@vnet.ibm.com>

        * gcc.target/powerpc/fold-vec-ld-misc.c: New.

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

7 years ago2017-09-19 Richard Biener <rguenther@suse.de>
rguenth [Tue, 19 Sep 2017 11:57:39 +0000 (11:57 +0000)] 
2017-09-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/82244
* tree-vrp.c (remove_range_assertions): Do not propagate
a constant to abnormals but replace the assert with a copy.

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

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

7 years agolra: make reload_pseudo_compare_func a proper comparator
amonakov [Tue, 19 Sep 2017 10:16:20 +0000 (10:16 +0000)] 
lra: make reload_pseudo_compare_func a proper comparator

PR rtl-optimization/57878
PR rtl-optimization/68988
* lra-assigns.c (reload_pseudo_compare_func): Remove fragmentation
avoidance test involving non_reload_pseudos.  Move frequency test
below the general fragmentation avoidance test.

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

7 years agogcc/testsuite/
pmderodat [Tue, 19 Sep 2017 09:07:19 +0000 (09:07 +0000)] 
gcc/testsuite/

* gnat.dg/validity_check.adb: Minor dg-options simplification.

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

7 years ago2017-09-19 Richard Biener <rguenther@suse.de>
rguenth [Tue, 19 Sep 2017 08:25:17 +0000 (08:25 +0000)] 
2017-09-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69728
* graphite-sese-to-poly.c (schedule_error): New global.
(add_loop_schedule): Handle empty domain by failing the
schedule.
(build_original_schedule): Handle schedule_error.

* gfortran.dg/graphite/pr69728.f90: New testcase.
* gcc.dg/graphite/pr69728.c: Likewise.

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

7 years agoFix some gotools testing problems
ro [Tue, 19 Sep 2017 07:51:49 +0000 (07:51 +0000)] 
Fix some gotools testing problems

* Makefile.am (GOTESTFLAGS): New variable.
(check-runtime): Pass it to gotest.
(check-go-tools): Sort summary.
(check-runtime): Likewise.
(check-cgo-test): Likewise.
(check-carchive-test): Likewise.
(check): Likewise.
* Makefile.in: Regenerate.

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

7 years ago2017-09-19 Richard Biener <rguenther@suse.de>
rguenth [Tue, 19 Sep 2017 07:14:12 +0000 (07:14 +0000)] 
2017-09-19  Richard Biener  <rguenther@suse.de>

* graphite-scop-detection.c (scop_detection::can_represent_loop):
Do not iterate to sibling loops but only to siblings of inner
loops.

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

7 years agoDaily bump.
gccadmin [Tue, 19 Sep 2017 00:16:20 +0000 (00:16 +0000)] 
Daily bump.

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

7 years ago2017-09-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 18 Sep 2017 23:57:26 +0000 (23:57 +0000)] 
2017-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/80947
* g++.dg/cpp0x/lambda/lambda-80947.C: New.

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

7 years ago runtime: always initialize str field in __go_string_slice result
ian [Mon, 18 Sep 2017 22:29:45 +0000 (22:29 +0000)] 
runtime: always initialize str field in __go_string_slice result

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

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

7 years agoPR libstdc++/81468 fix test for duration conversions
redi [Mon, 18 Sep 2017 20:00:32 +0000 (20:00 +0000)] 
PR libstdc++/81468 fix test for duration conversions

PR libstdc++/81468
* testsuite/20_util/duration/cons/dr1177.cc: Fix incorrect test and
improve static assertion messages.

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

7 years agoPR target/81613
schwab [Mon, 18 Sep 2017 19:06:00 +0000 (19:06 +0000)] 
PR target/81613
* config/m68k/m68k.md (moveq feeding equality comparison): Check
that the registers are different.

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

7 years ago * config/i386/i386.c (fold_builtin_cpu): Add M_AMDFAM17H
uros [Mon, 18 Sep 2017 18:57:21 +0000 (18:57 +0000)] 
* config/i386/i386.c (fold_builtin_cpu): Add M_AMDFAM17H
to processor_model and "amdfam17h" to arch_names_table.
* doc/extend.texi (__builtin_cpu_is): Document amdfam17h CPU name.

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