gcc/cygwin-gcc.git
6 years agoGenerate mtvsrddibm/heads/power9-gcc6
Michael Meissner [Tue, 31 May 2016 23:32:44 +0000 (31 23:32 +0000)]
Generate mtvsrdd

From-SVN: r236967

6 years agoFix pr71186
Michael Meissner [Tue, 31 May 2016 23:20:21 +0000 (31 23:20 +0000)]
Fix pr71186

From-SVN: r236965

6 years agoBackport p9 min/max changes to gcc 6
Michael Meissner [Tue, 31 May 2016 22:39:48 +0000 (31 22:39 +0000)]
Backport p9 min/max changes to gcc 6

From-SVN: r236961

6 years agoBackport vparity/vctz changes to gcc 6
Michael Meissner [Tue, 31 May 2016 22:30:49 +0000 (31 22:30 +0000)]
Backport vparity/vctz changes to gcc 6

From-SVN: r236960

6 years agoBackport XXPERM/VPERMR/XXPERMR changes to gcc 6
Michael Meissner [Tue, 31 May 2016 22:24:45 +0000 (31 22:24 +0000)]
Backport XXPERM/VPERMR/XXPERMR changes to gcc 6

From-SVN: r236959

6 years agoBackport XXSPLTIB/splat words to gcc 6
Michael Meissner [Tue, 31 May 2016 22:18:06 +0000 (31 22:18 +0000)]
Backport XXSPLTIB/splat words to gcc 6

From-SVN: r236958

6 years agoBackport vector d-form support
Michael Meissner [Tue, 31 May 2016 22:08:36 +0000 (31 22:08 +0000)]
Backport vector d-form support

From-SVN: r236957

6 years agoBackport vector d-form support
Michael Meissner [Tue, 31 May 2016 22:06:27 +0000 (31 22:06 +0000)]
Backport vector d-form support

From-SVN: r236956

6 years agocheckpoint
Michael Meissner [Tue, 31 May 2016 19:40:06 +0000 (31 19:40 +0000)]
checkpoint

From-SVN: r236944

6 years agoMerge up to 236941.
Michael Meissner [Tue, 31 May 2016 19:32:29 +0000 (31 19:32 +0000)]
Merge up to 236941.

From-SVN: r236943

6 years agoMerge complex back to gcc-6.2
Michael Meissner [Tue, 31 May 2016 19:13:49 +0000 (31 19:13 +0000)]
Merge complex back to gcc-6.2

From-SVN: r236940

6 years agore PR ada/71317 (Compiling gnat for rtems fails at s-taprop.adb)
Eric Botcazou [Tue, 31 May 2016 18:59:45 +0000 (31 18:59 +0000)]
re PR ada/71317 (Compiling gnat for rtems fails at s-taprop.adb)

* s-osinte-kfreebsd-gnu.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

PR ada/71317
* s-osinte-rtems.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

From-SVN: r236939

6 years agoPR c++/71306 - bogus -Wplacement-new with an array element
Martin Sebor [Tue, 31 May 2016 17:24:22 +0000 (31 17:24 +0000)]
PR c++/71306 - bogus -Wplacement-new with an array element

gcc/cp/ChangeLog:
2016-05-31  Martin Sebor  <msebor@redhat.com>

PR c++/71306
* init.c (warn_placement_new_too_small): Handle placement new arguments
that are elements of arrays more carefully.  Remove a pointless loop.

gcc/testsuite/ChangeLog:
2016-05-31  Martin Sebor  <msebor@redhat.com>

PR c++/71306
* g++.dg/warn/Wplacement-new-size-3.C: New test.

From-SVN: r236934

