]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
8 years ago[ARC] Fix tst_bitfield_tst pattern.
claziss [Mon, 13 Mar 2017 12:56:11 +0000 (12:56 +0000)] 
[ARC] Fix tst_bitfield_tst pattern.

gcc/
2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.md (*tst_bitfield_tst): Fix pattern.

gcc/testsuite
2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* testsuite/gcc.target/arc/bitfield.c: New file.

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

8 years ago[ARC] Add code density instructions.
claziss [Mon, 13 Mar 2017 12:56:00 +0000 (12:56 +0000)] 
[ARC] Add code density instructions.

gcc/
2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (arc_output_addsi): Emit code density adds.
* config/arc/arc.md (cpu_facility): Add cd variant.
(*movqi_insn): Add code density variant.
(*movhi_insn): Likewise.
(*movqi_insn): Likewise.
(*addsi3_mixed): Likewise.
(subsi3_insn): Likewise.

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

8 years ago[ARC] Fix conditional move contstraint
claziss [Mon, 13 Mar 2017 12:55:50 +0000 (12:55 +0000)] 
[ARC] Fix conditional move contstraint

Move pattern (movsi_insn) allows predicated instructions to be
instructions which can hold all registers.  However, the conditional
variant doesn't.  This patch fixes this problem.

2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.md (movsi_cond_exec): Update constraint.

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

8 years ago[ARC] Handle complex PIC move patterns.
claziss [Mon, 13 Mar 2017 12:55:38 +0000 (12:55 +0000)] 
[ARC] Handle complex PIC move patterns.

fwprop step is placing in the REG_EQUIV notes constant pic unspecs
expressions.  Then, loop may use these notes for optimizations
rezulting in complex patterns that are not supported by the current
implementation.

The patch adds handling of complex PIC addresses having MINUS or UNARY
operations.

gcc/
2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (arc_legitimize_pic_address): Handle PIC
expressions with MINUS and UNARY ops.

gcc/testsuite
2017-03-13  Claudiu Zissulescu  <claziss@synopsys.com>

* gcc.target/arc/pr9001090948.c: New file.

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

8 years ago PR c++/79393 DR 1658 workaround
nathan [Mon, 13 Mar 2017 11:58:15 +0000 (11:58 +0000)] 
PR c++/79393 DR 1658 workaround
* method.c (synthesized_method_walk): Check vbases of abstract
classes for dtor walk.

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

8 years ago[ARM] PR target/79911: Invalid vec_select arguments
ktkachov [Mon, 13 Mar 2017 10:58:48 +0000 (10:58 +0000)] 
[ARM] PR target/79911: Invalid vec_select arguments

PR target/79911
* config/arm/neon.md (vec_sel_widen_ssum_lo<VQI:mode><VW:mode>3):
Rename to...
(vec_sel_widen_ssum_lo<mode><V_half>3): ... This. Avoid mismatch
between vec_select and vector argument.
(vec_sel_widen_ssum_hi<VQI:mode><VW:mode>3): Rename to...
(vec_sel_widen_ssum_hi<mode><V_half>3): ... This. Likewise.
(vec_sel_widen_usum_lo<VQI:mode><VW:mode>3): Rename to...
(vec_sel_widen_usum_lo<mode><V_half>3): ... This.
(vec_sel_widen_usum_hi<VQI:mode><VW:mode>3): Rename to...
(vec_sel_widen_usum_hi<mode><V_half>3): ... This.

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

8 years ago2017-03-13 Richard Biener <rguenther@suse.de>
rguenth [Mon, 13 Mar 2017 09:13:14 +0000 (09:13 +0000)] 
2017-03-13  Richard Biener  <rguenther@suse.de>

PR other/79991
* params.def (vect-max-peeling-for-alignment): Fix typo.

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

