platform/upstream/gcc.git
8 years agore PR c++/69850 (unnecessary -Wnonnull-compare warning)
Jakub Jelinek [Fri, 19 Feb 2016 16:02:51 +0000 (17:02 +0100)]
re PR c++/69850 (unnecessary -Wnonnull-compare warning)

PR c++/69850
* init.c (build_vec_delete_1): Set TREE_NO_WARNING on the NE_EXPR
condition.
* cp-gimplify.c (cp_fold): Propagate TREE_NO_WARNING from binary
operators if folding preserved the binop, just with different
arguments.

* g++.dg/warn/Wnonnull-compare-2.C: New test.
* g++.dg/warn/Wnonnull-compare-3.C: New test.

From-SVN: r233561

8 years agore PR c++/67767 (-Wsuggest-attribute=noreturn suggests noreturn for function which...
Jakub Jelinek [Fri, 19 Feb 2016 16:01:50 +0000 (17:01 +0100)]
re PR c++/67767 (-Wsuggest-attribute=noreturn suggests noreturn for function which already has noreturn and cold.)

PR c++/67767
* parser.c (cp_parser_std_attribute_spec_seq): Don't assume
attr_spec is always single element chain, chain all the attributes
properly together in the right order.

* g++.dg/cpp0x/pr67767.C: New test.

From-SVN: r233560

8 years ago[AArch64] Skip gcc.target/aarch64/assembler_arch_1.c if assembler does not support it
Kyrylo Tkachov [Fri, 19 Feb 2016 14:20:27 +0000 (14:20 +0000)]
[AArch64] Skip gcc.target/aarch64/assembler_arch_1.c if assembler does not support it

* lib/target-supports.exp: Define aarch64_asm_FUNC_ok checks
for fp, simd, crypto, crc, lse.
* doc/sourcebuild.texi (AArch64-specific attributes): Document the
above.
* gcc.target/aarch64/assembler_arch_1.c: Add aarch64_asm_lse_ok
effective target check.

From-SVN: r233559

8 years agore PR tree-optimization/69820 (Test miscompiled with -O3 option)
Jakub Jelinek [Fri, 19 Feb 2016 13:42:38 +0000 (14:42 +0100)]
re PR tree-optimization/69820 (Test miscompiled with -O3 option)

PR target/69820
* config/i386/sse.md (VI_512): Only include V64QImode and V32HImode
if TARGET_AVX512BW.

* gcc.target/i386/pr69820.c: New test.

From-SVN: r233558

8 years agoS/390: z13 Add missing commutative operand markers.
Andreas Krebbel [Fri, 19 Feb 2016 10:39:15 +0000 (10:39 +0000)]
S/390: z13 Add missing commutative operand markers.

gcc/ChangeLog:

* config/s390/vector.md: Add missing commutative operand markers
to the patterns which qualify for one.
* config/s390/vx-builtins.md: Likewise.

From-SVN: r233556

8 years agoS/390: Add single element vector types to iterators.
Andreas Krebbel [Fri, 19 Feb 2016 10:38:22 +0000 (10:38 +0000)]
S/390: Add single element vector types to iterators.

gcc/ChangeLog:

* config/s390/vector.md (VI, VI_QHS): Add single element vector
types to mode iterators.
(vec_double): ... and mode attribute.
* config/s390/vx-builtins.md (non_vec_int): Likewise.

From-SVN: r233555

8 years agoS/390: z13 Change predicates of 128 bit add sub.
Andreas Krebbel [Fri, 19 Feb 2016 10:37:19 +0000 (10:37 +0000)]
S/390: z13 Change predicates of 128 bit add sub.

So far usage of 128 bit add/sub instruction was rejected if the second
operand was a constant because the predicate rejected this.

gcc/testsuite/ChangeLog:

* gcc.target/s390/vector/int128-1.c: New test.

gcc/ChangeLog:

* config/s390/vector.md ("<ti*>add<mode>3", "<ti*>sub<mode>3"):
Change the predicate of op2 from nonimmediate to general and let
reload fix it if necessary.

From-SVN: r233554

8 years agoS/390: Add vec_sub_u128 to vecintrin.h
Andreas Krebbel [Fri, 19 Feb 2016 10:35:48 +0000 (10:35 +0000)]
S/390: Add vec_sub_u128 to vecintrin.h

This adds a missing macro to the vecintrin.h header file.

gcc/ChangeLog:

* config/s390/vecintrin.h (vec_sub_u128): Define missing macro.

From-SVN: r233553

8 years agoS/390: z13 fix mode in vcond expansion
Andreas Krebbel [Fri, 19 Feb 2016 10:34:12 +0000 (10:34 +0000)]
S/390: z13 fix mode in vcond expansion

For floating point vector compares the target mode is an integer mode
which accidently was used as register mode when forcing the compare
operands into regs.

gcc/ChangeLog:

* config/s390/s390.c (s390_expand_vcond): Use the compare operand
mode.

gcc/testsuite/ChangeLog:

* gcc.target/s390/vector/vec-vcond-1.c: New test.

From-SVN: r233552

8 years agoS/390: Adjust movstr-1.c testcase to work with the z13 stpcpy implementation.
Andreas Krebbel [Fri, 19 Feb 2016 10:32:38 +0000 (10:32 +0000)]
S/390: Adjust movstr-1.c testcase to work with the z13 stpcpy implementation.

2016-02-19  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* gcc.target/s390/md/movstr-1.c: Allow also the z13 strings
instruction pattern name to prevent the testcase from failing with
-march=z13.

From-SVN: r233551

8 years agoS/390: z13 inline stpcpy implementation.
Andreas Krebbel [Fri, 19 Feb 2016 10:31:05 +0000 (10:31 +0000)]
S/390: z13 inline stpcpy implementation.

A handwritten loop for stpcpy using the new z13 vector instructions
appears to be much faster than the millicoded instruction.  However,
the implementation is much longer and therefore will only be enabled
when optimization for speed.

gcc/testsuite/ChangeLog:

* gcc.target/s390/md/movstr-2.c: New test.

gcc/ChangeLog:

* config/s390/s390-protos.h: Add s390_expand_vec_movstr prototype.
* config/s390/s390.c (s390_expand_vec_movstr): New function.
* config/s390/s390.md ("movstr<P:mode>"): Call
s390_expand_vec_movstr.

From-SVN: r233550

8 years agoS/390: z13 lcbb fix address operand.
Andreas Krebbel [Fri, 19 Feb 2016 10:28:45 +0000 (10:28 +0000)]
S/390: z13 lcbb fix address operand.

gcc/ChangeLog:

2016-02-19  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.md: Add missing output modifier for operand 1
to print it as address properly.

From-SVN: r233549

8 years agoS/390: Add IBM z13 pipeline description
Andreas Krebbel [Fri, 19 Feb 2016 10:27:12 +0000 (10:27 +0000)]
S/390: Add IBM z13 pipeline description

This patch adds proper support for the -mtune=z13 option by adding a
z13 pipeline description.  As started with zEC12 we mostly make use of
the sched reorder hooks to implement a grouping strategy.  However,
this time we also keep an eye at the instruction mix provided in the
out of order window to allow the hardware to exploit the different
units.

gcc/ChangeLog:

* config/s390/2827.md: Rename ooo_* insn attributes to zEC12_*.
* config/s390/2964.md: New file.
* config/s390/s390.c (s390_get_sched_attrmask): Use the right set
of insn grouping attributes depending on the CPU level.
(s390_get_unit_mask): New function.
(s390_sched_score): Remove the OOO from the scheduling macros.
Add loop to calculate a score for the instruction mix.
(s390_sched_reorder): Likewise plus improve debug output.
(s390_sched_variable_issue): Rename macros as above.  Calculate
the unit distances after actually scheduling an insn.  Improve
debug output.
(s390_sched_init): Clear last_scheduled_unit_distance array.
* config/s390/s390.md: Include 2964.md.

From-SVN: r233548

8 years agoS/390: Add __morestack test.
Marcin Kościelnicki [Fri, 19 Feb 2016 10:20:23 +0000 (10:20 +0000)]
S/390: Add __morestack test.

gcc/testsuite/ChangeLog:

* gcc.target/s390/morestack.c: New test.

From-SVN: r233547

8 years agoS/390: PR 69625: Add test case
Dominik Vogt [Fri, 19 Feb 2016 10:15:43 +0000 (10:15 +0000)]
S/390: PR 69625: Add test case

gcc/testsuite/ChangeLog

PR target/69625
* gcc.target/s390/pr69625.c: Add test case.

From-SVN: r233546

8 years agore PR target/69671 (FAIL: gcc.target/i386/avx512vl-vpmovqb-1.c scan-assembler-times...
Jakub Jelinek [Fri, 19 Feb 2016 07:56:36 +0000 (08:56 +0100)]
re PR target/69671 (FAIL: gcc.target/i386/avx512vl-vpmovqb-1.c scan-assembler-times vpmovqb[ \\t]+[^{\n]*%ymm[0-9]+[^\n]*%xmm[0-9]+{%k[1-7]}{z}(?)

PR target/69671
* config/i386/sse.md (*<floatsuffix>floatv2div2sf2_mask_1,
*avx512vl_<code>v2div2qi2_mask_1, *avx512vl_<code><mode>v4qi2_mask_1,
*avx512vl_<code><mode>v8qi2_mask_1, *avx512vl_<code><mode>v4hi2_mask_1,
*avx512vl_<code>v2div2hi2_mask_1, *avx512vl_<code>v2div2si2_mask_1,
*avx512f_<code>v8div16qi2_mask_1): New insns.

From-SVN: r233545

8 years agomangle.c (maybe_check_abi_tags): Add for_decl parm.
Jason Merrill [Fri, 19 Feb 2016 06:25:05 +0000 (01:25 -0500)]
mangle.c (maybe_check_abi_tags): Add for_decl parm.

* mangle.c (maybe_check_abi_tags): Add for_decl parm.  Call
mangle_decl.
(mangle_decl): Call maybe_check_abi_tags for function scope.
(mangle_guard_variable): Call maybe_check_abi_tags here.
(write_guarded_var_name): Not here.

From-SVN: r233544

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

From-SVN: r233543

8 years agore PR testsuite/68580 (FAIL: c-c++-common/tsan/pr65400-1.c -O0 execution test)
Bernd Edlinger [Thu, 18 Feb 2016 22:27:09 +0000 (22:27 +0000)]
re PR testsuite/68580 (FAIL: c-c++-common/tsan/pr65400-1.c -O0 execution test)

PR testsuite/68580
* c-c++-common/tsan/pr65400-1.c (v, q, o): Make 8-byte aligned.

From-SVN: r233538

8 years agore PR bootstrap/68404 (PGO/LTO bootstrap failure on ppc64le)
Michael Meissner [Thu, 18 Feb 2016 19:36:39 +0000 (19:36 +0000)]
re PR bootstrap/68404 (PGO/LTO bootstrap failure on ppc64le)

[gcc]
2016-02-18  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/68404
* config/rs6000/predicates.md (fusion_gpr_addis): Revert
2016-02-09 change.

* config/rs6000/rs6000.md (fusion_gpr_load_<mode>): Remove
earlyclobber from target.  Use wF constraint for fused memory
address.
(fusion_gpr_<P:mode>_<GPR_FUSION:mode>_load): Likewise.

[gcc/testsuites]
2016-02-18  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/68404
* gcc.target/powerpc/fusion.c: Revert the 2016-02-09 change.
* gcc.target/powerpc/fusion3.c: Likewise.

From-SVN: r233532

8 years agoDo not emit red stack zones for a fn with no_sanitize_address
Jakub Jelinek [Thu, 18 Feb 2016 17:15:25 +0000 (18:15 +0100)]
Do not emit red stack zones for a fn with no_sanitize_address

PR sanitizer/69863
* cfgexpand.c (asan_sanitize_stack_p): New function.
(partition_stack_vars): Use the function.
(expand_stack_vars): Likewise.
(defer_stack_allocation): Likewise.
(expand_used_vars): Likewise.

Co-Authored-By: Martin Liska <mliska@suse.cz>
From-SVN: r233524

8 years agore PR middle-end/69553 (Optimizations O1/O2 makes std::array value incorrect when...
Richard Biener [Thu, 18 Feb 2016 14:34:59 +0000 (14:34 +0000)]
re PR middle-end/69553 (Optimizations O1/O2 makes std::array value incorrect when passed to function)

2016-02-18  Richard Biener  <rguenther@suse.de>

PR middle-end/69553
* fold-const.c (operand_equal_p): Properly compare offsets for
IMAGPART_EXPR and ARRAY_REF.

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

From-SVN: r233520

8 years agoFix PR number in changelog entries.
Nick Clifton [Thu, 18 Feb 2016 13:23:06 +0000 (13:23 +0000)]
Fix PR number in changelog entries.

From-SVN: r233519

8 years agoPR target/62554
Nick Clifton [Thu, 18 Feb 2016 13:00:07 +0000 (13:00 +0000)]
PR target/62554
        PR target/69610
gcc     * config/arm/arm.c (arm_option_override_internal): Disable
        interworking if the target does not support thumb instructions.
        (arm_reload_in_hi): Handle the case where a register to register
        move needs reloading because there is no simple pattern to handle
        it.
        (arm_reload_out_hi): Likewise.

tests   * gcc.target/arm/pr62554.c: New test.
        * gcc.target/arm/pr69610-1.c: New test.
        * gcc.target/arm/pr69610-2.c: New test.

From-SVN: r233518

8 years agore PR middle-end/69854 (ICE: tree check: expected class 'constant', have 'binary...
Richard Biener [Thu, 18 Feb 2016 08:43:58 +0000 (08:43 +0000)]
re PR middle-end/69854 (ICE: tree check: expected class 'constant', have 'binary' (plus_expr) in generic_simplify_65, at generic-match.c:3110)

2016-02-18  Richard Biener  <rguenther@suse.de>

PR middle-end/69854
* match.pd: Don't use fold_binary or fold_unary for folding
constants.

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

From-SVN: r233516

8 years agolibgo: Update to final Go 1.6 release.
Ian Lance Taylor [Thu, 18 Feb 2016 05:56:46 +0000 (05:56 +0000)]
libgo: Update to final Go 1.6 release.

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

From-SVN: r233515

8 years agore PR c++/65985 (compiler segfault with assert() in constexpr constructor body)
Jason Merrill [Thu, 18 Feb 2016 05:08:09 +0000 (00:08 -0500)]
re PR c++/65985 (compiler segfault with assert() in constexpr constructor body)

PR c++/65985
* constexpr.c (build_constexpr_constructor_member_initializers):
Handle an additional STATEMENT_LIST.

From-SVN: r233514

8 years agore PR c++/68585 (c++14 code accepted by 4.9 not accepted by 5 and 6)
Jason Merrill [Thu, 18 Feb 2016 05:08:02 +0000 (00:08 -0500)]
re PR c++/68585 (c++14 code accepted by 4.9 not accepted by 5 and 6)

PR c++/68585
* constexpr.c (cxx_eval_bare_aggregate): Fix 'changed' detection.

From-SVN: r233513

8 years agore PR c++/68679 (gcc-5.2.1 ICE in C++11 anon union of structs with template fns,...
Jason Merrill [Thu, 18 Feb 2016 05:07:55 +0000 (00:07 -0500)]
re PR c++/68679 (gcc-5.2.1 ICE in C++11 anon union of structs with template fns, OK in gcc <= 4.9.3)

PR c++/68679
* decl2.c (reset_type_linkage_2): Look through member templates.

From-SVN: r233512

8 years agoDaily bump.
GCC Administrator [Thu, 18 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r233511

8 years agore PR c++/69850 (unnecessary -Wnonnull-compare warning)
Jakub Jelinek [Wed, 17 Feb 2016 22:27:24 +0000 (23:27 +0100)]
re PR c++/69850 (unnecessary -Wnonnull-compare warning)

PR c++/69850
* gimplify.c (gimplify_cond_expr): Call gimple_set_no_warning
on the cond_stmt from TREE_NO_WARNING on COND_EXPR_COND.
* gimple-ssa-nonnull-compare.c (do_warn_nonnull_compare): Don't
warn on gimple_no_warning_p statements.

* init.c (build_delete): Set TREE_NO_WARNING on ifexp.

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

From-SVN: r233508

8 years agore PR c++/69842 (Parameter deduction in polymorphic lambdas)
Jason Merrill [Wed, 17 Feb 2016 20:45:15 +0000 (15:45 -0500)]
re PR c++/69842 (Parameter deduction in polymorphic lambdas)

PR c++/69842
* method.c (forward_parm): Split out from...
(add_one_base_init): ...here.
* lambda.c (maybe_add_lambda_conv_op): Use it.

From-SVN: r233506

8 years agoxtensa: fix libgcc build with --text-section-literals
Max Filippov [Wed, 17 Feb 2016 20:21:48 +0000 (20:21 +0000)]
xtensa: fix libgcc build with --text-section-literals

Functions __muldf3_aux, __divdf3_aux, __mulsf3_aux and __divsf3_aux
don't start with leaf_entry, so they need explicit .literal_position,
otherwise libgcc build fails in the presence of --text-section-literals.

2016-02-17  Max Filippov  <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/ieee754-df.S (__muldf3_aux, __divdf3_aux): Add
.literal_position before the function.
* config/xtensa/ieee754-sf.S (__mulsf3_aux, __divsf3_aux):
Likewise.

From-SVN: r233505

8 years agoextend.texi (C++ Attributes): Correct description of warn_unused type attribute.
Jonathan Wakely [Wed, 17 Feb 2016 17:36:22 +0000 (17:36 +0000)]
extend.texi (C++ Attributes): Correct description of warn_unused type attribute.

* doc/extend.texi (C++ Attributes): Correct description of
warn_unused type attribute.

From-SVN: r233502

8 years agore PR libfortran/69651 ([6 Regession] Usage of unitialized pointer io/list_read.c)
Jerry DeLisle [Wed, 17 Feb 2016 16:48:57 +0000 (16:48 +0000)]
re PR libfortran/69651 ([6 Regession] Usage of unitialized pointer io/list_read.c)

2016-02-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/69651
* io/list_read.c (push_char4): Fix the pointer usage for xrealloc.

From-SVN: r233500

8 years agoaltivec.md (*altivec_lvxl_<mode>_internal): Output correct instruction.
Bill Schmidt [Wed, 17 Feb 2016 16:23:55 +0000 (16:23 +0000)]
altivec.md (*altivec_lvxl_<mode>_internal): Output correct instruction.

[gcc]

2016-02-17  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (*altivec_lvxl_<mode>_internal): Output
correct instruction.

[gcc/testsuite]

2012-02-17  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vec-cg.c: New test.

From-SVN: r233499

8 years agore PR rtl-optimization/69609 (block reordering consumes an inordinate amount of time...
Richard Biener [Wed, 17 Feb 2016 14:57:58 +0000 (14:57 +0000)]
re PR rtl-optimization/69609 (block reordering consumes an inordinate amount of time, REE consumes much memory)

2016-02-17  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/69609
* bb-reorder.c (struct bbro_basic_block_data): Add priority member.
(find_traces_1_round): When ending a trace update cached priority
of successors.
(bb_to_key): Use cached priority when available.
(copy_bb): Initialize cached priority.
(reorder_basic_blocks_software_trace_cache): Likewise.

From-SVN: r233498

8 years agore PR testsuite/69586 (FAIL: gcc.dg/uninit-21.c for target defaulting to short enum)
Richard Biener [Wed, 17 Feb 2016 14:51:27 +0000 (14:51 +0000)]
re PR testsuite/69586 (FAIL: gcc.dg/uninit-21.c for target defaulting to short enum)

2016-02-17  Richard Biener  <rguenther@suse.de>

PR testsuite/69586
* gcc.dg/uninit-21.c: Add -fno-short-enums.

From-SVN: r233497

8 years ago[AArch64] PR target/69161: Don't use special predicate for CCmode comparisons in...
Kyrylo Tkachov [Wed, 17 Feb 2016 13:42:35 +0000 (13:42 +0000)]
[AArch64] PR target/69161: Don't use special predicate for CCmode comparisons in expressions that require matching modes

PR target/69161
* config/aarch64/predicates.md (aarch64_comparison_operator_mode):
New predicate.
(aarch64_comparison_operator): Break overly long line into two.
(aarch64_comparison_operation): Likewise.
* config/aarch64/aarch64.md (cstorecc4): Use
aarch64_comparison_operator_mode instead of
aarch64_comparison_operator.
(cstore<mode>4): Likewise.
(aarch64_cstore<mode>): Likewise.
(*cstoresi_insn_uxtw): Likewise.
(cstore<mode>_neg): Likewise.
(*cstoresi_neg_uxtw): Likewise.

* gcc.c-torture/compile/pr69161.c: New test.

From-SVN: r233496

8 years ago[ARM] PR target/69161: Don't ignore mode when matching comparison operator in cstore...
Kyrylo Tkachov [Wed, 17 Feb 2016 13:39:30 +0000 (13:39 +0000)]
[ARM] PR target/69161: Don't ignore mode when matching comparison operator in cstore-like patterns

PR target/69161
* config/arm/predicates.md (arm_comparison_operator_mode):
New predicate.
* config/arm/arm.md (*mov_scc): Use arm_comparison_operator_mode
instead of arm_comparison_operator.
(*mov_negscc): Likewise.
(*mov_notscc): Likewise.
* config/arm/thumb2.md (*thumb2_mov_scc): Likewise.
(*thumb2_mov_negscc): Likewise.
(*thumb2_mov_negscc_strict_it): Likewise.
(*thumb2_mov_notscc): Likewise.
(*thumb2_mov_notscc_strict_it): Likewise.

From-SVN: r233495

8 years agore PR target/69532 (FAIL: gcc.target/arm/{vect-,}fmaxmin.c execution test on armv7)
David Sherwood [Wed, 17 Feb 2016 13:16:31 +0000 (13:16 +0000)]
re PR target/69532 (FAIL: gcc.target/arm/{vect-,}fmaxmin.c execution test on armv7)

2016-02-17  David Sherwood  <david.sherwood@arm.com>

    gcc/testsuite:
        PR target/69532
        * gcc.target/arm/fmaxmin.c: Change effective target to arm_v8_neon_hw.
        * gcc.target/arm/vect-fmaxmin.c: Likewise.

From-SVN: r233494

8 years agoAs part of the final cleanup of aarch64_internal_mov_immediate a return was accidenta...
Wilco Dijkstra [Wed, 17 Feb 2016 11:52:35 +0000 (11:52 +0000)]
As part of the final cleanup of aarch64_internal_mov_immediate a return was accidentally removed.

As part of the final cleanup of aarch64_internal_mov_immediate a return was
accidentally removed.  This causes the 2-instruction case to fallthrough
into the general case even when it found a match.  An example immediate is
0xcccccccccccccccd which was using 2 instructions in GCC5 but now requires 4.
Adding the return fixes the regressions.

2016-02-17  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
* config/aarch64/aarch64.c (aarch64_internal_mov_immediate):
Add missing return.

From-SVN: r233490

8 years ago* gcc.dg/ifcvt-4.c: Skip on Visium.
Eric Botcazou [Wed, 17 Feb 2016 11:20:06 +0000 (11:20 +0000)]
* gcc.dg/ifcvt-4.c: Skip on Visium.

From-SVN: r233489

8 years agovisium.c (machine_libfunc_index): New enum.
Eric Botcazou [Wed, 17 Feb 2016 11:17:15 +0000 (11:17 +0000)]
visium.c (machine_libfunc_index): New enum.

* config/visium/visium.c (machine_libfunc_index): New enum.
(machine_libfuncs): New structure.
(visium_libfuncs): New static variable.
(TARGET_INIT_LIBFUNCS): Define to...
(visium_init_libfuncs): ...this.  New function.
(expand_block_move_4): Use the appropriate libfunc.
(expand_block_move_2): Likewise.
(expand_block_move_1): Likewise.
(expand_block_set_4): Likewise.
(expand_block_set_2): Likewise.
(expand_block_set_1): Likewise.
(visium_trampoline_init): Likewise.

From-SVN: r233488

8 years agomsp430.c (msp430_mcu_data): Sync with data from TI's devices.csv file as of March...
Nick Clifton [Wed, 17 Feb 2016 09:53:42 +0000 (09:53 +0000)]
msp430.c (msp430_mcu_data): Sync with data from TI's devices.csv file as of March 2016.

* config/msp430/msp430.c (msp430_mcu_data): Sync with data from
TI's devices.csv file as of March 2016.

From-SVN: r233487

8 years agoexp_ch4.adb (Expand_N_Indexed_Component): Active synchronization if the prefix denote...
Eric Botcazou [Wed, 17 Feb 2016 09:21:58 +0000 (09:21 +0000)]
exp_ch4.adb (Expand_N_Indexed_Component): Active synchronization if the prefix denotes an entity which Has_Atomic_Components.

* exp_ch4.adb (Expand_N_Indexed_Component): Active synchronization if
the prefix denotes an entity which Has_Atomic_Components.
* gcc-interface/trans.c (node_is_atomic): Return true if the prefix
denotes an entity which Has_Atomic_Components.

From-SVN: r233485

8 years agoutils2.c (gnat_protect_expr): Make a SAVE_EXPR only for fat pointer or scalar types.
Eric Botcazou [Wed, 17 Feb 2016 09:08:09 +0000 (09:08 +0000)]
utils2.c (gnat_protect_expr): Make a SAVE_EXPR only for fat pointer or scalar types.

* gcc-interface/utils2.c (gnat_protect_expr): Make a SAVE_EXPR only
for fat pointer or scalar types.

From-SVN: r233484

8 years agore PR libstdc++/69794 (std::regex_search match failure with regex object with flags...
Tim Shen [Wed, 17 Feb 2016 03:33:02 +0000 (03:33 +0000)]
re PR libstdc++/69794 (std::regex_search match failure with regex object with flags grep|icase)

2016-02-16  Tim Shen  <timshen@google.com>

PR libstdc++/69794
* include/bits/regex_scanner.h: Add different special character
sets for grep and egrep regex.
* include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
* testsuite/28_regex/regression.cc: Add new testcase.

From-SVN: r233482

8 years agore PR c++/10200 (Weird clash with same names in different scopes)
Jason Merrill [Wed, 17 Feb 2016 00:50:23 +0000 (19:50 -0500)]
re PR c++/10200 (Weird clash with same names in different scopes)

PR c++/10200
PR c++/69753
* call.c, cp-tree.h, name-lookup.c, pt.c, search.c, semantics.c,
tree.c, typeck2.c: Revert earlier changes.
* parser.c (cp_parser_lookup_name): Ignore namespace-scope
non-type templates after -> or .

From-SVN: r233481

8 years agoDaily bump.
GCC Administrator [Wed, 17 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r233480

8 years agore PR target/48344 (powerpc ICE with -fstack-limit-register=r2)
Kelvin Nilsen [Tue, 16 Feb 2016 23:12:19 +0000 (23:12 +0000)]
re PR target/48344 (powerpc ICE with -fstack-limit-register=r2)

[gcc]

2016-02-16  Kelvin Nilsen  <kelvin@gcc.gnu.org>

PR Target/48344
* opts-global.c (handle_common_deferred_options): Introduce and
initialize two global variables to remember command-line options
specifying a stack-limiting register.
* opts.h: Add extern declarations of the two new global variables.
* emit-rtl.c (init_emit_once): Initialize the stack_limit_rtx
variable based on the values of the two new global variables.

[gcc/testsuite]

2016-02-16  Kelvin Nilsen  <kelvin@gcc.gnu.org>

PR Target/48344
* gcc.target/powerpc/pr48344-1.c: New test.

From-SVN: r233477

8 years agore PR fortran/69742 (ICE with -O3 and ASSOCIATE containing repeated expression)
Thomas Koenig [Tue, 16 Feb 2016 21:10:00 +0000 (21:10 +0000)]
re PR fortran/69742 (ICE with -O3 and ASSOCIATE containing repeated expression)

2015-02-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/69742
* frontend-passes.c (cfe-expr_0):  Don't register functions
from within an ASSOCIATE statement.

2015-02-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/69742
* gfortran.dg/associate_21.f90:  New test.

From-SVN: r233474

8 years agore PR c/69835 (-Wnonnull diagnoses parameter comparisons with NULL even when those...
Jakub Jelinek [Tue, 16 Feb 2016 20:46:17 +0000 (21:46 +0100)]
re PR c/69835 (-Wnonnull diagnoses parameter comparisons with NULL even when those could have changed)

PR c/69835
* common.opt (Wnonnull-compare): New warning.
* doc/invoke.texi (-Wnonnull): Remove text about comparison
of arguments against NULL.
(-Wnonnull-compare): Document.
* Makefile.in (OBJS): Add gimple-ssa-nonnull-compare.o.
* tree-pass.h (make_pass_warn_nonnull_compare): Declare.
* passes.def (pass_warn_nonnull_compare): Add.
* gimple-ssa-nonnull-compare.c: New file.
c-family/
* c.opt (Wnonnull-compare): Enable for -Wall.
c/
* c-typeck.c (build_binary_op): Revert 2015-09-09 change.
cp/
* typeck.c (cp_build_binary_op): Revert 2015-09-09 change.
testsuite/
* c-c++-common/nonnull-1.c: Use -Wnonnull-compare instead of
-Wnonnull in dg-options.
* c-c++-common/nonnull-2.c: New test.

From-SVN: r233472

8 years agore PR c++/69657 (abs() not inlined after including math.h)
Jason Merrill [Tue, 16 Feb 2016 19:01:49 +0000 (14:01 -0500)]
re PR c++/69657 (abs() not inlined after including math.h)

PR c++/69657
* name-lookup.c (lookup_qualified_name): Add find_hidden parm.
(set_decl_namespace): Pass it.  Complain about finding a hidden friend.
* name-lookup.h: Adjust.

From-SVN: r233470

8 years agogigi.h (maybe_debug_type): New inline function.
Eric Botcazou [Tue, 16 Feb 2016 18:01:04 +0000 (18:01 +0000)]
gigi.h (maybe_debug_type): New inline function.

* gcc-interface/gigi.h (maybe_debug_type): New inline function.
* gcc-interface/misc.c (gnat_get_array_descr_info): Use it.
Call maybe_character_value on the array bounds.  Get to the base type
of the index type and call maybe_debug_type on it.
* gcc-interface/utils.c (finish_character_type): Add special treatment

From-SVN: r233469

8 years agomisc.c (gnat_enum_underlying_base_type): New function.
Eric Botcazou [Tue, 16 Feb 2016 17:51:56 +0000 (17:51 +0000)]
misc.c (gnat_enum_underlying_base_type): New function.

* gcc-interface/misc.c (gnat_enum_underlying_base_type): New function.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define to above.

From-SVN: r233467

8 years ago[AArch64] Remove AARCH64_EXTRA_TUNE_RECIP_SQRT from Cortex-A57 tuning
James Greenhalgh [Tue, 16 Feb 2016 16:04:42 +0000 (16:04 +0000)]
[AArch64] Remove AARCH64_EXTRA_TUNE_RECIP_SQRT from Cortex-A57 tuning

gcc/

* config/aarch64/aarch64.c (cortexa57_tunings): Remove
AARCH64_EXTRA_TUNE_RECIP_SQRT.

From-SVN: r233463

8 years ago[Patch AArch64] Use software sqrt expansion always for -mlow-precision-recip-sqrt
James Greenhalgh [Tue, 16 Feb 2016 16:03:27 +0000 (16:03 +0000)]
[Patch AArch64] Use software sqrt expansion always for -mlow-precision-recip-sqrt

gcc/

* config/aarch64/aarch64.c (use_rsqrt_p): Always use software
reciprocal sqrt for -mlow-precision-recip-sqrt.

From-SVN: r233462

8 years ago[Patch AArch64] GCC 6 regression in vector performance. - Fix vector initialization...
James Greenhalgh [Tue, 16 Feb 2016 16:02:09 +0000 (16:02 +0000)]
[Patch AArch64] GCC 6 regression in vector performance. - Fix vector initialization to happen with lane load instructions.

gcc/

* config/aarch64/aarch64.c (aarch64_expand_vector_init): Refactor,
always use lane loads to construct non-constant vectors.

gcc/testsuite/

* gcc.target/aarch64/vector_initialization_nostack.c: New.

Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
From-SVN: r233461

8 years ago[Patch AArch64] Restrict 16-bit sqrdml{sa}h instructions to FP_LO_REGS
James Greenhalgh [Tue, 16 Feb 2016 15:59:51 +0000 (15:59 +0000)]
[Patch AArch64] Restrict 16-bit sqrdml{sa}h instructions to FP_LO_REGS

gcc/

* config/aarch64/aarch64.md
(arch64_sqrdml<SQRDMLH_AS:rdma_as>h_lane<mode>): Fix register
constraints for operand 3.
(aarch64_sqrdml<SQRDMLH_AS:rdma_as>h_laneq<mode>): Likewise.

From-SVN: r233460

8 years agore PR tree-optimization/69801 (gcc ICE on valid code on x86_64-linux-gnu in "operand...
Jakub Jelinek [Tue, 16 Feb 2016 15:34:07 +0000 (16:34 +0100)]
re PR tree-optimization/69801 (gcc ICE  on valid code on x86_64-linux-gnu in "operand_equal_p")

PR middle-end/69801
* gcc.dg/pr69801.c: Add empty dg-options.

From-SVN: r233459

8 years agore PR c/64748 (OpenACC: "is not a variable" error with deviceptr())
James Norris [Tue, 16 Feb 2016 15:29:04 +0000 (15:29 +0000)]
re PR c/64748 (OpenACC: "is not a variable" error with deviceptr())

PR c/64748

gcc/c/
* c-parser.c (c_parser_oacc_data_clause_deviceptr): Allow parms.

gcc/cp/
* parser.c (cp_parser_oacc_data_clause_deviceptr): Remove checking.
* semantics.c (finish_omp_clauses): Add deviceptr checking.

gcc/testsuite/
* c-c++-common/goacc/deviceptr-1.c: Add tests.
* g++.dg/goacc/deviceptr-1.c: New file.

From-SVN: r233458

8 years agore PR tree-optimization/69820 (Test miscompiled with -O3 option)
Jakub Jelinek [Tue, 16 Feb 2016 15:16:48 +0000 (16:16 +0100)]
re PR tree-optimization/69820 (Test miscompiled with -O3 option)

PR tree-optimization/69820
* tree-vect-patterns.c (type_conversion_p): Return false if
*orig_type is unsigned single precision or boolean.
(vect_recog_dot_prod_pattern, vect_recog_widen_mult_pattern):
Formatting fix.

* gcc.dg/vect/pr69820.c: New test.

Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r233457

8 years agore PR rtl-optimization/69764 (ICE on x86_64-linux-gnu at -O0 (in decompose, at rtl...
Jakub Jelinek [Tue, 16 Feb 2016 15:15:40 +0000 (16:15 +0100)]
re PR rtl-optimization/69764 (ICE on x86_64-linux-gnu at -O0 (in decompose, at rtl.h:2107))

PR rtl-optimization/69764
PR rtl-optimization/69771
* optabs.c (expand_binop): Ensure for shift optabs invalid CONST_INT
op1 is valid for GET_MODE_INNER (mode) and force it into a reg.

From-SVN: r233456

8 years agore PR tree-optimization/69776 (Wrong optimization with aliasing)
Richard Biener [Tue, 16 Feb 2016 15:00:45 +0000 (15:00 +0000)]
re PR tree-optimization/69776 (Wrong optimization with aliasing)

2016-02-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69776
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Get alias
sets from caller.
(indirect_refs_may_alias_p): Likewise.
(refs_may_alias_p_1): Pass alias sets as from ao_ref.
* tree-ssa-sccvn.c (vn_reference_lookup): Also adjust vr alias-set
according to tbaa_p.
* tree-ssa-dom.c (lookup_avail_expr): Add tbaa_p flag.
(optimize_stmt): For redundant store discovery do not allow tbaa.

* gcc.dg/torture/pr69776-2.c: New testcase.

From-SVN: r233453

8 years agoFix bswap optimization on big-endian (PR69714, 67781).
Bernd Schmidt [Tue, 16 Feb 2016 14:42:59 +0000 (14:42 +0000)]
Fix bswap optimization on big-endian (PR69714, 67781).

PR tree-optimization/69714
* tree-ssa-math-opts.c (find_bswap_or_nop): Revert previous change.
Return NULL if we have irrelevant high bytes on BIG_ENDIAN.

testsuite/
PR tree-optimization/69714
* gcc.dg/torture/pr69714.c: New test.

From-SVN: r233452

8 years ago[ARC] Add single/double IEEE precission FPU support.
Claudiu Zissulescu [Tue, 16 Feb 2016 14:11:24 +0000 (15:11 +0100)]
[ARC] Add single/double IEEE precission FPU support.

gcc/
2016-02-16  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc-modes.def (CC_FPU, CC_FPU_UNEQ): New modes.
* config/arc/arc-opts.h (FPU_SP, FPU_SF, FPU_SC, FPU_SD, FPU_DP)
(FPU_DF, FPU_DC, FPU_DD, FXP_DP): Define.
* config/arc/arc.c (arc_init): Check FPU options.
(get_arc_condition_code): Handle new CC_FPU* modes.
(arc_select_cc_mode): Likewise.
(arc_conditional_register_usage): Allow 64 bit datum into even-odd
register pair only. Allow access for ARCv2 accumulator.
(gen_compare_reg): Whenever we have FPU support use FPU compare
instructions.
(arc_reorg): Don't generate brcc insns when FPU compare
instructions are involved.
* config/arc/arc.h (TARGET_DPFP): Add TARGET_FP_DPAX condition.
(TARGET_OPTFPE): Add condition when ARC EM can use optimized
floating point emulation.
(ACC_REG_FIRST, ACC_REG_LAST, ACCL_REGNO, ACCH_REGNO): Define.
(REVERSE_CONDITION): Add new CC_FPU* modes.
(TARGET_FP_SP_BASE): Define.
(TARGET_FP_DP_BASE): Likewise.
(TARGET_FP_SP_FUSED): Likewise.
(TARGET_FP_DP_FUSED): Likewise.
(TARGET_FP_SP_CONV): Likewise.
(TARGET_FP_DP_CONV): Likewise.
(TARGET_FP_SP_SQRT): Likewise.
(TARGET_FP_DP_SQRT): Likewise.
(TARGET_FP_DP_AX): Likewise.
* config/arc/arc.md (ARCV2_ACC): New constant.
(type): New fpu type attribute.
(SDF): Conditional iterator.
(cstore<mode>, cbranch<mode>): Change expand condition.
(addsf3, subsf3, mulsf3, adddf3, subdf3, muldf3): New expands,
handles FPU/FPX cases as well.
* config/arc/arc.opt (mfpu): New option.
* config/arc/fpx.md (addsf3_fpx, subsf3_fpx, mulsf3_fpx):
Renamed.
(adddf3, muldf3, subdf3): Removed.
* config/arc/predicates.md (proper_comparison_operator): Recognize
CC_FPU* modes.
* config/arc/fpu.md: New file.
* doc/invoke.texi (ARC Options): Document mfpu option.

From-SVN: r233451

8 years agore PR rtl-optimization/69291 (wrong code at -O1 for ruby-2.3.0/regcomp.c:985:compile_...
Richard Biener [Tue, 16 Feb 2016 10:53:08 +0000 (10:53 +0000)]
re PR rtl-optimization/69291 (wrong code at -O1 for ruby-2.3.0/regcomp.c:985:compile_length_quantifier_node())

2016-02-16  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/69291
* ifcvt.c (noce_try_store_flag_constants): Re-instantiate
noce_operand_ok check.

From-SVN: r233448

8 years agoDon't call call_cgraph_insertion_hooks in simd_clone_create
Tom de Vries [Tue, 16 Feb 2016 09:23:09 +0000 (09:23 +0000)]
Don't call call_cgraph_insertion_hooks in simd_clone_create

2016-02-16  Tom de Vries  <tom@codesourcery.com>

PR lto/67709
* omp-low.c (simd_clone_create): Remove call to
symtab->call_cgraph_insertion_hooks.

* testsuite/libgomp.fortran/declare-simd-4.f90: New test.

From-SVN: r233447

8 years agore PR tree-optimization/69802 (gcc ICE at -O1 and above on valid code on x86_64...
Jakub Jelinek [Tue, 16 Feb 2016 09:12:37 +0000 (10:12 +0100)]
re PR tree-optimization/69802 (gcc ICE at -O1 and above  on valid code on x86_64-linux-gnu with “seg fault”)

PR tree-optimization/69802
* tree-ssa-reassoc.c (update_range_test): If op is
SSA_NAME_IS_DEFAULT_DEF, give up unless tem is a positive
op == 1 test of precision 1 integral op, otherwise handle
that case as op itself.  Fix up formatting.
(optimize_range_tests_to_bit_test, optimize_range_tests): Fix
up formatting.

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

From-SVN: r233446

8 years agore PR testsuite/69586 (FAIL: gcc.dg/uninit-21.c for target defaulting to short enum)
Richard Biener [Tue, 16 Feb 2016 09:00:32 +0000 (09:00 +0000)]
re PR testsuite/69586 (FAIL: gcc.dg/uninit-21.c for target defaulting to short enum)

2016-02-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69586
* tree-vrp.c (register_edge_assert_for_2): Handle all integral
types for conversion sources.

From-SVN: r233445

8 years agore PR tree-optimization/69801 (gcc ICE on valid code on x86_64-linux-gnu in "operand...
Richard Biener [Tue, 16 Feb 2016 08:39:22 +0000 (08:39 +0000)]
re PR tree-optimization/69801 (gcc ICE  on valid code on x86_64-linux-gnu in "operand_equal_p")

2016-02-16  Richard Biener  <rguenther@suse.de>

PR middle-end/69801
* fold-const.c (operand_equal_p): For COND_EXPR zero operand
mask OEP_ADDRESS_OF.

* gcc.dg/pr69801.c: New testcase.

From-SVN: r233444

8 years agoDaily bump.
GCC Administrator [Tue, 16 Feb 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r233441

8 years ago[RS6000] reload_vsx_from_gprsf splitter
Alan Modra [Mon, 15 Feb 2016 23:29:17 +0000 (09:59 +1030)]
[RS6000] reload_vsx_from_gprsf splitter

This is PR68973 part 2, caused by the reload_vsx_from_gprsf splitter
emitting an invalid move.  The patch also fixes uses of TFmode, which
cannot now be assumed to be IBM double-double.

PR target/68973
* config/rs6000/rs6000.md (reload_vsx_from_gprsf): Rewrite splitter.
(p8_mtvsrd_df, p8_mtvsrd_sf): New.
(p8_mtvsrd_1, p8_mtvsrd_2): Delete.
(p8_mtvsrwz): New.
(p8_mtvsrwz_1, p8_mtvsrwz_2): Delete.
(p8_xxpermdi_<mode>): Take two DF inputs rather than one TF.
(p8_fmrgow_<mode>): Likewise.
(reload_vsx_from_gpr<mode>): Make clobber IF.  Adjust for above
changes.
(reload_fpr_from_gpr<mode>): Similarly. Use "d" for op0 constraint.
(reload_vsx_from_gprsf): Use p8_mtvsrd_sf rather than attempting
to use movdi_internal64.  Remove op0_di.
* config/rs6000/vsx.md (vsx_xscvspdpn_directmove): Make op1 SFmode.

From-SVN: r233438

8 years ago* sv.po: Update.
Joseph Myers [Mon, 15 Feb 2016 23:20:26 +0000 (23:20 +0000)]
* sv.po: Update.

From-SVN: r233437

8 years agore PR libfortran/69651 ([6 Regession] Usage of unitialized pointer io/list_read.c)
Jerry DeLisle [Mon, 15 Feb 2016 22:31:13 +0000 (22:31 +0000)]
re PR libfortran/69651 ([6 Regession] Usage of unitialized pointer io/list_read.c)

2016-02-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/69651
* io/list_read.c: Entire file trailing spaces removed.
(CASE_SEPARATORS): Remove '!'.
(is_separator): Add namelist mode as condition with '!'.
(push_char): Remove un-needed memset. (push_char4): Likewise and remove
'new' pointer. (eat_separator): Remove un-needed use of notify_std.
(read_logical): If '!' bang encountered when not in namelist mode got
bad_logical to give an error. (read_integer): Likewise reject '!'.
(read_character): Remove condition testing c = '!' which is now inside
the is_separator macro. (parse_real): Reject '!' unless in namelist mode.
(read_complex): Reject '!' unless in namelist mode. (read_real): Likewise
reject '!'.

PR libgfortran/69651
* gfortran.dg/read_bang.f90: New test.
* gfortran.dg/read_bang4.f90: New test.

From-SVN: r233436

8 years agore PR c++/69658 (Bogus "C99 designator outside aggregate initializer" error)
Jakub Jelinek [Mon, 15 Feb 2016 22:05:12 +0000 (23:05 +0100)]
re PR c++/69658 (Bogus "C99 designator outside aggregate initializer" error)

PR c++/69658
* init.c (expand_default_init): Only call reshape_init
in the direct-initialization from an initializer list case.

* g++.dg/init/pr69658.C: New test.

From-SVN: r233435

8 years agore PR c++/69797 (ICE on invalid code on x86_64-linux-gnu in operator[], at vec.h...
Jakub Jelinek [Mon, 15 Feb 2016 21:30:50 +0000 (22:30 +0100)]
re PR c++/69797 (ICE on invalid code on x86_64-linux-gnu in operator[], at vec.h:714)

PR c++/69797
* c-common.c (sync_resolve_size): Diagnose too few arguments
even when params is non-NULL empty vector.

* c-c++-common/pr69797.c: New test.

From-SVN: r233434

8 years agoAdd support for the FCCMP insn types
Evandro Menezes [Mon, 15 Feb 2016 21:15:49 +0000 (21:15 +0000)]
Add support for the FCCMP insn types

2016-01-21  Evandro Menezes  <e.menezes@samsung.com>

gcc/
* config/aarch64/aarch64.md (fccmp): Change insn type.
(fccmpe): Likewise.
* config/aarch64/thunderx.md (thunderx_fcmp): Add "fccmp{s,d}" types.
* config/arm/cortex-a53.md (cortex_a53_fpalu): Likewise.
* config/arm/cortex-a57.md (cortex_a57_fp_cmp): Likewise.
* config/arm/xgene1.md (xgene1_fcmp): Likewise.
* config/arm/exynos-m1.md (exynos_m1_fp_ccmp): New insn reservation.
* config/arm/types.md (fccmps): Add new insn type.
(fccmpd): Likewise.

From-SVN: r233432

8 years agore PR c++/69753 (bogus: expected primary-expression before ‘>’ token)
Jason Merrill [Mon, 15 Feb 2016 21:14:05 +0000 (16:14 -0500)]
re PR c++/69753 (bogus: expected primary-expression before ‘>’ token)

PR c++/69753

* search.c (any_dependent_bases_p): Split out...
* name-lookup.c (do_class_using_decl): ...from here.
* call.c (build_new_method_call_1): Don't complain about missing object
if there are dependent bases.  Tweak error.
* tree.c (non_static_member_function_p): Remove.
* pt.c (type_dependent_expression_p): A member template of a
dependent type is dependent.
* cp-tree.h: Adjust.

From-SVN: r233431

8 years agore PR c++/68890 (ICE in verify_ctor_sanity, at cp/constexpr.c:2113)
Jason Merrill [Mon, 15 Feb 2016 21:13:57 +0000 (16:13 -0500)]
re PR c++/68890 (ICE in verify_ctor_sanity, at cp/constexpr.c:2113)

PR c++/68890

* constexpr.c (verify_ctor_sanity): Remove CONSTRUCTOR_NELTS check.

From-SVN: r233430

8 years ago* alias.c (get_alias_set): Fix a typo in comment.
Bernd Edlinger [Mon, 15 Feb 2016 20:31:45 +0000 (20:31 +0000)]
* alias.c (get_alias_set): Fix a typo in comment.

From-SVN: r233428

8 years agotarget-supports.exp (check_effective_target_section_anchors): Add check for aarch64...
Prathamesh Kulkarni [Mon, 15 Feb 2016 17:28:48 +0000 (17:28 +0000)]
target-supports.exp (check_effective_target_section_anchors): Add check for aarch64*-*-*.

2016-02-15  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

testsuite/
        * lib/target-supports.exp (check_effective_target_section_anchors): Add
        check for aarch64*-*-*.

From-SVN: r233426

8 years agore PR tree-optimization/69595 (Bogus -Warray-bound warning due to missed optimization)
Richard Biener [Mon, 15 Feb 2016 13:49:42 +0000 (13:49 +0000)]
re PR tree-optimization/69595 (Bogus -Warray-bound warning due to missed optimization)

2016-02-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69595
* match.pd: Complete range test simplification to true.

From-SVN: r233425

8 years agoAvoid removing sets of a pseudo PIC register in LRA.
Bernd Schmidt [Mon, 15 Feb 2016 12:06:44 +0000 (12:06 +0000)]
Avoid removing sets of a pseudo PIC register in LRA.

PR rtl-optimization/69648
* lra-constraints.c (update_ebb_live_info): Don't remove sets of
pic_offset_table_rtx.

From-SVN: r233424

8 years agoDon't make something with an autoinc an equivalencing insn (PR69752).
Bernd Schmidt [Mon, 15 Feb 2016 12:04:13 +0000 (12:04 +0000)]
Don't make something with an autoinc an equivalencing insn (PR69752).

PR rtl-optimization/69752
* ira.c (update_equiv_regs): When looking for more than a single SET,
also take other side effects into account.

From-SVN: r233423

8 years agoS/390: New mcount call sequence for z900+ CPUs in 31-bit mode.
Marcin Kościelnicki [Mon, 15 Feb 2016 11:48:28 +0000 (11:48 +0000)]
S/390: New mcount call sequence for z900+ CPUs in 31-bit mode.

gcc/ChangeLog:

2016-02-15  Marcin Kościelnicki  <koriakin@0x04.net>

* config/s390/s390.c (s390_function_profiler): Add a new sequence
for z900+ CPUs in 31-bit mode.

From-SVN: r233422

8 years agoS/390: Add -fsplit-stack support
Marcin Kościelnicki [Mon, 15 Feb 2016 10:20:18 +0000 (10:20 +0000)]
S/390: Add -fsplit-stack support

libgcc/ChangeLog:

* config.host: Use t-stack and t-stack-s390 for s390*-*-linux.
* config/s390/morestack.S: New file.
* config/s390/t-stack-s390: New file.
* generic-morestack.c (__splitstack_find): Add s390-specific code.

gcc/ChangeLog:

* common/config/s390/s390-common.c (s390_supports_split_stack):
New function.
(TARGET_SUPPORTS_SPLIT_STACK): New macro.
* config/s390/s390-protos.h: Add s390_expand_split_stack_prologue.
* config/s390/s390.c (struct machine_function): New field
split_stack_varargs_pointer.
(s390_register_info): Mark r12 as clobbered if it'll be used as temp
in s390_emit_prologue.
(s390_emit_prologue): Use r12 as temp if r1 is taken by split-stack
vararg pointer.
(morestack_ref): New global.
(SPLIT_STACK_AVAILABLE): New macro.
(s390_expand_split_stack_prologue): New function.
(s390_live_on_entry): New function.
(s390_va_start): Use split-stack vararg pointer if appropriate.
(s390_asm_file_end): Emit the split-stack note sections.
(TARGET_EXTRA_LIVE_ON_ENTRY): New macro.
* config/s390/s390.md (UNSPEC_STACK_CHECK): New unspec.
(UNSPECV_SPLIT_STACK_CALL): New unspec.
(UNSPECV_SPLIT_STACK_DATA): New unspec.
(split_stack_prologue): New expand.
(split_stack_space_check): New expand.
(split_stack_data): New insn.
(split_stack_call): New expand.
(split_stack_call_*): New insn.
(split_stack_cond_call): New expand.
(split_stack_cond_call_*): New insn.

From-SVN: r233421

8 years agore PR tree-optimization/69783 (Loop is not vectorized after r233212)
Richard Biener [Mon, 15 Feb 2016 09:40:01 +0000 (09:40 +0000)]
re PR tree-optimization/69783 (Loop is not vectorized after r233212)

2016-02-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69783
* tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
Add trivially correct cases.

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

From-SVN: r233420

8 years agoDon't mark offload symbols with force_output in ltrans
Tom de Vries [Mon, 15 Feb 2016 09:30:31 +0000 (09:30 +0000)]
Don't mark offload symbols with force_output in ltrans

2016-02-15  Tom de Vries  <tom@codesourcery.com>

PR lto/69655
* lto-cgraph.c (input_offload_tables): Add and handle bool parameter
do_force_output.
* lto-streamer.h (input_offload_tables): Add and handle bool parameter.

* lto.c (read_cgraph_and_symbols): Call input_offload_tables with
argument.

From-SVN: r233419

8 years agore PR tree-optimization/69776 (Wrong optimization with aliasing)
Richard Biener [Mon, 15 Feb 2016 08:42:38 +0000 (08:42 +0000)]
re PR tree-optimization/69776 (Wrong optimization with aliasing)

2016-02-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69776
* tree-ssa-sccvn.h (vn_reference_lookup): Adjust prototype.
* tree-ssa-sccvn.c (vn_reference_lookup): Add parameter to
indicate whether we can use TBAA to disambiguate against stores.
Use alias-set zero if not.
(visit_reference_op_store): Do not use TBAA when looking up
redundant stores.
* tree-ssa-pre.c (compute_avail): Use TBAA here.
(eliminate_dom_walker::before_dom_children): But not when looking
up redundant stores.

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

From-SVN: r233418

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

From-SVN: r233417

8 years agopa.md (absqi2, [...]): New.
John David Anglin [Sun, 14 Feb 2016 18:26:00 +0000 (18:26 +0000)]
pa.md (absqi2, [...]): New.

* config/pa/pa.md (absqi2, absghi2, bswaphi2, bswapsi2, bswapdi2): New.

From-SVN: r233414

8 years agore PR fortran/60526 (Accepts-invalid: Variable name same as type name)
Thomas Koenig [Sun, 14 Feb 2016 17:08:44 +0000 (17:08 +0000)]
re PR fortran/60526 (Accepts-invalid: Variable name same as type name)

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
* decl.c (build_sym):  If the name has already been defined as a
type, it has a symtree with an upper case letter at the beginning.
If such a symtree exists, issue an error and exit.  Don't do
this if there is no corresponding upper case letter.

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
* gfortran.dg/type_decl_4.f90:  Reinstated.

From-SVN: r233413

8 years agore PR fortran/68746 (FAIL: gfortran.dg/read_dir.f90 -O0 execution test)
John David Anglin [Sun, 14 Feb 2016 16:29:08 +0000 (16:29 +0000)]
re PR fortran/68746 (FAIL: gfortran.dg/read_dir.f90   -O0  execution test)

PR fortran/68746
* gfortran.dg/read_dir.f90: Xfail on hppa*-*-hpux*.

From-SVN: r233412

8 years agore PR fortran/60526 (Accepts-invalid: Variable name same as type name)
Thomas Koenig [Sun, 14 Feb 2016 15:13:39 +0000 (15:13 +0000)]
re PR fortran/60526 (Accepts-invalid: Variable name same as type name)

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
PR bootstrap/69816
* decl.c (build_sym):  Reverted previous patch.

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
PR bootstrap/69816
* gfortran.dg/type_decl_4.f90:  Removed.

From-SVN: r233411

8 years agore PR fortran/60526 (Accepts-invalid: Variable name same as type name)
Thomas Koenig [Sun, 14 Feb 2016 12:23:59 +0000 (12:23 +0000)]
re PR fortran/60526 (Accepts-invalid: Variable name same as type name)

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
* decl.c (build_sym):  If the name has already been defined as a
type, issue error and return false.

2016-02-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60526
* gfortran.dg/type_decl_4.f90:  New test.

From-SVN: r233410

8 years agoFix some pipe reservations in znver1.md
Venkataramanan Kumar [Sun, 14 Feb 2016 07:11:16 +0000 (07:11 +0000)]
Fix some pipe reservations in znver1.md

Fix some pipe reservations in znver1.md
*  config/i386/znver1.md
(znver1_pop, znver1_pop_mem,
znver1_load_imov_double_store,
znver1_load_imov_direct_store,
znver1_load_imov_direct_load,
znver1_load_imov_double_load): Add new.
(znver1_insn, znver1_insn_load): Add icmov type.
(znver1_sseavx_fma,
znver1_sseavx_fma_load,
znver1_avx256_fma,
znver1_avx256_fma_load): Fix pipe usage.

From-SVN: r233409

8 years agoAdd missing pr number
Alan Modra [Sun, 14 Feb 2016 01:48:59 +0000 (12:18 +1030)]
Add missing pr number

From-SVN: r233408

8 years agoCorrect c-torture stkalign test
Alan Modra [Sun, 14 Feb 2016 01:43:14 +0000 (12:13 +1030)]
Correct c-torture stkalign test

The test wrongly assumed that a local var will normally not be 64-bit
aligned, causing it to fail on many targets.  So the test needs to
pass if a local var *is* normally 64-bit aligned.

* gcc.c-torture/execute/stkalign.c: Revise test.

From-SVN: r233407