6 years agobackport: re PR debug/71057 (ICE in schedule_generic_params_dies_gen, at dwarf2out...
Richard Biener [Tue, 31 May 2016 09:58:50 +0000 (31 09:58 +0000)]
backport: re PR debug/71057 (ICE in schedule_generic_params_dies_gen, at dwarf2out.c:24142)

2016-05-31  Richard Biener  <rguenther@suse.de>

Backport from mainline
2016-05-11  Richard Biener  <rguenther@suse.de>

PR debug/71057
* dwarf2out.c (retry_incomplete_types): Set early_dwarf.
(dwarf2out_finish): Move retry_incomplete_types call ...
(dwarf2out_early_finish): ... here.

* g++.dg/debug/pr71057.C: New testcase.

From-SVN: r236912

6 years ago[ARM] PR target/71056: Don't use vectorized builtins when NEON is not available
Kyrylo Tkachov [Tue, 31 May 2016 08:29:39 +0000 (31 08:29 +0000)]
[ARM] PR target/71056: Don't use vectorized builtins when NEON is not available

PR target/71056
* config/arm/arm-builtins.c (arm_builtin_vectorized_function): Return
NULL_TREE early if NEON is not available.  Remove now redundant check
in ARM_CHECK_BUILTIN_MODE.

* gcc.target/arm/pr71056.c: New test.

From-SVN: r236910

6 years agobackport "Handle 3-arg phi in copy_bb_and_scalar_dependences"
Tom de Vries [Tue, 31 May 2016 07:27:23 +0000 (31 07:27 +0000)]
backport "Handle 3-arg phi in copy_bb_and_scalar_dependences"

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

backport:
2016-05-31  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69068
* graphite-isl-ast-to-gimple.c (copy_bb_and_scalar_dependences): Handle
phis with more than two args.

* gcc.dg/graphite/pr69068.c: New test.

From-SVN: r236908

6 years agoDaily bump.
GCC Administrator [Tue, 31 May 2016 00:16:21 +0000 (31 00:16 +0000)]
Daily bump.

From-SVN: r236905

6 years agore PR c++/71349 (Combined async target clause parsing issues)
Jakub Jelinek [Mon, 30 May 2016 21:40:04 +0000 (30 23:40 +0200)]
re PR c++/71349 (Combined async target clause parsing issues)

PR c++/71349
* c-parser.c (c_parser_omp_for): Don't disallow nowait clause
when combined with target construct.

* parser.c (cp_parser_omp_for): Don't disallow nowait clause
when combined with target construct.
(cp_parser_omp_parallel): Pass cclauses == NULL as last argument
to cp_parser_omp_all_clauses.

* c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_DEPEND to
C_OMP_CLAUSE_SPLIT_TARGET.  Put OMP_CLAUSE_NOWAIT to
C_OMP_CLAUSE_SPLIT_TARGET if combined with target construct,
instead of C_OMP_CLAUSE_SPLIT_FOR.

* c-c++-common/gomp/clauses-1.c (bar): Add dd argument.  Add
nowait depend(inout: dd[0]) clauses where permitted.

From-SVN: r236901

6 years agobackport: config.gcc: Move hard float support for arm*hf*-*-freebsd* into armv6*...
Andreas Tobler [Mon, 30 May 2016 20:17:29 +0000 (30 22:17 +0200)]
backport: config.gcc: Move hard float support for arm*hf*-*-freebsd* into armv6*-*-freebsd* for...

2016-05-30  Andreas Tobler  <andreast@gcc.gnu.org>

    Backport from mainline
    2016-05-30  Andreas Tobler  <andreast@gcc.gnu.org>

    * config.gcc: Move hard float support for arm*hf*-*-freebsd* into
    armv6*-*-freebsd* for FreeBSD 11. Eliminate the arm*hf*-*-freebsd*
    target.

From-SVN: r236899

6 years agobackport: altivec.h: Change definitions of vec_xl and vec_xst.
Bill Schmidt [Mon, 30 May 2016 17:09:22 +0000 (30 17:09 +0000)]
backport: altivec.h: Change definitions of vec_xl and vec_xst.

[gcc]

2016-05-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

Backport from mainline
2016-04-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.h: Change definitions of vec_xl and
vec_xst.
* config/rs6000/rs6000-builtin.def (LD_ELEMREV_V2DF): New.
(LD_ELEMREV_V2DI): New.
(LD_ELEMREV_V4SF): New.
(LD_ELEMREV_V4SI): New.
(LD_ELEMREV_V8HI): New.
(LD_ELEMREV_V16QI): New.
(ST_ELEMREV_V2DF): New.
(ST_ELEMREV_V2DI): New.
(ST_ELEMREV_V4SF): New.
(ST_ELEMREV_V4SI): New.
(ST_ELEMREV_V8HI): New.
(ST_ELEMREV_V16QI): New.
(XL): New.
(XST): New.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
descriptions for VSX_BUILTIN_VEC_XL and VSX_BUILTIN_VEC_XST.
* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Map from
TARGET_P9_VECTOR to RS6000_BTM_P9_VECTOR.
(altivec_expand_builtin): Add handling for
VSX_BUILTIN_ST_ELEMREV_<MODE> and VSX_BUILTIN_LD_ELEMREV_<MODE>.
(rs6000_invalid_builtin): Add error-checking for
RS6000_BTM_P9_VECTOR.
(altivec_init_builtins): Define builtins used to implement vec_xl
and vec_xst.
(rs6000_builtin_mask_names): Define power9-vector.
* config/rs6000/rs6000.h (MASK_P9_VECTOR): Define.
(RS6000_BTM_P9_VECTOR): Define.
(RS6000_BTM_COMMON): Include RS6000_BTM_P9_VECTOR.
* config/rs6000/vsx.md (vsx_ld_elemrev_v2di): New define_insn.
(vsx_ld_elemrev_v2df): Likewise.
(vsx_ld_elemrev_v4sf): Likewise.
(vsx_ld_elemrev_v4si): Likewise.
(vsx_ld_elemrev_v8hi): Likewise.
(vsx_ld_elemrev_v16qi): Likewise.
(vsx_st_elemrev_v2df): Likewise.
(vsx_st_elemrev_v2di): Likewise.
(vsx_st_elemrev_v4sf): Likewise.
(vsx_st_elemrev_v4si): Likewise.
(vsx_st_elemrev_v8hi): Likewise.
(vsx_st_elemrev_v16qi): Likewise.
* doc/extend.texi: Add prototypes for vec_xl and vec_xst.  Correct
grammar.

[gcc/testsuite]

2016-05-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

Backport from mainline
2016-04-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vsx-elemrev-1.c: New.
* gcc.target/powerpc/vsx-elemrev-2.c: New.
* gcc.target/powerpc/vsx-elemrev-3.c: New.
* gcc.target/powerpc/vsx-elemrev-4.c: New.

From-SVN: r236890

6 years agobackport "Fix pr69067.c testcase"
Tom de Vries [Mon, 30 May 2016 15:54:06 +0000 (30 15:54 +0000)]
backport "Fix pr69067.c testcase"

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

backport:
2016-05-30  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/graphite/pr69067.c (main): Remove superfluous argument in call
to ce.

From-SVN: r236887

6 years agoargs.h (clear_non_sret_int_hardware_registers): Use correct register when clearing...
Uros Bizjak [Mon, 30 May 2016 14:53:28 +0000 (30 16:53 +0200)]
args.h (clear_non_sret_int_hardware_registers): Use correct register when clearing %edx.

* gcc.target/i386/iamcu/args.h (clear_non_sret_int_hardware_registers):
Use correct register when clearing %edx.

From-SVN: r236884

6 years agobackport: [multiple changes]
Richard Biener [Mon, 30 May 2016 14:00:18 +0000 (30 14:00 +0000)]
backport: [multiple changes]

2016-05-30  Richard Biener  <rguenther@suse.de>

Backport from mainline
2016-05-11  Richard Biener  <rguenther@suse.de>

PR middle-end/71002
* alias.c (reference_alias_ptr_type): Preserve alias-set zero
if the langhook insists on it.
* fold-const.c (make_bit_field_ref): Add arg for the original
reference and preserve its alias-set.
(decode_field_reference): Take exp by reference and adjust it
to the original memory reference.
(optimize_bit_field_compare): Adjust callers.
(fold_truth_andor_1): Likewise.

* g++.dg/torture/pr71002.C: New testcase.

2016-05-13  Jakub Jelinek  <jakub@redhat.com>

PR bootstrap/71071
* fold-const.c (fold_checksum_tree): Allow modification
of TYPE_ALIAS_SET during folding.

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

From-SVN: r236879

6 years agovisium.c (visium_split_double_add): Minor tweaks.
Eric Botcazou [Mon, 30 May 2016 08:48:32 +0000 (30 08:48 +0000)]
visium.c (visium_split_double_add): Minor tweaks.

* config/visium/visium.c (visium_split_double_add): Minor tweaks.
(visium_expand_copysign): Use gen_int_mode directly.
(visium_compute_frame_size): Minor tweaks.

From-SVN: r236872

6 years agobackport "Remove assert in get_def_bb_for_const"
Tom de Vries [Mon, 30 May 2016 08:05:10 +0000 (30 08:05 +0000)]
backport "Remove assert in get_def_bb_for_const"

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

backport:
2016-05-30  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/69067
* graphite-isl-ast-to-gimple.c (get_def_bb_for_const): Remove assert.

* gcc.dg/graphite/pr69067.c: New test.

From-SVN: r236869

6 years agoDaily bump.
GCC Administrator [Mon, 30 May 2016 00:16:22 +0000 (30 00:16 +0000)]
Daily bump.

From-SVN: r236866

6 years agore PR c++/71105 (lambdas with default captures improperly have function pointer conve...
Paolo Carlini [Sun, 29 May 2016 08:27:07 +0000 (29 08:27 +0000)]
re PR c++/71105 (lambdas with default captures improperly have function pointer conversions)

/cp
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/71105
* lambda.c (maybe_add_lambda_conv_op): Early return also when
LAMBDA_EXPR_DEFAULT_CAPTURE_MODE != CPLD_NONE.

/testsuite
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/71105
* g++.dg/cpp0x/lambda/lambda-conv11.C: New.
* g++.dg/cpp1y/lambda-conv1.C: Likewise.
* g++.dg/cpp1y/lambda-conv2.C: Likewise.

From-SVN: r236860

6 years agoDaily bump.
GCC Administrator [Sun, 29 May 2016 00:16:15 +0000 (29 00:16 +0000)]
Daily bump.

From-SVN: r236856

6 years agoDaily bump.
GCC Administrator [Sat, 28 May 2016 00:16:13 +0000 (28 00:16 +0000)]
Daily bump.

From-SVN: r236841

6 years agovisium-protos.h (split_double_move): Rename into...
Eric Botcazou [Fri, 27 May 2016 15:09:38 +0000 (27 15:09 +0000)]
visium-protos.h (split_double_move): Rename into...

* config/visium/visium-protos.h (split_double_move): Rename into...
(visium_split_double_move): ...this.
(visium_split_double_add): Declare.
* config/visium/visium.c (split_double_move): Rename into...
(visium_split_double_move): ...this.
(visium_split_double_add): New function.
(visium_expand_copysign): Renumber operands for consistency.
* config/visium/visium.md (DImode move splitter): Adjust to renaming.
(DFmode move splitter): Likewise.
(*addi3_insn): Split by means of visium_split_double_add.
(*adddi3_insn_flags): Delete.
(*plus_plus_sltu<subst_arith>): New insn.
(*subdi3_insn): Split by means of visium_split_double_add.
(subdi3_insn_flags): Delete.
(*minus_minus_sltu<subst_arith>): New insn.
(*negdi2_insn): Split by means of visium_split_double_add.
(*negdi2_insn_flags): Delete.

From-SVN: r236828

6 years agobackport: re PR middle-end/71279 (ICE on trunk gcc with knl target)
Ilya Enkovich [Fri, 27 May 2016 10:43:34 +0000 (27 10:43 +0000)]
backport: re PR middle-end/71279 (ICE on trunk gcc with knl target)

gcc/

Backport from mainline r236810.
2016-05-27  Ilya Enkovich  <ilya.enkovich@intel.com>

PR middle-end/71279
* fold-const.c (fold_ternary_loc): Don't fold VEC_COND_EXPR
into comparison.

gcc/testsuite/

Backport from mainline r236810.
2016-05-27  Ilya Enkovich  <ilya.enkovich@intel.com>

PR middle-end/71279
* gcc.dg/pr71279.c: New test.

From-SVN: r236811

6 years agobackport: re PR fortran/66461 (ICE on missing end program in fixed source)
Jerry DeLisle [Fri, 27 May 2016 01:05:21 +0000 (27 01:05 +0000)]
backport: re PR fortran/66461 (ICE on missing end program in fixed source)

2016-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

Backport from trunk.
PR fortran/66461
* scanner.c (gfc_next_char_literal): Clear end_flag when adjusting
current locus back to old_locus.

Backport from trunk.
PR fortran/66461
* gfortran.dg/unexpected_eof.f: New test

From-SVN: r236806

6 years agoDaily bump.
GCC Administrator [Fri, 27 May 2016 00:16:13 +0000 (27 00:16 +0000)]
Daily bump.

From-SVN: r236803

6 years agosetup branch
Michael Meissner [Thu, 26 May 2016 18:04:02 +0000 (26 18:04 +0000)]
setup branch

From-SVN: r236791

6 years agolibstdc++/70762 fix fallback implementation of nonexistent_path
Jonathan Wakely [Thu, 26 May 2016 17:18:13 +0000 (26 18:18 +0100)]
libstdc++/70762 fix fallback implementation of nonexistent_path

Backport from mainline
2016-04-24  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/70762
* testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
static counter to return a different path on every call.

From-SVN: r236786

6 years agoAdd dg-require-filesystem-ts directive to test
Jonathan Wakely [Thu, 26 May 2016 15:25:04 +0000 (26 16:25 +0100)]
Add dg-require-filesystem-ts directive to test

* testsuite/experimental/filesystem/path/native/string.cc: Add
dg-require-filesystem-ts directive.

From-SVN: r236777

6 years agoDaily bump.
GCC Administrator [Thu, 26 May 2016 00:16:16 +0000 (26 00:16 +0000)]
Daily bump.

From-SVN: r236760

6 years agotree-ssa-phiopt.c (factor_out_conditional_conversion): Remove redundant test and...
Eric Botcazou [Wed, 25 May 2016 20:44:21 +0000 (25 20:44 +0000)]
tree-ssa-phiopt.c (factor_out_conditional_conversion): Remove redundant test and bail out if the type of the new operand is not a...

* tree-ssa-phiopt.c (factor_out_conditional_conversion): Remove
redundant test and bail out if the type of the new operand is not
a GIMPLE register type after stripping a VIEW_CONVERT_EXPR.

From-SVN: r236751

6 years ago* ru.po: Update.
Joseph Myers [Wed, 25 May 2016 16:37:45 +0000 (25 17:37 +0100)]
* ru.po: Update.

From-SVN: r236733

6 years agolibstdc++/69703 ignore endianness in codecvt_utf8
Jonathan Wakely [Wed, 25 May 2016 16:33:03 +0000 (25 17:33 +0100)]
libstdc++/69703 ignore endianness in codecvt_utf8

Backport from mainline
2016-04-20  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/69703
* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
__codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.

Backport from mainline
2016-04-19  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/69703
* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in)):
Override endianness bit in mode.
* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
that little_endian mode is ignored.
* testsuite/experimental/filesystem/path/native/string.cc: New test.