8 years agoDaily bump.
gccadmin [Mon, 13 Mar 2017 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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

8 years ago * doc/install.texi (Specific) <mips-*-*>: Remove description of
gerald [Sun, 12 Mar 2017 17:31:00 +0000 (17:31 +0000)] 
* doc/install.texi (Specific) <mips-*-*>: Remove description of
issue that only occurred with binutils below 2.18.

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

8 years ago * doc/install.texi (Specific) <cris-axis-elf>: No longer
gerald [Sun, 12 Mar 2017 13:47:03 +0000 (13:47 +0000)] 
* doc/install.texi (Specific) <cris-axis-elf>: No longer
refer to binutils 2.11/2.12 minimum.

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

8 years ago * doc/install.texi (Specific) <powerpc-*-*>: Remove link to
gerald [Sun, 12 Mar 2017 11:06:59 +0000 (11:06 +0000)] 
* doc/install.texi (Specific) <powerpc-*-*>: Remove link to
ftp.kernel.org and simplify binutils requirement.

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

8 years agoImplement LWG 2934, optional<const T> doesn't compare with T.
ville [Sun, 12 Mar 2017 10:32:31 +0000 (10:32 +0000)] 
Implement LWG 2934, optional<const T> doesn't compare with T.
* include/std/optional
(operator==(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator==(const optional<_Tp>&, const optional<_Up>&).
(operator!=(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator!=(const optional<_Tp>&, const optional<_Up>&).
(operator<(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator<(const optional<_Tp>&, const optional<_Up>&.
(operator>(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator>(const optional<_Tp>&, const optional<_Up>&.
(operator<=(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator<=(const optional<_Tp>&, const optional<_Up>&).
(operator>=(const optional<_Tp>&, const optional<_Tp>&)):
Turn into operator>=(const optional<_Tp>&, const optional<_Up>&).
(operator==(const optional<_Tp>&, const _Tp&)):
Turn into operator==(const optional<_Tp>&, const _Up&).
(operator==(const _Tp&, const optional<_Tp>&)):
Turn into operator==(const _Up&, const optional<_Tp>&).
(operator!=(const optional<_Tp>&, const _Tp&)):
Turn into operator!=(const optional<_Tp>&, const _Up&).
(operator!=(const _Tp&, const optional<_Tp>&)):
Turn into operator!=(const _Up&, const optional<_Tp>&).
(operator<(const optional<_Tp>&, const _Tp&)):
Turn into operator<(const optional<_Tp>&, const _Up&).
(operator<(const _Tp&, const optional<_Tp>&)):
Turn into operator<(const _Up&, const optional<_Tp>&).
(operator>(const optional<_Tp>&, const _Tp&)):
Turn into operator>(const optional<_Tp>&, const _Up&).
(operator>(const _Tp&, const optional<_Tp>&)):
Turn into operator>(const _Up&, const optional<_Tp>&).
(operator<=(const optional<_Tp>&, const _Tp&)):
Turn into operator<=(const optional<_Tp>&, const _Up&).
(operator<=(const _Tp&, const optional<_Tp>&)):
Turn into operator<=(const _Up&, const optional<_Tp>&).
(operator>=(const optional<_Tp>&, const _Tp&)):
Turn into operator>=(const optional<_Tp>&, const _Up&).
(operator>=(const _Tp&, const optional<_Tp>&)):
Turn into operator>=(const _Up&, const optional<_Tp>&).
* testsuite/20_util/optional/relops/7.cc: New.

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

8 years agoDaily bump.
gccadmin [Sun, 12 Mar 2017 00:16:22 +0000 (00:16 +0000)] 
Daily bump.

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

8 years agors6000, testsuite: Correct the broken_cplxf_arg test
segher [Sun, 12 Mar 2017 00:04:02 +0000 (00:04 +0000)] 
rs6000, testsuite: Correct the broken_cplxf_arg test

check_effective_target_broken_cplxf_arg is buggy.  It actually tests
if passing complex float works, not if it fails.  Also, it only runs
the test for target powerpc64-linux, but we are biarch, so it should
be powerpc*-linux.

This also changes the early-out conditions to be separate, because
the big combined condition was hard to follow.

This fixes the libstdc++ tests:

Running target unix/-m64
XPASS: 26_numerics/complex/13450.cc execution test
XPASS: 26_numerics/complex/pow.cc execution test
XPASS: 26_numerics/complex/value_operations/1.cc execution test

which were the last failing libstdc++ tests on BE.

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_broken_cplxf_arg):
Fix test.  Make early-out condition return early.  Correct comments.

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

8 years ago * doc/invoke.texi (Warning Options): Fix spelling of link-time
gerald [Sat, 11 Mar 2017 22:00:35 +0000 (22:00 +0000)] 
* doc/invoke.texi (Warning Options): Fix spelling of link-time
optimization.
(Optimize Options): Ditto.  Also remove redundancy.

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

8 years ago2017-03-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sat, 11 Mar 2017 14:49:57 +0000 (14:49 +0000)] 
2017-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/78854
* io/list_read.c (nml_get_obj_data): Stash internal unit for
later use by child procedures.
* io/write.c (nml_write_obj): Likewise.
* io/tranfer.c (data_transfer_init): Minor whitespace.
* io/unit.c (set_internal_uit): Look for the stashed internal
unit and use it if found.

* gfortran.dg/dtio_25.f90: New test.

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

8 years ago * c-decl.c (implicit_decl_warning): Add a comment. Fix formatting.
mpolacek [Sat, 11 Mar 2017 10:26:35 +0000 (10:26 +0000)] 
* c-decl.c (implicit_decl_warning): Add a comment.  Fix formatting.

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

8 years agoSimplify uses of "%<%s%>" to "%qs" (PR translation/79848)
dmalcolm [Sat, 11 Mar 2017 01:57:11 +0000 (01:57 +0000)] 
Simplify uses of "%<%s%>" to "%qs" (PR translation/79848)

gcc/c-family/ChangeLog:
PR translation/79848
* c-format.c (check_format_string): Simplify uses of "%<%s%>" to
"%qs".

gcc/c/ChangeLog:
PR translation/79848
* c-decl.c (declspecs_add_type): Simplify uses of "%<%s%>" to
"%qs".
* c-parser.c (c_parser_oacc_shape_clause): Likewise.

gcc/cp/ChangeLog:
PR translation/79848
* decl.c (grokfndecl): Simplify uses of "%<%s%>" to "%qs".

gcc/ChangeLog:
PR translation/79848
* ipa-devirt.c (warn_types_mismatch): Simplify uses of "%<%s%>" to
"%qs".
* ipa-pure-const.c (suggest_attribute): Likewise.  Convert _
to G_ to avoid double translation.

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

8 years agoRemove trailing period from various diagnostic messages (PR translation/79923)
dmalcolm [Sat, 11 Mar 2017 01:43:48 +0000 (01:43 +0000)] 
Remove trailing period from various diagnostic messages (PR translation/79923)

gcc/ChangeLog:
PR translation/79923
* auto-profile.c (get_combined_location): Convert leading
character of diagnostics to lower case and remove trailing period.
(read_profile): Likewise for various diagnostics.
* config/arm/arm.c (arm_option_override): Remove trailing period
from various diagnostics.
* config/msp430/msp430.c (msp430_expand_delay_cycles): Likewise.
(msp430_expand_delay_cycles): Likewise.

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

8 years agoaarch64.c: tweaks to quoting in error messages (PR target/79925)
dmalcolm [Sat, 11 Mar 2017 01:40:04 +0000 (01:40 +0000)] 
aarch64.c: tweaks to quoting in error messages (PR target/79925)

gcc/ChangeLog:
PR target/79925
* config/aarch64/aarch64.c (aarch64_validate_mcpu): Quote the
full command-line argument, rather than just "str".
(aarch64_validate_march): Likewise.
(aarch64_validate_mtune): Likewise.

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

8 years agoFix up a couple of old ChangeLog entries.
msebor [Sat, 11 Mar 2017 00:37:40 +0000 (00:37 +0000)] 
Fix up a couple of old ChangeLog entries.

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

8 years agoAs discussed in https://gcc.gnu.org/ml/gcc-patches/2017-02/msg00942.html
msebor [Sat, 11 Mar 2017 00:33:45 +0000 (00:33 +0000)] 
As discussed in https://gcc.gnu.org/ml/gcc-patches/2017-02/msg00942.html

gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/builtin-sprintf-warn-3.c: Add a test case.

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

8 years ago * de.po, sv.po: Update.
jsm28 [Sat, 11 Mar 2017 00:33:30 +0000 (00:33 +0000)] 
* de.po, sv.po: Update.

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

8 years agoDaily bump.
gccadmin [Sat, 11 Mar 2017 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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

8 years ago PR rtl-optimization/78911
bernds [Fri, 10 Mar 2017 21:17:13 +0000 (21:17 +0000)] 
PR rtl-optimization/78911
* lra-assigns.c (must_not_spill_p): New function.
(spill_for): Use it.

PR rtl-optimization/78911
* gcc.target/i386/pr78911-1.c: New test.
* gcc.target/i386/pr78911-2.c: New test.

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

8 years ago PR tree-optimization/79981
jakub [Fri, 10 Mar 2017 19:47:44 +0000 (19:47 +0000)] 
PR tree-optimization/79981
* tree-vrp.c (extract_range_basic): Handle IMAGPART_EXPR of
ATOMIC_COMPARE_EXCHANGE ifn result.
(stmt_interesting_for_vrp, vrp_visit_stmt): Handle
IFN_ATOMIC_COMPARE_EXCHANGE.

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

8 years ago2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Fri, 10 Mar 2017 19:42:46 +0000 (19:42 +0000)] 
2017-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/79956
* m4/iforeach.m4:  Change exit condition from loop for
increasing dimension to >=.  Fix type in comment.
* m4/ifunction.m4:  Likewise.
* m4/ifunction_logical.m4: Likewise.
* generated/all_l1.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/iall_i1.c: Regenerated.
* generated/iall_i16.c: Regenerated.
* generated/iall_i2.c: Regenerated.
* generated/iall_i4.c: Regenerated.
* generated/iall_i8.c: Regenerated.
* generated/iany_i1.c: Regenerated.
* generated/iany_i16.c: Regenerated.
* generated/iany_i2.c: Regenerated.
* generated/iany_i4.c: Regenerated.
* generated/iany_i8.c: Regenerated.
* generated/iparity_i1.c: Regenerated.
* generated/iparity_i16.c: Regenerated.
* generated/iparity_i2.c: Regenerated.
* generated/iparity_i4.c: Regenerated.
* generated/iparity_i8.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/norm2_r10.c: Regenerated.
* generated/norm2_r16.c: Regenerated.
* generated/norm2_r4.c: Regenerated.
* generated/norm2_r8.c: Regenerated.
* generated/parity_l1.c: Regenerated.
* generated/parity_l16.c: Regenerated.
* generated/parity_l2.c: Regenerated.
* generated/parity_l4.c: Regenerated.
* generated/parity_l8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.

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

8 years ago2017-03-10 John Marino <gnugcc@marino.st>
andreast [Fri, 10 Mar 2017 19:33:27 +0000 (19:33 +0000)] 
2017-03-10  John Marino  <gnugcc@marino.st>

    * config/aarch64/freebsd-unwind.h: New file.
    * config.host: Add aarch64-*-freebsd unwinder.

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

8 years agoBuild crt*vr.S with AltiVec enabled
segher [Fri, 10 Mar 2017 19:29:48 +0000 (19:29 +0000)] 
Build crt*vr.S with AltiVec enabled

These files won't build on targets that do not have AltiVec enabled,
breaking the build, unless we tell GAS that Altivec insns are fine.
The alternative is to not build these files in that case, which is much
more complicated.

libgcc/
* config/rs6000/crtrestvr.s: Use .machine altivec.
* config/rs6000/crtsavevr.s: Ditto.

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

8 years agoAdd missing punctuation to message (PR driver/79875)
dmalcolm [Fri, 10 Mar 2017 19:22:35 +0000 (19:22 +0000)] 
Add missing punctuation to message (PR driver/79875)

gcc/ChangeLog:
PR driver/79875
* opts.c (parse_sanitizer_options): Add missing question mark to
"did you mean" message.

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

8 years ago2017-03-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Fri, 10 Mar 2017 19:16:04 +0000 (19:16 +0000)] 
2017-03-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000-builtin.def (VMULEUB_UNS): Remove orphaned
built-in.
(VMULEUH_UNS): Likewise.
(VMULOUB_UNS): Likewise.
(VMULOUH_UNS): Likewise.
* config/rs6000/rs6000.c (builtin_function_type): Remove
references to ALTIVEC_BUILTIN_VMUL[EO]U[BH]_UNS.

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

8 years agoc-indentation.c: workaround xgettext limitation (PR c/79921)
dmalcolm [Fri, 10 Mar 2017 19:09:02 +0000 (19:09 +0000)] 
c-indentation.c: workaround xgettext limitation (PR c/79921)

gcc/c-family/ChangeLog:
PR c/79921
* c-indentation.c (warn_for_misleading_indentation): Remove parens
from inform's message, so that xgettext can locate it.

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

8 years agoFix out-of-bounds write in RTL function reader (PR bootstrap/79952)
dmalcolm [Fri, 10 Mar 2017 18:39:52 +0000 (18:39 +0000)] 
Fix out-of-bounds write in RTL function reader (PR bootstrap/79952)

gcc/ChangeLog:
PR bootstrap/79952
* read-rtl-function.c (function_reader::read_rtx_operand): Update
x with result of extra_parsing_for_operand_code_0.
(function_reader::extra_parsing_for_operand_code_0): Convert
return type from void to rtx, returning x.  When reading
SYMBOL_REF with SYMBOL_FLAG_HAS_BLOCK_INFO, reallocate x to the
larger size containing struct block_symbol.

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

8 years agors6000: float128 on BE and 32-bit
segher [Fri, 10 Mar 2017 17:57:58 +0000 (17:57 +0000)] 
rs6000: float128 on BE and 32-bit

This fixes float128 on BE and on 32-bit.

The configure tests need to use -mabi=altivec for 32-bit, since it is
not the default there.  That also enables the "vector" keyword, used by
the tests.  To do this it temporarily adds a few flags to the CFLAGS
variable.

It also fixes a syntax error in the libgcc_cv_powerpc_float128_hw test
(the function name was missing in the function declaration).

Regenerating config.in (via autoreconf) removed the duplicate definition
of HAVE_SOLARIS_CRTS.

Finally, this adds a "-mfloat128-hardware requires -m64" test to
rs6000.c: all the current patterns need 64-bit registers.  Maybe we'll
want to add float128 hardware support to 32-bit some day, but certainly
not today.

* config/rs6000/rs6000.c (rs6000_option_override_internal): Disallow
-mfloat128-hardware without -m64.

libgcc/
* configure.ac (test for libgcc_cv_powerpc_float128): Temporarily
modify CFLAGS.  Add -mabi=altivec -mvsx -mfloat128.
(test for libgcc_cv_powerpc_float128_hw): Add -mpower9-vector and
-mfloat128-hardware to the CFLAGS.  Fix syntax error in the C snippet.
* configure: Regenerate.
* config.in: Regenerate.

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

8 years ago PR c++/79960 - alias templates and partial ordering
jason [Fri, 10 Mar 2017 17:35:54 +0000 (17:35 +0000)] 
PR c++/79960 - alias templates and partial ordering

* pt.c (comp_template_args): Add partial_order parm.
(template_args_equal): Likewise.
(comp_template_args_porder): New.
(get_partial_spec_bindings): Use it.

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

8 years agogcc:
willschm [Fri, 10 Mar 2017 16:18:44 +0000 (16:18 +0000)] 
gcc:
2017-03-10  Will Schmidt <will_schmidt@vnet.ibm.com>

     PR target/79941
     * config/rs6000/rs6000.c (builtin_function_type): Add VMUL*U[HB]
     entries to the case statement that marks unsigned arguments to
     overloaded functions.

testsuite:
2017-03-10  Will Schmidt <will_schmidt@vnet.ibm.com>

     PR target/79941
     * gcc.target/powerpc/fold-vec-mult-even_odd_misc.c: New test.
     * gcc.target/powerpc/fold-vec-mult-even_odd_char.c: New test.
     * gcc.target/powerpc/fold-vec-mult-even_odd_short.c: New test.

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

8 years ago PR c++/79967
mpolacek [Fri, 10 Mar 2017 15:36:00 +0000 (15:36 +0000)] 
PR c++/79967
* decl.c (grokdeclarator): Check ATTRLIST before dereferencing it.

* g++.dg/cpp0x/gen-attrs-63.C: New test.

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

8 years ago PR c++/79899
jakub [Fri, 10 Mar 2017 15:33:04 +0000 (15:33 +0000)] 
PR c++/79899
* optimize.c (maybe_thunk_body): Don't ICE if fns[0] is NULL.
Use XALLOCAVEC macro.

* g++.dg/other/friend7.C: New test.

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

8 years agoFix libstdc++ reserved names test to pass on AIX
redi [Fri, 10 Mar 2017 15:29:49 +0000 (15:29 +0000)] 
Fix libstdc++ reserved names test to pass on AIX

* testsuite/17_intro/names.cc: Undefine macros that clash with
identifiers in AIX system headers.

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

8 years agoP0604R0 add invoke_result, is_invocable etc. for C++17
redi [Fri, 10 Mar 2017 15:29:38 +0000 (15:29 +0000)] 
P0604R0 add invoke_result, is_invocable etc. for C++17

* include/bits/invoke.h (__invoke): Use __invoke_result instead of
result_of, and __is_nothrow_invocable instead of
__is_nothrow_callable.
* include/bits/shared_ptr_base.h (__shared_ptr): Use __is_invocable
instead of __is_callable.
* include/std/functional (invoke): use invoke_result_t instead of
result_of_t and is_nothrow_invocable instead of is_nothrow_callable.
(_Not_fn): Use __invoke_result instead of result_of.
* include/std/type_traits (__result_of_memobj, __result_of_memfun):
Remove partial specializations for reference_wrapper types.
(__result_of_impl): Use __inv_unwrap to strip reference_wrapper.
(__invoke_result): Define replacement for result_of and then use it to
define result_of.
(__is_callable_impl, __is_callable, __is_nothrow_callable): Replace
with __is_invocable_impl, __is_invocable, and __is_nothrow_invocable
respectively.
(invoke_result, invoke_result_t): Define for C++17.
(is_callable, is_nothrow_callable): Replace with is_invocable,
is_invocable_r, is_nothrow_invocable, and is_nothrow_invocable_r.
(is_callable_v, is_nothrow_callable_v): Replace with is_invocable_v,
is_invocable_r_v, is_nothrow_invocable_v, and is_nothrow_invocable_r_v.
* include/std/variant (hash<variant<T...>>): Use is_nothrow_invocable_v
instead of is_nothrow_callable_v.
* testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
main function.
* testsuite/20_util/function_objects/not_fn/1.cc: Use is_invocable
instead of is_callable.
* testsuite/20_util/is_callable/*: Rename directory and adjust tests
to use new traits.
* testsuite/20_util/is_notjrow_callable/*: Likewise.
* testsuite/20_util/optional/hash.cc: Use is_invocable_v instead of
is_callable.
* testsuite/20_util/variant/hash.cc: Likewise.

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

8 years agogcc/ChangeLog:
kelvin [Fri, 10 Mar 2017 15:29:35 +0000 (15:29 +0000)] 
gcc/ChangeLog:

2017-03-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

* config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
two typographic errors in the handling of TARGET_UPPER_REGS_DI.

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

8 years ago PR c++/79896
jakub [Fri, 10 Mar 2017 15:28:26 +0000 (15:28 +0000)] 
PR c++/79896
* decl.c (finish_enum_value_list): If value is error_mark_node,
don't copy it and change its type.
* init.c (constant_value_1): Return error_mark_node if DECL_INITIAL
of CONST_DECL is error_mark_node.

* g++.dg/ext/int128-5.C: New test.

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

8 years agotestsuite: attr-alloc_size-11.c (PR79356)
segher [Fri, 10 Mar 2017 15:23:06 +0000 (15:23 +0000)] 
testsuite: attr-alloc_size-11.c (PR79356)

As stated in the PR (and elsewhere), this test now passes on aarch64,
ia64, mips, powerpc, sparc, and s390x.  This patch disables the xfails
for those targets.

PR testsuite/79356
* gcc.dg/attr-alloc_size-11.c: Don't xfail on aarch64, ia64, mips,
powerpc, sparc, or s390x.

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

8 years ago PR target/79907
pthaugen [Fri, 10 Mar 2017 14:32:42 +0000 (14:32 +0000)] 
PR target/79907
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Test
TARGET_UPPER_REGS_DI when setting 'wi' constraint regclass.
* gcc.target/powerpc/pr79907.c: New.

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

8 years agoMPX: Fix option handling.
marxin [Fri, 10 Mar 2017 13:24:45 +0000 (13:24 +0000)] 
MPX: Fix option handling.

2017-03-10  Martin Liska  <mliska@suse.cz>

        PR target/65705
        PR target/69804
* toplev.c (process_options): Enable MPX with LSAN and UBSAN.
* tree-chkp.c (chkp_walk_pointer_assignments): Verify that
FIELD != NULL.

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

8 years ago[libstdc++-v3] Fix detection of obsolete isnan
rsandifo [Fri, 10 Mar 2017 12:22:45 +0000 (12:22 +0000)] 
[libstdc++-v3] Fix detection of obsolete isnan

libstdc++-v3 configure checks whether old glibc inline definitions
of isnan would conflict with the libstdc++-v3 definitions and
works around them if so.  But if g++ 6.x build A is used to build
another g++ 6.x B, the configure step for B will pick up the math.h
installed alongside A instead of the glibc version.  configure will
then assume that the workaround isn't necessary, leaving B with a
broken cmath.

isinf already worked around this.  This patch extends the same fix
to isnan.  (Thanks to George for the fix.)

libstdc++-v3/
2017-03-10  George Lander  <george.lander@arm.com>

* acinclude.m4 (glibcxx_cv_obsolete_isnan): Define
_GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h.
* configure: Regenerate.

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

8 years ago2017-03-10 Olivier Hainque <hainque@adacore.com>
hainque [Fri, 10 Mar 2017 11:16:21 +0000 (11:16 +0000)] 
2017-03-10  Olivier Hainque  <hainque@adacore.com>

* tree-switch-conversion (array_value_type): Start by resetting
candidate type to it's main variant.

testsuite/
* gnat.dg/opt64.adb: New test.
* gnat.dg/opt64_pkg.ads: New helper.
* gnat.dg/opt64_pkg.adb: New helper.

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

8 years ago PR rtl-optimization/79909
jakub [Fri, 10 Mar 2017 07:57:45 +0000 (07:57 +0000)] 
PR rtl-optimization/79909
* combine.c (try_combine): Use simplify_replace_rtx on individual
CALL_INSN_FUNCTION_USAGE elements instead of replace_rtx on copy_rtx
of the whole CALL_INSN_FUNCTION_USAGE.

* gcc.target/powerpc/pr79909.c: New test.

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

8 years ago PR tree-optimization/79972
jakub [Fri, 10 Mar 2017 07:55:00 +0000 (07:55 +0000)] 
PR tree-optimization/79972
* gimple-ssa-warn-alloca.c (alloca_call_type): Only call
get_range_info on SSA_NAMEs.  Formatting fixes.

* gcc.dg/pr79972.c: New test.

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

8 years ago PR tree-optimization/77975
jakub [Fri, 10 Mar 2017 07:53:57 +0000 (07:53 +0000)] 
PR tree-optimization/77975
* tree-ssa-loop-niter.c (get_base_for): Allow phi argument from latch
edge to be constant.
(get_val_for): For constant x return it.  Formatting fix.
(loop_niter_by_eval): Avoid pointless looping if the next iteration
would use the same bases as the current one.

* gcc.dg/pr77975.c: New test.

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

8 years agoEliminate unneeded test.
eager [Fri, 10 Mar 2017 00:48:51 +0000 (00:48 +0000)] 
Eliminate unneeded test.

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

8 years agoDaily bump.
gccadmin [Fri, 10 Mar 2017 00:16:21 +0000 (00:16 +0000)] 
Daily bump.

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

8 years ago PR c++/79962
mpolacek [Thu, 9 Mar 2017 22:45:39 +0000 (22:45 +0000)] 
PR c++/79962
PR c++/79984
* c-attribs.c (handle_nonnull_attribute): Save the result of default
conversion to the attribute list.

* c-c++-common/nonnull-3.c: New test.
* g++.dg/warn/Wnonnull3.C: New test.

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

8 years ago2017-03-09 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Thu, 9 Mar 2017 22:41:34 +0000 (22:41 +0000)] 
2017-03-09  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_gen_le_vsx_permute): Use rotate
instead of vec_select for V1TImode.
* conifg/rs6000/vsx.md (VSX_LE): Remove mode iterator that is no
longer needed.
(VSX_LE_128): Add V1TI to this mode iterator.
(*vsx_le_perm_load_<mode>): Change to use VSX_D mode iterator.
(*vsx_le_perm_store_<mode>): Likewise.
(pre-reload splitter for VSX stores): Likewise.
(post-reload splitter for VSX stores): Likewise.
(*vsx_xxpermdi2_le_<mode>): Likewise.
(*vsx_lxvd2x2_le_<mode>): Likewise.
(*vsx_stxvd2x2_le_<mode>): Likewise.

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

8 years ago * g++.dg/warn/Wpadded-1.C: Fix for 32-bit target.
jason [Thu, 9 Mar 2017 22:20:33 +0000 (22:20 +0000)] 
* g++.dg/warn/Wpadded-1.C: Fix for 32-bit target.

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

8 years agoDefine macro to simplify std::_Not_fn definition
redi [Thu, 9 Mar 2017 20:36:42 +0000 (20:36 +0000)] 
Define macro to simplify std::_Not_fn definition

* include/std/functional (_Not_fn): Define macro to simplify
repetitive function definitions.

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

8 years agoCorrect failures with --enable-checking=yes,rtl.
eager [Thu, 9 Mar 2017 18:09:39 +0000 (18:09 +0000)] 
Correct failures with --enable-checking=yes,rtl.

        * config/microblaze/microblaze.c (microblaze_expand_shift):
        Replace GET_CODE test with CONST_INT_P and INTVAL test with
        test for const0_rtx.
        * config/microblaze/microblaze.md (ashlsi3_byone, ashrsi3_byone,
        lshrsi3_byone): Replace INTVAL with test for const1_rtx.

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

8 years agoUse -mhard-float for MIPS -mlxc1-sxc1 tests
mpf [Thu, 9 Mar 2017 17:18:41 +0000 (17:18 +0000)] 
Use -mhard-float for MIPS -mlxc1-sxc1 tests

gcc/testsuite/

* gcc.target/mips/lxc1-sxc1-1.c: Use -mhard-float.
* gcc.target/mips/lxc1-sxc1-2.c: Likewise.

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

8 years ago PR sanitizer/79757
mpolacek [Thu, 9 Mar 2017 16:58:17 +0000 (16:58 +0000)] 
PR sanitizer/79757
* c-parser.c (c_parser_declaration_or_fndef): Don't sanitize old-style
parameter declarations with initializers.

* gcc.dg/ubsan/pr79757-1.c: New test.
* gcc.dg/ubsan/pr79757-2.c: New test.
* gcc.dg/ubsan/pr79757-3.c: New test.
* gcc.dg/ubsan/pr79757-4.c: New test.
* gcc.dg/ubsan/pr79757-5.c: New test.

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

8 years ago PR c/79969
jakub [Thu, 9 Mar 2017 16:42:45 +0000 (16:42 +0000)] 
PR c/79969
* c-decl.c (start_enum): Adjust DECL_SOURCE_LOCATION of
TYPE_STUB_DECL.

* gcc.dg/debug/dwarf2/enum-loc1.c: New test.

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

8 years ago PR c++/79687
mpolacek [Thu, 9 Mar 2017 16:36:37 +0000 (16:36 +0000)] 
PR c++/79687
* init.c (constant_value_1): Break if the variable has a dynamic
initializer.

* g++.dg/expr/ptrmem8.C: New test.
* g++.dg/expr/ptrmem9.C: New test.

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

8 years ago2017-03-09 Richard Biener <rguenther@suse.de>
rguenth [Thu, 9 Mar 2017 16:19:37 +0000 (16:19 +0000)] 
2017-03-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/79977
* graphite-scop-detection.c (scop_detection::merge_sese):
Handle the case of extra exits to blocks dominating the entry.

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

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

8 years agoDefine std::byte for C++17 (P0298R3)
redi [Thu, 9 Mar 2017 15:42:02 +0000 (15:42 +0000)] 
Define std::byte for C++17 (P0298R3)

* doc/xml/manual/status_cxx2017.xml: Document std::byte support.
* include/c_global/cstddef (std::byte): Define for C++17.
* testsuite/18_support/byte/global_neg.cc: New test.
* testsuite/18_support/byte/ops.cc: New test.
* testsuite/18_support/byte/requirements.cc: New test.

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

8 years agoAdd check_effective_target_rdynamic and use it in g++.dg/lto/pr69589_0.C.
tomtab [Thu, 9 Mar 2017 15:04:31 +0000 (15:04 +0000)] 
Add check_effective_target_rdynamic and use it in g++.dg/lto/pr69589_0.C.

gcc/
* doc/sourcebuild.texi (Effective-Target Keywords, Other attributes):
Document rdynamic.

gcc/testsuite/

* g++.dg/lto/pr69589_0.C: Add dg-require-effective-target for
rdynamic.  Remove dg-skip-if for targets which don't support -rdynamic.
* lib/target-supports.exp (check_effective_target_rdynamic):
New proc.

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

8 years ago2017-03-09 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 9 Mar 2017 14:43:17 +0000 (14:43 +0000)] 
2017-03-09  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/79949
* lra-constraints.c (process_alt_operands): Check memory when
trying to predict a cycle.  Print about the overall increase.

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

8 years ago2017-03-09 Richard Biener <rguenther@suse.de>
rguenth [Thu, 9 Mar 2017 13:20:50 +0000 (13:20 +0000)] 
2017-03-09  Richard Biener  <rguenther@suse.de>

PR middle-end/79971
* gimple-expr.c (useless_type_conversion_p): Preserve
TYPE_SATURATING for fixed-point types.

* gcc.dg/fixed-point/pr79971.c: New testcase.

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

8 years ago2017-03-09 Richard Biener <rguenther@suse.de>
rguenth [Thu, 9 Mar 2017 13:20:03 +0000 (13:20 +0000)] 
2017-03-09  Richard Biener  <rguenther@suse.de>

PR ipa/79970
* ipa-prop.c (ipa_modify_formal_parameters): Avoid changing
alignment of BLKmode params.

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

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

8 years ago2017-03-09 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 9 Mar 2017 11:51:29 +0000 (11:51 +0000)] 
2017-03-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/71966
* g++.dg/cpp0x/pr71966-1.C: New.
* g++.dg/cpp0x/pr71966-2.C: Likewise.

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

8 years ago[AArch64] PR target/79913: VEC_SELECT bugs in aarch64 patterns
ktkachov [Thu, 9 Mar 2017 10:34:36 +0000 (10:34 +0000)] 
[AArch64] PR target/79913: VEC_SELECT bugs in aarch64 patterns

PR target/79913
* config/aarch64/iterators.md (VALL_F16_NO_V2Q): New mode iterator.
(VALL_NO_V2Q): Likewise.
(VDQF_DF): Delete.
* config/aarch64/aarch64-simd.md
(aarch64_dup_lane_<vswap_width_name><mode>): Use VALL_F16_NO_V2Q
iterator.
(*aarch64_simd_vec_copy_lane_<vswap_width_name><mode>): Use
VALL_NO_V2Q mode iterator.
(*aarch64_vgetfmulx<mode>): Use VDQF iterator.

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

8 years agoFix ICE in tree-chkp-opt.c (PR tree-optimization/79631).
marxin [Thu, 9 Mar 2017 10:10:02 +0000 (10:10 +0000)] 
Fix ICE in tree-chkp-opt.c (PR tree-optimization/79631).

2017-03-09  Martin Liska  <mliska@suse.cz>

PR tree-optimization/79631
* tree-chkp-opt.c (chkp_is_constant_addr): Call
tree_int_cst_sign_bit just for INTEGER constants.
2017-03-09  Martin Liska  <mliska@suse.cz>

PR tree-optimization/79631
* gcc.target/i386/mpx/pr79631.c: New test.

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

8 years agoDisable -fcheck-pointer-bounds with sanitizers.
marxin [Thu, 9 Mar 2017 10:04:50 +0000 (10:04 +0000)] 
Disable -fcheck-pointer-bounds with sanitizers.

2017-03-09  Martin Liska  <mliska@suse.cz>

PR target/65705
PR target/69804
* toplev.c (process_options): Disable -fcheck-pointer-bounds with
sanitizers.
2017-03-09  Martin Liska  <mliska@suse.cz>

PR target/65705
PR target/69804
* gcc.target/i386/pr71458.c: Update scanned pattern.

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

8 years ago PR c++/79672
mpolacek [Thu, 9 Mar 2017 09:53:03 +0000 (09:53 +0000)] 
PR c++/79672
* tree.c (inchash::add_expr): Handle TREE_VEC.

* g++.dg/warn/Wduplicated-branches2.C: Fix PR.
* g++.dg/warn/Wduplicated-branches3.C: New test.

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

8 years agogcc/testsuite/
prachigodbole [Thu, 9 Mar 2017 09:38:00 +0000 (09:38 +0000)] 
gcc/testsuite/
* gcc.target/mips/msa-bclri.c: Skip the test for -O0.

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

8 years agoSupport BIT_FIELD_REF in MPX (PR ipa/79764).
marxin [Thu, 9 Mar 2017 09:26:45 +0000 (09:26 +0000)] 
Support BIT_FIELD_REF in MPX (PR ipa/79764).

2017-03-09  Martin Liska  <mliska@suse.cz>

PR ipa/79764
(chkp_narrow_size_and_offset): New function.
(chkp_parse_array_and_component_ref): Support BIT_FIELD_REF.
(void chkp_parse_bit_field_ref): New function.
(chkp_make_addressed_object_bounds): Add case for BIT_FIELD_REF.
(chkp_process_stmt): Use chkp_parse_bit_field_ref.
2017-03-09  Martin Liska  <mliska@suse.cz>

PR ipa/79764
* g++.dg/pr79764.C: New test.

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

8 years agoGet bounds for a PARM_DECL (PR ipa/79761).
marxin [Thu, 9 Mar 2017 09:22:29 +0000 (09:22 +0000)] 
Get bounds for a PARM_DECL (PR ipa/79761).

2017-03-09  Martin Liska  <mliska@suse.cz>

PR ipa/79761
* tree-chkp.c (chkp_get_bound_for_parm): Get bounds for a param.
(chkp_find_bounds_1): Remove gcc_unreachable.
2017-03-09  Martin Liska  <mliska@suse.cz>

PR ipa/79761
* g++.dg/pr79761.C: New test.

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

8 years agoIncrement value instead of a pointer in ADA macro processing.
marxin [Thu, 9 Mar 2017 09:20:59 +0000 (09:20 +0000)] 
Increment value instead of a pointer in ADA macro processing.

2017-03-09  Martin Liska  <mliska@suse.cz>

* c-ada-spec.c (macro_length): Increment value instead of a pointer.

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

8 years ago PR sanitizer/79944
jakub [Thu, 9 Mar 2017 09:20:23 +0000 (09:20 +0000)] 
PR sanitizer/79944
* asan.c (get_mem_refs_of_builtin_call): For BUILT_IN_ATOMIC* and
BUILT_IN_SYNC*, determine the access type from the size suffix and
always build a MEM_REF with that type.  Handle forgotten
BUILT_IN_SYNC_FETCH_AND_NAND_16 and BUILT_IN_SYNC_NAND_AND_FETCH_16.

* c-c++-common/asan/pr79944.c: New test.

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

8 years ago PR target/79932
jakub [Thu, 9 Mar 2017 09:11:06 +0000 (09:11 +0000)] 
PR target/79932
* config/i386/avx512vlintrin.h (_mm256_cmpge_epi32_mask,
_mm256_cmpge_epi64_mask, _mm256_cmpge_epu32_mask,
_mm256_cmpge_epu64_mask, _mm256_cmple_epi32_mask,
_mm256_cmple_epi64_mask, _mm256_cmple_epu32_mask,
_mm256_cmple_epu64_mask, _mm256_cmplt_epi32_mask,
_mm256_cmplt_epi64_mask, _mm256_cmplt_epu32_mask,
_mm256_cmplt_epu64_mask, _mm256_cmpneq_epi32_mask,
_mm256_cmpneq_epi64_mask, _mm256_cmpneq_epu32_mask,
_mm256_cmpneq_epu64_mask, _mm256_mask_cmpge_epi32_mask,
_mm256_mask_cmpge_epi64_mask, _mm256_mask_cmpge_epu32_mask,
_mm256_mask_cmpge_epu64_mask, _mm256_mask_cmple_epi32_mask,
_mm256_mask_cmple_epi64_mask, _mm256_mask_cmple_epu32_mask,
_mm256_mask_cmple_epu64_mask, _mm256_mask_cmplt_epi32_mask,
_mm256_mask_cmplt_epi64_mask, _mm256_mask_cmplt_epu32_mask,
_mm256_mask_cmplt_epu64_mask, _mm256_mask_cmpneq_epi32_mask,
_mm256_mask_cmpneq_epi64_mask, _mm256_mask_cmpneq_epu32_mask,
_mm256_mask_cmpneq_epu64_mask, _mm_cmpge_epi32_mask,
_mm_cmpge_epi64_mask, _mm_cmpge_epu32_mask, _mm_cmpge_epu64_mask,
_mm_cmple_epi32_mask, _mm_cmple_epi64_mask, _mm_cmple_epu32_mask,
_mm_cmple_epu64_mask, _mm_cmplt_epi32_mask, _mm_cmplt_epi64_mask,
_mm_cmplt_epu32_mask, _mm_cmplt_epu64_mask, _mm_cmpneq_epi32_mask,
_mm_cmpneq_epi64_mask, _mm_cmpneq_epu32_mask, _mm_cmpneq_epu64_mask,
_mm_mask_cmpge_epi32_mask, _mm_mask_cmpge_epi64_mask,
_mm_mask_cmpge_epu32_mask, _mm_mask_cmpge_epu64_mask,
_mm_mask_cmple_epi32_mask, _mm_mask_cmple_epi64_mask,
_mm_mask_cmple_epu32_mask, _mm_mask_cmple_epu64_mask,
_mm_mask_cmplt_epi32_mask, _mm_mask_cmplt_epi64_mask,
_mm_mask_cmplt_epu32_mask, _mm_mask_cmplt_epu64_mask,
_mm_mask_cmpneq_epi32_mask, _mm_mask_cmpneq_epi64_mask,
_mm_mask_cmpneq_epu32_mask, _mm_mask_cmpneq_epu64_mask): Move
definitions outside of __OPTIMIZE__ guarded section.

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

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

8 years ago PR target/79932
jakub [Thu, 9 Mar 2017 09:09:27 +0000 (09:09 +0000)] 
PR target/79932
* config/i386/avx512bwintrin.h (_mm512_packs_epi32,
_mm512_maskz_packs_epi32, _mm512_mask_packs_epi32,
_mm512_packus_epi32, _mm512_maskz_packus_epi32,
_mm512_mask_packus_epi32): Move definitions outside of __OPTIMIZE__
guarded section.

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

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

8 years ago PR c++/79900 - ICE in strip_typedefs
mpolacek [Thu, 9 Mar 2017 08:35:37 +0000 (08:35 +0000)] 
PR c++/79900 - ICE in strip_typedefs
* tree.c (strip_typedefs): Skip the attribute handling if T is
a variant type which hasn't been updated yet.

* g++.dg/warn/Wpadded-1.C: New test.

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

8 years agoS/390: Add missing constraints in builtin patterns
krebbel [Thu, 9 Mar 2017 07:53:29 +0000 (07:53 +0000)] 
S/390: Add missing constraints in builtin patterns

gcc/ChangeLog:

2017-03-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/vx-builtins.md ("vfee<mode>", "vfeez<mode>")
("vfenez<mode>"): Add missing constraints.

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

8 years ago PR c++/79797 - ICE with self-reference in array DMI.
jason [Thu, 9 Mar 2017 01:01:18 +0000 (01:01 +0000)] 
PR c++/79797 - ICE with self-reference in array DMI.

* constexpr.c (lookup_placeholder): Split out...
(cxx_eval_constant_expression): ...from here.

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

8 years agoDaily bump.
gccadmin [Thu, 9 Mar 2017 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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

8 years agoPR target/79928 - nds32: misspelled diagnostic: not support -fpic
msebor [Wed, 8 Mar 2017 23:29:42 +0000 (23:29 +0000)] 
PR target/79928 - nds32: misspelled diagnostic: not support -fpic

Verified by building an nds32be-elf cross-compiler.

gcc/ChangeLog
* config/nds32/nds32.c (nds32_option_override):

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

8 years ago PR c/79940
jakub [Wed, 8 Mar 2017 17:21:06 +0000 (17:21 +0000)] 
PR c/79940
* gimplify.c (gimplify_omp_for): Replace index var in outer
taskloop statement with an artificial variable and add
OMP_CLAUSE_PRIVATE clause for it.

* testsuite/libgomp.c/pr79940.c: New test.

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

8 years agoFix PR demangler/70909 and 67264 (endless demangler recursion)
trippels [Wed, 8 Mar 2017 14:28:38 +0000 (14:28 +0000)] 
Fix PR demangler/70909 and 67264 (endless demangler recursion)

ChangeLog:

       PR demangler/70909
       PR demangler/67264
       * include/demangle.h: Add d_printing to struct demangle_component
       and pass struct demangle_component as non const.

libiberty/ChangeLog:

       PR demangler/70909
       PR demangler/67264
       * cp-demangle.c: Fix endless recursion. Pass
       struct demangle_component as non const.
       (d_make_empty): Initialize variable.
       (d_print_comp_inner): Limit recursion.
       (d_print_comp): Decrement variable.
       * cp-demint.c (cplus_demangle_fill_component): Initialize
       variable.
       (cplus_demangle_fill_builtin_type): Likewise.
       (cplus_demangle_fill_operator): Likewise.
       * testsuite/demangle-expected: Add tests.

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

8 years ago * btest.c (test5): Replace #ifdef guard with 'unused' attribute
ian [Wed, 8 Mar 2017 14:21:21 +0000 (14:21 +0000)] 
   * btest.c (test5): Replace #ifdef guard with 'unused' attribute
       to fix compile warning when BACKTRACE_SUPPORTED isn't defined.

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

8 years ago2017-03-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Mar 2017 14:10:47 +0000 (14:10 +0000)] 
2017-03-08  Richard Biener  <rguenther@suse.de>

PR tree-optimization/79955
* tree-ssa-uninit.c (warn_uninitialized_vars): Do not warn
for accesses that are completely outside of the variable.

* gcc.dg/uninit-24.c: New testcase.

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

8 years ago * g++.dg/Walloca1.C: Adjust dg-warning.
mpolacek [Wed, 8 Mar 2017 12:58:01 +0000 (12:58 +0000)] 
* g++.dg/Walloca1.C: Adjust dg-warning.

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

8 years ago2017-03-08 Andrew Haley <aph@redhat.com>
aph [Wed, 8 Mar 2017 11:35:23 +0000 (11:35 +0000)] 
2017-03-08  Andrew Haley  <aph@redhat.com>

PR tree-optimization/79943
* tree-ssa-loop-split.c (compute_new_first_bound): When
calculating the new upper bound, (END-BEG) should be added, not
subtracted.

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

8 years ago PR ada/79903
ebotcazou [Wed, 8 Mar 2017 09:20:17 +0000 (09:20 +0000)] 
PR ada/79903
* socket.c (__gnat_gethostbyaddr): Add missing test for __rtems__.

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

8 years ago PR ada/79945
ebotcazou [Wed, 8 Mar 2017 09:08:54 +0000 (09:08 +0000)] 
PR ada/79945
* system-linux-ppc.ads (Default_Bit_Order): Use Standard's setting.

* system-linux-arm.ads (Default_Bit_Order): Likewise.
* system-linux-mips.ads (Default_Bit_Order): Likewise.
* system-linux-armeb.ads: Delete.
* system-linux-mipsel.ads: Likewise.
* gcc-interface/Makefile.in (MIPS/Linux): Adjust.
(ARM/Linux): Likewise.

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

8 years ago * config/avr/avr.md (setmemhi): Make sure match_dup
jakub [Wed, 8 Mar 2017 08:52:05 +0000 (08:52 +0000)] 
* config/avr/avr.md (setmemhi): Make sure match_dup
operand number comes before match_scratch.

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

8 years ago2017-03-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Mar 2017 08:50:01 +0000 (08:50 +0000)] 
2017-03-08  Richard Biener  <rguenther@suse.de>

PR tree-optimization/79920
* tree-vect-slp.c (vect_create_mask_and_perm): Remove and inline
with ncopies == 1 to ...
(vect_transform_slp_perm_load): ... here.  Properly compute
all element loads by iterating VF times over the group.  Do
not handle ncopies (computed in a broken way) in
vect_create_mask_and_perm.

* gcc.dg/vect/pr79920.c: New testcase.

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

8 years ago PR sanitizer/79904
jakub [Wed, 8 Mar 2017 08:35:20 +0000 (08:35 +0000)] 
PR sanitizer/79904
* internal-fn.c (expand_vector_ubsan_overflow): If arg0 or arg1
is a uniform vector, use uniform_vector_p return value instead of
building ARRAY_REF on folded VIEW_CONVERT_EXPR to array type.

* gcc.dg/ubsan/pr79904.c: New test.

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

8 years agoDaily bump.
gccadmin [Wed, 8 Mar 2017 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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

8 years ago PR c/79834
jakub [Tue, 7 Mar 2017 19:07:44 +0000 (19:07 +0000)] 
PR c/79834
c/
* c-parser.c (c_parser_pragma): Use error_at instead of c_parser_error
for "may only be used in compound statements" diagnostics, change it
such that the same translatable string is used for all pragmas.  For
PRAGMA_OACC_WAIT use "acc wait" rather than "acc enter data" in the
diagnostics.
(c_parser_omp_cancellation_point, c_parser_omp_target_update,
c_parser_omp_target_enter_data, c_parser_omp_target_exit_data): Change
"may only be used in compound statements" diagnostics, such that the
same translatable string is used for all pragmas.
cp/
* parser.c (cp_parser_omp_cancellation_point,
cp_parser_omp_target_enter_data, cp_parser_omp_target_exit_data,
cp_parser_omp_target_update): Change "may only be used in compound
statements" diagnostics, such that the same translatable string is
used for all pragmas.
(cp_parser_pragma): Likewise.  Use error_at instead of
cp_parser_error for that diagnostics.
testsuite/
* c-c++-common/goacc/pragma_context.c (f2): Adjust expected
diagnostics.

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

8 years ago PR middle-end/79809
mpolacek [Tue, 7 Mar 2017 17:30:53 +0000 (17:30 +0000)] 
PR middle-end/79809
* gimple-ssa-warn-alloca.c (pass_walloca::gate): Use HOST_WIDE_INT.
(alloca_call_type): Likewise.

* g++.dg/Walloca1.C: New test.

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

8 years agogcov: put comment to correct location.
marxin [Tue, 7 Mar 2017 14:13:10 +0000 (14:13 +0000)] 
gcov: put comment to correct location.

2017-03-07  Martin Liska  <mliska@suse.cz>

* gcov.c (process_args): Put comment to correct location.

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

8 years agoUse array_at_struct_end_p in tree-chkp.c (PR middle-end/68270).
marxin [Tue, 7 Mar 2017 14:12:52 +0000 (14:12 +0000)] 
Use array_at_struct_end_p in tree-chkp.c (PR middle-end/68270).

2017-03-07  Martin Liska  <mliska@suse.cz>

PR middle-end/68270
* tree-chkp.c (chkp_may_narrow_to_field): Add new argument ref.
Use array_at_struct_end_p instead of DECL_CHAIN (field).
(chkp_narrow_bounds_for_field): Likewise.
(chkp_parse_array_and_component_ref): Pass one more argument to
call.
2017-03-07  Martin Liska  <mliska@suse.cz>

PR middle-end/68270
* g++.dg/pr68270.C: New test.

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