From-SVN: r236731

6 years agoPR c++/71147 - [6 Regression] Flexible array member wrongly rejected in template
Martin Sebor [Wed, 25 May 2016 16:01:24 +0000 (25 16:01 +0000)]
PR c++/71147 - [6 Regression] Flexible array member wrongly rejected in template

gcc/ChangeLog:
2016-05-24  Martin Sebor  <msebor@redhat.com>

PR c++/71147
* gcc/tree.h (complete_or_array_type_p): New inline function.

gcc/testsuite/ChangeLog:
2016-05-24  Martin Sebor  <msebor@redhat.com>

PR c++/71147
* g++.dg/ext/flexary16.C: New test.

gcc/cp/ChangeLog:
2016-05-24  Martin Sebor  <msebor@redhat.com>

PR c++/71147
* decl.c (layout_var_decl, grokdeclarator): Use complete_or_array_type_p.
* pt.c (instantiate_class_template_1): Try to complete the element
type of a flexible array member.
(can_complete_type_without_circularity): Handle arrays of unknown bound.
* typeck.c (complete_type): Also complete the type of the elements of
arrays with an unspecified bound.

From-SVN: r236729

6 years agoTest begin and end functions for directory iterators
Jonathan Wakely [Wed, 25 May 2016 15:45:30 +0000 (25 16:45 +0100)]
Test begin and end functions for directory iterators

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

* include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
Test begin and end functions.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Likewise.

From-SVN: r236727

6 years agolibstdc++/71038 fix error checks in filesystem::copy_file
Jonathan Wakely [Wed, 25 May 2016 15:45:03 +0000 (25 16:45 +0100)]
libstdc++/71038 fix error checks in filesystem::copy_file

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/71038
* src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
* testsuite/experimental/filesystem/operations/copy_file.cc: New test.

From-SVN: r236726

6 years agoOptimize __directory_iterator_proxy for the common case
Jonathan Wakely [Wed, 25 May 2016 15:44:57 +0000 (25 16:44 +0100)]
Optimize __directory_iterator_proxy for the common case

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
Overload operator* to move from rvalues.

From-SVN: r236725

6 years agolibstdc++/71036 Handle EEXIST in filesystem::create_directory
Jonathan Wakely [Wed, 25 May 2016 15:44:44 +0000 (25 16:44 +0100)]
libstdc++/71036 Handle EEXIST in filesystem::create_directory

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/71036
* src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
* testsuite/experimental/filesystem/operations/create_directory.cc:
New test.

From-SVN: r236724

6 years agolibstdc++/71037 Add base path to filesystem::canonical exceptions
Jonathan Wakely [Wed, 25 May 2016 15:44:39 +0000 (25 16:44 +0100)]
libstdc++/71037 Add base path to filesystem::canonical exceptions

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/71037
* src/filesystem/ops.cc (canonical(const path&, const path&)): Add
base path to exception.
* testsuite/experimental/filesystem/operations/canonical.cc: Test
paths contained in exception.

From-SVN: r236723

6 years agolibstdc++/71005 fix post-increment for filesystem iterators
Jonathan Wakely [Wed, 25 May 2016 15:44:33 +0000 (25 16:44 +0100)]
libstdc++/71005 fix post-increment for filesystem iterators

Backport from mainline
2016-05-10  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/71005
* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
New type.
(directory_iterator::operator++(int)): Return proxy.
(recursive_directory_iterator::operator++(int)): Likewise.
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
Test post-increment.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Likewise.

From-SVN: r236722

6 years agolibstdc++/71004 fix recursive_directory_iterator default constructor
Jonathan Wakely [Wed, 25 May 2016 15:44:27 +0000 (25 16:44 +0100)]
libstdc++/71004 fix recursive_directory_iterator default constructor

Backport from mainline
2016-05-09  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/71004
* include/experimental/bits/fs_dir.h (recursive_directory_iterator):
Initialize scalar member variables in default constructor.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Test default construction.

From-SVN: r236721

6 years agolibstdc++/70609 fix filesystem::copy()
Jonathan Wakely [Wed, 25 May 2016 15:44:15 +0000 (25 16:44 +0100)]
libstdc++/70609 fix filesystem::copy()

Backport from mainline
2016-04-19  Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/70609
* src/filesystem/ops.cc (close_fd): New function.
(do_copy_file): Set permissions before copying file contents. Check
result of closing file descriptors. Don't copy streambuf when file
is empty.
(copy(const path&, const path&, copy_options, error_code&)): Use
lstat for source file when copy_symlinks is set.
* testsuite/experimental/filesystem/operations/copy.cc: Test copy().

From-SVN: r236720

6 years agoAdd noexcept to Filesystem TS operators
Jonathan Wakely [Wed, 25 May 2016 15:44:02 +0000 (25 16:44 +0100)]
Add noexcept to Filesystem TS operators

Backport from mainline
2016-04-19  Jonathan Wakely  <jwakely@redhat.com>

* include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
operator~ operator&=, operator|=, operator^=): Add noexcept to
overloaded operators for copy_options, perms and directory_options.
* src/filesystem/ops.cc (make_file_type, make_file_status,
is_not_found_errno, file_time): Add noexcept.

From-SVN: r236719

6 years ago* ru.po: Update.
Joseph Myers [Wed, 25 May 2016 14:49:00 +0000 (25 15:49 +0100)]
* ru.po: Update.

From-SVN: r236706

6 years agoi386.h (TARGET_AVOID_4BYTE_PREFIXES): Define.
Jakub Jelinek [Wed, 25 May 2016 08:04:09 +0000 (25 10:04 +0200)]
i386.h (TARGET_AVOID_4BYTE_PREFIXES): Define.

* config/i386/i386.h (TARGET_AVOID_4BYTE_PREFIXES): Define.
* config/i386/constraints.md (Yr): Test TARGET_AVOID_4BYTE_PREFIXES
rather than X86_TUNE_AVOID_4BYTE_PREFIXES.  Use SSE_REGS instead
of ALL_SSE_REGS.  Return SSE_REGS also when TARGET_AVX.

From-SVN: r236691

6 years agoDaily bump.
GCC Administrator [Wed, 25 May 2016 00:16:15 +0000 (25 00:16 +0000)]
Daily bump.

From-SVN: r236688

6 years agore PR c++/69872 (-Wnarrowing note without warning/errror)
Paolo Carlini [Tue, 24 May 2016 16:44:09 +0000 (24 16:44 +0000)]
re PR c++/69872 (-Wnarrowing note without warning/errror)

/cp
2016-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/69872
* typeck2.c (check_narrowing): Check pedwarn return value.

/testsuite
2016-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/69872
* g++.dg/warn/Wno-narrowing1.C: New.

From-SVN: r236652

6 years agore PR c++/71257 (OpenMP declare simd linear with ref modifier doesn't accept referenc...
Jakub Jelinek [Tue, 24 May 2016 16:27:12 +0000 (24 18:27 +0200)]
re PR c++/71257 (OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer)

PR c++/71257
* tree-vect-stmts.c (vectorizable_simd_clone_call): Handle
SIMD_CLONE_ARG_TYPE_LINEAR_REF_CONSTANT_STEP like
SIMD_CLONE_ARG_TYPE_LINEAR_CONSTANT_STEP.  Add
SIMD_CLONE_ARG_TYPE_LINEAR_VAL_CONSTANT_STEP and
SIMD_CLONE_ARG_TYPE_LINEAR_UVAL_CONSTANT_STEP cases explicitly.

* semantics.c (finish_omp_clauses) <case OMP_CLAUSE_LINEAR>:
For OMP_CLAUSE_LINEAR_REF don't require type to be
integral or pointer.

* g++.dg/vect/simd-clone-6.cc: New test.
* g++.dg/gomp/declare-simd-6.C: New test.

From-SVN: r236650

6 years agoPR c++/70344 - ICE with recursive constexpr
Jason Merrill [Tue, 24 May 2016 03:37:10 +0000 (23 23:37 -0400)]
PR c++/70344 - ICE with recursive constexpr

* constexpr.c (cxx_eval_call_expression): Check for
fun == current_function_decl again.

From-SVN: r236626

6 years agoDaily bump.
GCC Administrator [Tue, 24 May 2016 00:16:13 +0000 (24 00:16 +0000)]
Daily bump.

From-SVN: r236622

6 years ago[PR libffi/65567] libffi: Fix, and simply libffi_feature_test
Thomas Schwinge [Mon, 23 May 2016 15:00:41 +0000 (23 17:00 +0200)]
[PR libffi/65567] libffi: Fix, and simply libffi_feature_test

Backport trunk r236594:

libffi/
PR libffi/65567
* testsuite/lib/libffi.exp (libffi_feature_test): Fix, and simply.

From-SVN: r236595

6 years ago[hsa] Avoid segfault in hsa switch expansion
Martin Jambor [Mon, 23 May 2016 11:54:52 +0000 (23 13:54 +0200)]
[hsa] Avoid segfault in hsa switch expansion

2016-05-23  Martin Jambor  <mjambor@suse.cz>

* hsa-gen.c (gen_hsa_insns_for_switch_stmt): Create an empty
default block if a PHI node in the original one would be resized.

libgomp/
* testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.

From-SVN: r236587

6 years ago[PR 70884] Constant pool SRA fix
Martin Jambor [Mon, 23 May 2016 11:27:14 +0000 (23 13:27 +0200)]
[PR 70884] Constant pool SRA fix

2016-05-23  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/70884
* tree-sra.c (initialize_constant_pool_replacements): Do not check
should_scalarize_away_bitmap and cannot_scalarize_away_bitmap bits.
(sort_and_splice_var_accesses): Do not consider multiple scalar reads
of constant pool data as a reason for scalarization.

testsuite/
* gcc.dg/tree-ssa/pr70919.c: New test.

From-SVN: r236584

6 years agoDaily bump.
GCC Administrator [Mon, 23 May 2016 00:16:21 +0000 (23 00:16 +0000)]
Daily bump.

From-SVN: r236574

6 years agoDaily bump.
GCC Administrator [Sun, 22 May 2016 00:16:13 +0000 (22 00:16 +0000)]
Daily bump.

From-SVN: r236562

6 years agoDaily bump.
GCC Administrator [Sat, 21 May 2016 00:16:17 +0000 (21 00:16 +0000)]
Daily bump.

From-SVN: r236552

6 years agoarm.c (arm_expand_prologue): Set the stack usage to 0 for naked functions.
Eric Botcazou [Fri, 20 May 2016 20:50:05 +0000 (20 20:50 +0000)]
arm.c (arm_expand_prologue): Set the stack usage to 0 for naked functions.

* config/arm/arm.c (arm_expand_prologue): Set the stack usage to 0
for naked functions.
(thumb1_expand_prologue): Likewise.

From-SVN: r236540

6 years agore PR c++/71210 (internal compiler error: in assign_temp, at function.c:961)
Jakub Jelinek [Fri, 20 May 2016 19:06:09 +0000 (20 21:06 +0200)]
re PR c++/71210 (internal compiler error: in assign_temp, at function.c:961)

PR c++/71210
* gimple-fold.c (gimple_fold_call): Do not remove lhs of noreturn
calls if the LHS is variable length or has addressable type.
If targets[0]->decl is a noreturn call with void return type and
zero arguments, adjust fntype and remove lhs in that case.

* g++.dg/opt/pr71210-1.C: New test.
* g++.dg/opt/pr71210-2.C: New test.

From-SVN: r236529

6 years agore PR fortran/71204 (ICE with -O0 in expand_expr_real_1, at expr.c:9651)
Jakub Jelinek [Fri, 20 May 2016 18:52:38 +0000 (20 20:52 +0200)]
re PR fortran/71204 (ICE with -O0 in expand_expr_real_1, at expr.c:9651)

PR fortran/71204
* frontend-passes.c (realloc_string_callback): Clear inserted_block
and changed_statement before calling create_var.

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

From-SVN: r236526

6 years agosched-deps.c (sched_analyze_2): Also force pending loads from memory.
Uros Bizjak [Fri, 20 May 2016 15:38:24 +0000 (20 17:38 +0200)]
sched-deps.c (sched_analyze_2): Also force pending loads from memory.

* sched-deps.c (sched_analyze_2) <case TRAP_IF>: Also
force pending loads from memory.

From-SVN: r236516

6 years agoDaily bump.
GCC Administrator [Fri, 20 May 2016 00:16:19 +0000 (20 00:16 +0000)]
Daily bump.

From-SVN: r236494

6 years agoPR c/71171: Fix uninitialized source_range in c_parser_postfix_expression
David Malcolm [Thu, 19 May 2016 20:33:51 +0000 (19 20:33 +0000)]
PR c/71171: Fix uninitialized source_range in c_parser_postfix_expression

A common way for a c_expr to have an uninitialized src_range is in
error-handling, where the "value" field is set to error_mark_node
without touching the src_range, leading to complaints from valgrind.

This patch introduces a new method c_expr::set_error which sets
the value to error_mark_node whilst initializing the src_range to
UNKNOWN_LOCATION.

This fixes the valgrind issue seen in PR c/71171, along with various
other related issues seen when running the testsuite using the
checker patch I posted here:
  https://gcc.gnu.org/ml/gcc-patches/2015-12/msg00887.html
(this checker still doesn't fully work yet, but it seems to be good
for easily detecting these issues without needing Valgrind).

gcc/c/ChangeLog:
Backport from trunk r236488.
PR c/71171
* c-parser.c (c_parser_generic_selection): Use c_expr::set_error
in error-handling.
(c_parser_postfix_expression): Likewise.
* c-tree.h (c_expr::set_error): New method.
* c-typeck.c (parser_build_binary_op): In error-handling, ensure
that result's range is initialized.

From-SVN: r236489

6 years agoPR c++/71184: Fix NULL dereference in cp_parser_operator
David Malcolm [Thu, 19 May 2016 18:56:47 +0000 (19 18:56 +0000)]
PR c++/71184: Fix NULL dereference in cp_parser_operator

The source-range handling for the array form of operator
new/delete erroneously assumed that the "]" was present,
leading to a dereference of NULL when it's absent.

Fix it thusly.

gcc/cp/ChangeLog:
Backport from trunk r236483.
PR c++/71184
* parser.c (cp_parser_operator): For array new/delete, check that
cp_parser_require returned a non-NULL token before dereferencing
it.

gcc/testsuite/ChangeLog:
Backport from trunk r236483.
PR c++/71184
* g++.dg/pr71184.C: New test case.

From-SVN: r236485

6 years agore PR tree-optimization/71031 (ICE in extract_range_from_binary_expr_1, at tree-vrp...
Marek Polacek [Thu, 19 May 2016 18:42:31 +0000 (19 18:42 +0000)]
re PR tree-optimization/71031 (ICE in extract_range_from_binary_expr_1, at tree-vrp.c:2535 w/ -Os)

PR tree-optimization/71031
* tree-vrp.c (extract_range_from_binary_expr_1): Turn assert into a
condition and adjust the code a bit.

* gcc.dg/tree-ssa/vrp100.c: New test.

From-SVN: r236484

6 years agobackport: decl.c (finish_enum_value_list): Use the specified mode.
Bernd Edlinger [Thu, 19 May 2016 17:38:51 +0000 (19 17:38 +0000)]
backport: decl.c (finish_enum_value_list): Use the specified mode.

2016-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Backport from mainline
        2016-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * decl.c (finish_enum_value_list): Use the specified mode.

testsuite:
2016-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Backport from mainline
        2016-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * c-c++-common/pr69669.c: Check the used mode.

From-SVN: r236479

6 years agoRespect --param ipa-max-agg-items=0
Martin Jambor [Thu, 19 May 2016 15:00:12 +0000 (19 17:00 +0200)]
Respect --param ipa-max-agg-items=0

2016-05-19  Martin Jambor  <mjambor@suse.cz>

PR ipa/70646
* ipa-prop.c (determine_locally_known_aggregate_parts): Bail out early
if parameter PARAM_IPA_MAX_AGG_ITEMS is zero.

From-SVN: r236463

6 years ago[PR 70646] Store size to inlining predicate conditions
Martin Jambor [Thu, 19 May 2016 14:56:35 +0000 (19 16:56 +0200)]
[PR 70646] Store size to inlining predicate conditions

2016-05-19  Martin Jambor  <mjambor@suse.cz>

PR ipa/70646
* ipa-inline.h (condition): New field size.
* ipa-inline-analysis.c (add_condition): New parameter SIZE, use it
for comaprison and store it into the new condition.
(evaluate_conditions_for_known_args): Use condition size to check
access sizes for all but CHANGED conditions.
(unmodified_parm_1): New parameter size_p, store access size into it.
(unmodified_parm): Likewise.
(unmodified_parm_or_parm_agg_item): Likewise.
(eliminated_by_inlining_prob): Pass NULL to unmodified_parm as size_p.
(set_cond_stmt_execution_predicate): Extract access sizes and store
them to conditions.
(set_switch_stmt_execution_predicate): Likewise.
(will_be_nonconstant_expr_predicate): Likewise.
(will_be_nonconstant_predicate): Likewise.
(inline_read_section): Stream condition size.
(inline_write_summary): Likewise.
* lto-streamer.h (LTO_minor_version): Bump.

testsuite/
* gcc.dg/ipa/pr70646.c: New test.

From-SVN: r236462

6 years agobackport: re PR c++/70498 (Libiberty Demangler segfaults (3))
Jakub Jelinek [Thu, 19 May 2016 08:53:19 +0000 (19 10:53 +0200)]
backport: re PR c++/70498 (Libiberty Demangler segfaults (3))

Backported from mainline
2016-05-19  Jakub Jelinek  <jakub@redhat.com>

PR c++/70498
* cp-demangle.c (d_expression_1): Formatting fix.

2016-05-02  Marcel Böhme  <boehme.marcel@gmail.com>

PR c++/70498
* cp-demangle.c: Parse numbers as integer instead of long to avoid
overflow after sanity checks. Include <limits.h> if available.
(INT_MAX): Define if necessary.
(d_make_template_param): Takes integer argument instead of long.
(d_make_function_param): Likewise.
(d_append_num): Likewise.
(d_identifier): Likewise.
(d_number): Parse as and return integer.
(d_compact_number): Handle overflow.
(d_source_name): Change variable type to integer for parsed number.
(d_java_resource): Likewise.
(d_special_name): Likewise.
(d_discriminator): Likewise.
(d_unnamed_type): Likewise.
* testsuite/demangle-expected: Add regression test cases.

From-SVN: r236446

6 years agoBackport PR fortran/70856 from mainline
Martin Liska [Thu, 19 May 2016 08:09:11 +0000 (19 10:09 +0200)]
Backport PR fortran/70856 from mainline

From-SVN: r236442

6 years agoDaily bump.
GCC Administrator [Thu, 19 May 2016 00:16:18 +0000 (19 00:16 +0000)]
Daily bump.

From-SVN: r236437

6 years agobackport: re PR sanitizer/71160 (libasan: Backport support for malloc within dlsym)
Jakub Jelinek [Wed, 18 May 2016 21:26:54 +0000 (18 23:26 +0200)]
backport: re PR sanitizer/71160 (libasan: Backport support for malloc within dlsym)

Backported from mainline
2016-05-17  Jakub Jelinek  <jakub@redhat.com>

PR sanitizer/71160
* asan/asan_malloc_linux.cc: Cherry pick upstream r254395
and r269633.

From-SVN: r236432

6 years agore PR c++/71100 (Internal compiler error while calling a pointer to member function...
Jakub Jelinek [Wed, 18 May 2016 21:24:16 +0000 (18 23:24 +0200)]
re PR c++/71100 (Internal compiler error while calling a pointer to member function that throws)

PR c++/71100
* cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Don't drop
lhs if it has TREE_ADDRESSABLE type.

* g++.dg/opt/pr71100.C: New test.

From-SVN: r236431

6 years agore PR target/71145 (Alpha: Error: No lda !gpdisp!278 was found)
Uros Bizjak [Wed, 18 May 2016 19:39:49 +0000 (18 21:39 +0200)]
re PR target/71145 (Alpha: Error: No lda !gpdisp!278 was found)

PR target/71145
* config/alpha/alpha.md (trap): Add (use (reg:DI 29)).
(*exception_receiver_1): Return "#" for TARGET_EXPLICIT_RELOCS.

From-SVN: r236425

6 years agore PR c++/70466 ([ICE on invalid code in tree check: expected constructor, have parm_...
Paolo Carlini [Wed, 18 May 2016 17:17:03 +0000 (18 17:17 +0000)]
re PR c++/70466 ([ICE on invalid code in tree check: expected constructor, have parm_decl in convert_like_real, at cp/call.c:6371 with -std=c++11)

/cp
2016-05-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/70466
* call.c (convert_like_real): Check that we are actually converting
from an init list.

/testsuite
2016-05-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/70466
* g++.dg/template/pr70466-1.C: New.
* g++.dg/template/pr70466-2.C: Likewise.

From-SVN: r236419

6 years agore PR target/71161 (Lots of ASAN and libgo runtime FAILs after r236090)
Uros Bizjak [Wed, 18 May 2016 14:48:40 +0000 (18 16:48 +0200)]
re PR target/71161 (Lots of ASAN and libgo runtime FAILs after r236090)

PR target/71161
* elf.c (phdr_callback) [__i386__]: Add
__attribute__((__force_align_arg_pointer__)).

From-SVN: r236398

6 years agoFix ChangeLog date.
Christophe Lyon [Wed, 18 May 2016 12:41:30 +0000 (18 14:41 +0200)]
Fix ChangeLog date.

From-SVN: r236380

6 years agobackport: noplt_3.c: Scan for "br\t".
Christophe Lyon [Wed, 18 May 2016 12:38:15 +0000 (18 12:38 +0000)]
backport: noplt_3.c: Scan for "br\t".

Backport from mainline r236377.
2016-05-19  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/noplt_3.c: Scan for "br\t".
* gcc.target/aarch64/tail_indirect_call_1.c: Scan for "br\t",
"blr\t" and switch to scan-assembler-times.

From-SVN: r236378

6 years agoDaily bump.
GCC Administrator [Wed, 18 May 2016 00:16:14 +0000 (18 00:16 +0000)]
Daily bump.

From-SVN: r236353

6 years ago* da.po: Update.
Joseph Myers [Wed, 18 May 2016 00:13:49 +0000 (18 01:13 +0100)]
* da.po: Update.

From-SVN: r236350

6 years ago* da.po, sv.po: Update.
Joseph Myers [Wed, 18 May 2016 00:10:34 +0000 (18 01:10 +0100)]
* da.po, sv.po: Update.

From-SVN: r236348

6 years ago[PR target/70860] [nvptx] Handle NULL cfun in nvptx_libcall_value
Thomas Schwinge [Tue, 17 May 2016 16:08:37 +0000 (17 18:08 +0200)]
[PR target/70860] [nvptx] Handle NULL cfun in nvptx_libcall_value

Backport GCC trunk r235748:

gcc/
PR target/70860
* config/nvptx/nvptx.c (nvptx_libcall_value): Handle NULL cfun.
(nvptx_function_value): Assert non-NULL cfun.

From-SVN: r236326

6 years ago[AArch64] PR target/70809: Delete aarch64_vmls<mode> pattern
Kyrylo Tkachov [Tue, 17 May 2016 13:08:01 +0000 (17 13:08 +0000)]
[AArch64] PR target/70809: Delete aarch64_vmls<mode> pattern

Backport from mainline
2016-05-17  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/70809
* config/aarch64/aarch64-simd.md (aarch64_vmls<mode>): Delete.

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

From-SVN: r236321

6 years ago[RTEMS] Fix moxie libgcc support
Sebastian Huber [Tue, 17 May 2016 06:15:52 +0000 (17 06:15 +0000)]
[RTEMS] Fix moxie libgcc support

libgcc/

PR libgcc/70720
* config.host (moxie-*-rtems*): Merge this stanza with other moxie
targets so the same extra_parts are built.  Also have tmake_file add
on to its value rather than override.

From-SVN: r236307

6 years agoDaily bump.
GCC Administrator [Tue, 17 May 2016 00:16:19 +0000 (17 00:16 +0000)]
Daily bump.

From-SVN: r236304

6 years ago[hsa] Increase hsa symbol alignment to natural one
Martin Jambor [Mon, 16 May 2016 17:52:28 +0000 (16 19:52 +0200)]
[hsa] Increase hsa symbol alignment to natural one

2016-05-16  Martin Jambor  <mjambor@suse.cz>

* hsa-gen.c (fillup_for_decl): Increase alignment to natural one.
(get_symbol_for_decl): Sorry if a global symbol in under-aligned.

libgomp/
        * testsuite/libgomp.hsa.c/complex-align-2.c: New test.

From-SVN: r236296

6 years ago[PR 70857] Copy RESULT_DECL of HSA outlined kernel function
Martin Jambor [Mon, 16 May 2016 15:57:06 +0000 (16 17:57 +0200)]
[PR 70857] Copy RESULT_DECL of HSA outlined kernel function

2016-05-16  Martin Jambor  <mjambor@suse.cz>

PR hsa/70857
* omp-low.c (grid_expand_target_grid_body): Copy RESULT_DECL of
the outlined kernel function.

From-SVN: r236292

6 years agobackport: re PR driver/68463 (Offloading fails when some objects are compiled with...
James Norris [Mon, 16 May 2016 13:47:47 +0000 (16 13:47 +0000)]
backport: re PR driver/68463 (Offloading fails when some objects are compiled with LTO and some without)

Backport from mainline r236098.
2016-05-10  James Norris  <jnorris@codesourcery.com>

PR driver/68463
* config/rs6000/sysv4.h (CRTOFFLOADBEGIN): Define. Add crtoffloadbegin.o
if offloading is enabled and -fopenacc or -fopenmp is specified.
(CRTOFFLOADEND): Likewise.
(STARTFILE_LINUX_SPEC): Add CRTOFFLOADBEGIN.
(ENDFILE_LINUX_SPEC): Add CRTOFFLOADEND.

From-SVN: r236287

6 years ago[RS6000] Stop regrename twiddling with split-stack prologue
Alan Modra [Mon, 16 May 2016 04:51:21 +0000 (16 14:21 +0930)]
[RS6000] Stop regrename twiddling with split-stack prologue

PR target/70947
* config/rs6000/rs6000.c (rs6000_expand_split_stack_prologue): Stop
regrename modifying insns saving lr before __morestack call.
* config/rs6000/rs6000.md (split_stack_return): Similarly for
insns restoring lr after __morestack call.

From-SVN: r236264

6 years agoDaily bump.
GCC Administrator [Mon, 16 May 2016 00:16:15 +0000 (16 00:16 +0000)]
Daily bump.

From-SVN: r236262

6 years agobackport: pr70963.c: Require at least power8 at both compile and run time.
Bill Schmidt [Sun, 15 May 2016 21:48:43 +0000 (15 21:48 +0000)]
backport: pr70963.c: Require at least power8 at both compile and run time.

2016-05-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

Backport from mainline
2016-05-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/pr70963.c: Require at least power8 at both
compile and run time.

From-SVN: r236257

6 years agore PR fortran/69603 (ICE: segfault with -fimplicit-none and proc_ptr_comp_24.f90)
Harald Anlauf [Sun, 15 May 2016 18:48:40 +0000 (15 18:48 +0000)]
re PR fortran/69603 (ICE: segfault with -fimplicit-none and proc_ptr_comp_24.f90)

2016-05-15  Harald Anlauf  <anlauf@gmx.de>

PR fortran/69603
* interface.c (compare_parameter): Check for non-NULL pointer.

2016-05-15  Harald Anlauf  <anlauf@gmx.de>

PR fortran/69603
* gfortran.dg/pr69603.f90: New testcase.

From-SVN: r236254

6 years agoDaily bump.
GCC Administrator [Sun, 15 May 2016 00:16:13 +0000 (15 00:16 +0000)]
Daily bump.

From-SVN: r236247

6 years agobackport: re PR fortran/71047 (Allocatable component of INTENT(OUT) dummy not set...
Fritz Reese [Sat, 14 May 2016 19:52:46 +0000 (14 19:52 +0000)]
backport: re PR fortran/71047 (Allocatable component of INTENT(OUT) dummy not set correctly)

2016-05-14  Fritz Reese  <fritzoreese@gmail.com>

Backport from trunk: r236242
* gfortran.texi: Update example of DEC UNION extension.

Backport from trunk: r236241
PR fortran/71047
* expr.c (gfc_default_initializer): Avoid extra component refs in
constructors for derived types and classes.

Backport from trunk: r235999
PR fortran/56226
* module.c (dt_upper_string): Rename to gfc_dt_upper_string
(dt_lower_string): Likewise.
* gfortran.h: Make new gfc_dt_upper/lower_string global.
* class.c: Use gfc_dt_upper_string.
* decl.c: Likewise.
* symbol.c: Likewise.
* resolve.c (resolve_component): New function.
(resolve_fl_derived0): Move component loop code to resolve_component.
* parse.c (check_component): New function.
(parse_derived): Move loop code to check_component.
* lang.opt, invoke.texi, options.c : New option -fdec-structure.
* libgfortran.h (bt): New basic type BT_UNION.
* gfortran.h (gfc_option): New option -fdec-structure.
(gfc_get_union_type, gfc_compare_union_types): New prototypes.
(gfc_bt_struct, gfc_fl_struct, case_bt_struct, case_fl_struct): New
macros.
(gfc_find_component): Change prototype.
* match.h (gfc_match_member_sep, gfc_match_map, gfc_match_union,
gfc_match_structure_decl): New prototypes.
* parse.h (gfc_comp_struct): New macro.
* symbol.c (gfc_find_component): Search for components in nested unions
* class.c (insert_component_ref, gfc_add_component_ref, add_proc_comp,
copy_vtab_proc_comps): Update calls to gfc_find_component.
* primary.c (gfc_convert_to_structure_constructor): Likewise.
* symbol.c (gfc_add_component): Likewise.
* resolve.c (resolve_typebound_function, resolve_typebound_subroutine,
resolve_typebound_procedure, resolve_component, resolve_fl_derived):
Likewise.
* expr.c (get_union_init, component_init): New functions.
* decl.c (match_clist_expr, match_record_decl, get_struct_decl,
gfc_match_map, gfc_match_union, gfc_match_structure_decl): Likewise.
* interface.c (compare_components, gfc_compare_union_types): Likewise.
* match.c (gfc_match_member_sep): Likewise.
* parse.c (check_component, parse_union, parse_struct_map): Likewise.
* resolve.c (resolve_fl_struct): Likewise.
* symbol.c (find_union_component): Likewise.
* trans-types.c (gfc_get_union_type): Likewise.
* parse.c (parse_derived): Use new functions.
* interface.c (gfc_compare_derived_types, gfc_compare_types): Likewise.
* expr.c (gfc_default_initializer): Likewise.
* gfortran.texi: Support for DEC structures, unions, and maps.
* gfortran.h (gfc_statement, sym_flavor): Likewise.
* check.c (gfc_check_kill_sub): Likewise.
* expr.c (gfc_copy_expr, simplify_const_ref,
gfc_has_default_initializer): Likewise.
* decl.c (build_sym, match_data_constant, add_init_expr_to_sym,
match_pointer_init, build_struct, variable_decl,
gfc_match_decl_type_spec, gfc_mach_data-decl, gfc_match_entry,
gfc_match_end, gfc_match_derived_decl): Likewise.
* interface.c (check_interface0, check_interface1,
gfc_search_interface): Likewise.
* misc.c (gfc_basic_typename, gfc_typename): Likewise.
* module.c (add_true_name, build_tnt, bt_types, mio_typespec,
fix_mio_expr, load_needed, mio_symbol, read_module, write_symbol,
gfc_get_module_backend_decl): Likewise.
* parse.h (gfc_compile_state): Likewise.
* parse.c (decode_specification_statement, decode_statement,
gfc_ascii_statement, verify_st_order, parse_spec): Likewise.
* primary.c (gfc_match_varspec, gfc_match_structure_constructor,
gfc_match_rvalue, match_variable): Likewise.
* resolve.c (find_arglists, resolve_structure_cons,
is_illegal_recursion, resolve_generic_f, get_declared_from_expr,
resolve_typebound_subroutine, resolve_allocate_expr,
nonscalar_typebound_assign, generate_component_assignments,
resolve_fl_variable_derived, check_defined_assignments,
resolve_component, resolve_symbol, resolve_equivalence_derived):
Likewise.
* symbol.c (flavors, check_conflict, gfc_add_flavor, gfc_use_derived,
gfc_restore_last_undo_checkpoint, gfc_type_compatible,
gfc_find_dt_in_generic): Likewise.
* trans-decl.c (gfc_get_module_backend_decl, create_function_arglist,
gfc_create_module_variable, check_constant_initializer): Likewise.
* trans-expr.c (gfc_conv_component_ref, gfc_conv_initializer,
gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign,
gfc_conv_structure, gfc_trans_scalar_assign, copyable_array_p):
Likewise.
* trans-io.c (transfer_namelist_element, transfer_expr,
gfc_trans_transfer): Likewise.
* trans-stmt.c (gfc_trans_deallocate): Likewise.
* trans-types.c (gfc_typenode_for_spec, gfc_copy_dt_decls_ifequal,
gfc_get_derived_type): Likewise.

2016-05-14  Fritz Reese  <fritzoreese@gmail.com>

Backport from trunk: r235999, r236241, r236242
* gfortran.dg/dec_union_4.f90: Fix endian issue.

PR fortran/71047
* gfortran.dg/pr71047.f08: New test.

PR fortran/56226
* gfortran.dg/dec_structure_1.f90: New testcase.
* gfortran.dg/dec_structure_2.f90: Ditto.
* gfortran.dg/dec_structure_3.f90: Ditto.
* gfortran.dg/dec_structure_4.f90: Ditto.
* gfortran.dg/dec_structure_5.f90: Ditto.
* gfortran.dg/dec_structure_6.f90: Ditto.
* gfortran.dg/dec_structure_7.f90: Ditto.
* gfortran.dg/dec_structure_8.f90: Ditto.
* gfortran.dg/dec_structure_9.f90: Ditto.
* gfortran.dg/dec_structure_10.f90: Ditto.
* gfortran.dg/dec_structure_11.f90: Ditto.
* gfortran.dg/dec_union_1.f90: Ditto.
* gfortran.dg/dec_union_2.f90: Ditto.
* gfortran.dg/dec_union_3.f90: Ditto.
* gfortran.dg/dec_union_4.f90: Ditto.
* gfortran.dg/dec_union_5.f90: Ditto.
* gfortran.dg/dec_union_6.f90: Ditto.
* gfortran.dg/dec_union_7.f90: Ditto.

From-SVN: r236244