]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
9 years ago2016-06-09 Richard Biener <rguenther@suse.de>
rguenth [Thu, 9 Jun 2016 11:36:22 +0000 (11:36 +0000)] 
2016-06-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71462
* tree-ssa-loop-manip.c (find_uses_to_rename): Guard against
removed blocks.

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

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

9 years agoIntroduce filtering for edge_predictions.
marxin [Thu, 9 Jun 2016 11:26:32 +0000 (11:26 +0000)] 
Introduce filtering for edge_predictions.

* predict.c (filter_predictions): New function.
(remove_predictions_associated_with_edge): Use the filter
function.
(equal_edge_p): New function.

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

9 years ago PR c/65471
mpolacek [Thu, 9 Jun 2016 10:16:19 +0000 (10:16 +0000)] 
PR c/65471
* gcc.dg/c11-generic-3.c: New test.

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

9 years agoUpdate documentation for ARM architecture
ktkachov [Thu, 9 Jun 2016 08:59:23 +0000 (08:59 +0000)] 
Update documentation for ARM architecture

2016-06-09  Stefan Bruens  <stefan.bruens@rwth-aachen.de>

* doc/invoke.texi (ARM Options): Use lexicographical ordering.
Correct usage of @samp vs @option, add @samp where appropriate.
Add -march={armv6k,armv6z,arm6zk}, remove -march=ep9312.
Add armv6s-m and document it, as it is no official ARM name.

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

9 years ago[RTL ifcvt] Print name of noce trasform that succeeded in dump file
ktkachov [Thu, 9 Jun 2016 08:48:10 +0000 (08:48 +0000)] 
[RTL ifcvt] Print name of noce trasform that succeeded in dump file

* ifcvt.c (struct noce_if_info): Add transform_name field.
(noce_try_move): Set if_info->transform_name to the function name.
(noce_try_ifelse_collapse): Likewise.
(noce_try_store_flag): Likewise.
(noce_try_inverse_constants): Likewise.
(noce_try_store_flag_constants): Likewise.
(noce_try_addcc): Likewise.
(noce_try_store_flag_mask): Likewise.
(noce_try_cmove): Likewise.
(noce_try_cmove_arith): Likewise.
(noce_try_minmax): Likewise.
(noce_try_abs): Likewise.
(noce_try_sign_mask): Likewise.
(noce_try_bitop): Likewise.
(noce_convert_multiple_sets): Likewise.
(noce_process_if_block): Print if_info->transform_name to
dump_file if transformation succeeded.

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

9 years ago[AArch64] Model CSEL instruction in Cortex-A57 scheduling model
ktkachov [Thu, 9 Jun 2016 08:45:22 +0000 (08:45 +0000)] 
[AArch64] Model CSEL instruction in Cortex-A57 scheduling model

* config/arm/cortex-a57.md (cortex_a57_alu):
Handle csel type.

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

9 years agoDaily bump.
gccadmin [Thu, 9 Jun 2016 00:17:08 +0000 (00:17 +0000)] 
Daily bump.

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

9 years ago/cp
paolo [Wed, 8 Jun 2016 19:31:55 +0000 (19:31 +0000)] 
/cp
2016-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (maybe_deduce_size_from_array_init): Use
DECL_SOURCE_LOCATION in error_at.
(layout_var_decl): Likewise.
(check_array_initializer): Likewise.
(check_initializer): Likewise.
(duplicate_decls, check_elaborated_type_specifier): Tidy.

/testsuite
2016-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/init/array42.C: New.
* g++.dg/init/array43.C: Likewise.
* g++.dg/init/array44.C: Likewise.
* g++.dg/init/array45.C: Likewise.
* g++.dg/cpp0x/constexpr-ice10.C: Test column number too.
* g++.dg/cpp0x/constexpr-incomplete1.C: Likewise.
* g++.dg/cpp1y/auto-fn27.C: Likewise.
* g++.dg/gomp/pr35751.C: Likewise.
* g++.dg/init/array23.C: Likewise.
* g++.dg/init/brace2.C: Likewise.
* g++.dg/init/brace6.C: Likewise.

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

9 years ago PR c++/70507
jakub [Wed, 8 Jun 2016 19:03:17 +0000 (19:03 +0000)] 
PR c++/70507
PR c/68120
* builtins.def (BUILT_IN_ADD_OVERFLOW_P, BUILT_IN_SUB_OVERFLOW_P,
BUILT_IN_MUL_OVERFLOW_P): New builtins.
* builtins.c: Include gimple-fold.h.
(fold_builtin_arith_overflow): Handle
BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
(fold_builtin_3): Likewise.
* doc/extend.texi (Integer Overflow Builtins): Document
__builtin_{add,sub,mul}_overflow_p.
gcc/c/
* c-typeck.c (convert_arguments): Don't promote last argument
of BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
gcc/cp/
* constexpr.c: Include gimple-fold.h.
(cxx_eval_internal_function): New function.
(cxx_eval_call_expression): Call it.
(potential_constant_expression_1): Handle integer arithmetic
overflow built-ins.
* tree.c (builtin_valid_in_constant_expr_p): Handle
BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
gcc/c-family/
* c-common.c (check_builtin_function_arguments): Handle
BUILT_IN_{ADD,SUB,MUL}_OVERFLOW_P.
gcc/testsuite/
* c-c++-common/builtin-arith-overflow-1.c: Add test cases.
* c-c++-common/builtin-arith-overflow-2.c: New test.
* g++.dg/ext/builtin-arith-overflow-1.C: New test.
* g++.dg/cpp0x/constexpr-arith-overflow.C: New test.
* g++.dg/cpp1y/constexpr-arith-overflow.C: New test.

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

9 years ago2016-06-08 Jose E. Marchesi <jose.marchesi@oracle.com>
jemarch [Wed, 8 Jun 2016 18:32:16 +0000 (18:32 +0000)] 
2016-06-08  Jose E. Marchesi  <jose.marchesi@oracle.com>

* config/sparc/driver-sparc.c (cpu_names): Fix the entry for the
SPARC-M7 and add an entry for SPARC-S7 cpus (Sonoma).

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

9 years ago2016-06-08 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 8 Jun 2016 18:29:42 +0000 (18:29 +0000)] 
2016-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (tsubst, case TYPENAME_TYPE): Don't delay checking the
return value of tsubst_aggr_type for error_mark_node.

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

9 years ago PR c++/71442
jakub [Wed, 8 Jun 2016 17:57:30 +0000 (17:57 +0000)] 
PR c++/71442
* pt.c (tsubst_copy): Only set TREE_USED on DECLs.

* g++.dg/cpp0x/Wunused-variable-1.C: New test.

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

9 years ago[PATCH 2/2][AArch64] Tests of AAPCS64 updates for alignment attribute
jgreenhalgh [Wed, 8 Jun 2016 17:02:24 +0000 (17:02 +0000)] 
[PATCH 2/2][AArch64] Tests of AAPCS64 updates for alignment attribute

gcc/testsuite/

* gcc.target/aarch64/aapcs64/aapcs64.exp: Also execute rec_*.c
* gcc.target/aarch64/aapcs64/rec_align-5.c: New.
* gcc.target/aarch64/aapcs64/rec_align-6.c: New.
* gcc.target/aarch64/aapcs64/rec_align-7.c: New.
* gcc.target/aarch64/aapcs64/rec_align-8.c: New.
* gcc.target/aarch64/aapcs64/rec_align-9.c: New.
* gcc.target/aarch64/aapcs64/test_align-5.c: New.
* gcc.target/aarch64/aapcs64/test_align-6.c: New.
* gcc.target/aarch64/aapcs64/test_align-7.c: New.
* gcc.target/aarch64/aapcs64/test_align-8.c: New.
* gcc.target/aarch64/aapcs64/test_align-9.c: New.
* gcc.target/aarch64/aapcs64/rec_vaarg-1.c: New.
* gcc.target/aarch64/aapcs64/rec_vaarg-2.c: New.

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

9 years ago[PATCH 1/2][AArch64] Implement AAPCS64 updates for alignment attribute
jgreenhalgh [Wed, 8 Jun 2016 17:00:23 +0000 (17:00 +0000)] 
[PATCH 1/2][AArch64] Implement AAPCS64 updates for alignment attribute

gcc/ChangeLog:

* config/aarch64/aarch64.c (aarch64_function_arg_alignment):
Rewrite, looking one level down for records and arrays.

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

9 years agoAdd selftest for pretty-print.c
dmalcolm [Wed, 8 Jun 2016 15:53:56 +0000 (15:53 +0000)] 
Add selftest for pretty-print.c

gcc/ChangeLog:
* pretty-print.c: Include "selftest.h".
(pp_format): Fix comment.
(identifier_to_locale): Likewise.
(selftest::test_basic_printing): New function.
(selftest::assert_pp_format): New function.
(selftest::test_pp_format): New function.
(selftest::pretty_print_c_tests): New function.
* selftest-run-tests.c (selftest::run_tests): Call
selftest::pretty_print_c_tests.
* selftest.h (pretty_print_c_tests): New declaration.

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

9 years ago * invoke.texi (max-loop-headers-insns): Document.
hubicka [Wed, 8 Jun 2016 14:11:51 +0000 (14:11 +0000)] 
* invoke.texi (max-loop-headers-insns): Document.
* params.def (PARAM_MAX_LOOP_HEADER_INSNS): New.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Update comment.
(ch_base::copy_headers): Use PARAM_MAX_LOOP_HEADER_INSNS.

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

9 years ago2016-06-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Jun 2016 13:28:21 +0000 (13:28 +0000)] 
2016-06-08  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68558
* gcc.dg/vect/slp-44.c: New testcase.

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

9 years ago2016-06-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Jun 2016 13:17:41 +0000 (13:17 +0000)] 
2016-06-08  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_load): Remove restrictions
on strided SLP loads and fall back to scalar loads in case
we can't chunk them.

* gcc.dg/vect/slp-43.c: New testcase.

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

9 years ago2016-06-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Jun 2016 13:11:43 +0000 (13:11 +0000)] 
2016-06-08  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71452
* tree-ssa.c (non_rewritable_lvalue_p): Make sure that the
type used for the SSA rewrite has enough precision to cover
the dynamic type of the location.

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

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

9 years ago PR c++/71448
jakub [Wed, 8 Jun 2016 12:57:26 +0000 (12:57 +0000)] 
PR c++/71448
* fold-const.c (fold_comparison): Handle CONSTANT_CLASS_P (base0)
the same as DECL_P (base0) for indirect_base0.  Use equality_code
in one further place.

* g++.dg/torture/pr71448.C: New test.

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

9 years agoRemove word_mode hack for split bitfields
rsandifo [Wed, 8 Jun 2016 12:18:27 +0000 (12:18 +0000)] 
Remove word_mode hack for split bitfields

This patch is effectively reverting a change from 1994.  The reason
I think it's a hack is that store_bit_field_1 is creating a subreg
reference to one word of a field even though it has already proven that
the field spills into the following word.  We then rely on the special
SUBREG handling in store_split_bit_field to ignore the extent of op0 and
look inside the SUBREG_REG regardless.  I don't see any reason why we can't
pass the original op0 to store_split_bit_field instead.

Tested on aarch64-linux-gnu and x86_64-linux-gnu.

gcc/
* expmed.c (store_bit_field_1): Do not restrict a multiword op0
to one word if the field is known to overlap other words.
(extract_bit_field_1): Likewise.
(store_split_bit_field): Remove compensating code.
(extract_split_bit_field): Likewise.

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

9 years agoAdd ChangeLog entry missed in last commit:
cltang [Wed, 8 Jun 2016 11:48:12 +0000 (11:48 +0000)] 
Add ChangeLog entry missed in last commit:
2016-06-03  Chung-Lin Tang  <cltang@codesourcery.com>

libgomp/
* testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
* testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.

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

9 years ago PR debug/71432
bernds [Wed, 8 Jun 2016 11:41:54 +0000 (11:41 +0000)] 
PR debug/71432
PR ada/71413
* tree-ssa-strlen.c (handle_builtin_memcmp): Ignore debug insns.

* g++.dg/debug/pr71432.C: New test.

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

9 years ago2016-06-08 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
prathamesh3492 [Wed, 8 Jun 2016 11:15:17 +0000 (11:15 +0000)] 
2016-06-08  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

* gcc.dg/vect/section-anchors-vect-70.c: Rename to aligned-section-anchors-vect-71.c.
* gcc.dg/vect/section-anchors-vect-71.c: Rename to aligned-section-anchors-vect-72.c.
* gcc.dg/vect/section-anchors-vect-72.c: Rename to aligned-section-anchors-vect-72.c.

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

9 years ago2016-06-08 Richard Biener <rguenther@suse.de>
rguenth [Wed, 8 Jun 2016 10:26:54 +0000 (10:26 +0000)] 
2016-06-08  Richard Biener  <rguenther@suse.de>

* c-common.c (parse_optimize_options): Improve diagnostic messages.

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

9 years ago[AArch64, 6/6] Reimplement vpadd intrinsics & extend rtl patterns to all modes
jiwang [Wed, 8 Jun 2016 10:17:58 +0000 (10:17 +0000)] 
[AArch64, 6/6] Reimplement vpadd intrinsics & extend rtl patterns to all modes

* config/aarch64/aarch64-builtins.def (faddp): New builtins for modes in
VDQF.
* config/aarch64/aarch64-simd.md (aarch64_faddp<mode>): New.
(arch64_addpv4sf): Delete.
(reduc_plus_scal_v4sf): Use "gen_aarch64_faddpv4sf" instead of
"gen_aarch64_addpv4sf".
* config/aarch64/arm_neon.h (vpadd_f32): Remove inline assembly.  Use
builtin.
(vpadds_f32): Likewise.
(vpaddq_f32): Likewise.
(vpaddq_f64): Likewise.

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

9 years ago[AArch64, 5/6] Reimplement fabd intrinsics & merge rtl patterns
jiwang [Wed, 8 Jun 2016 10:16:07 +0000 (10:16 +0000)] 
[AArch64, 5/6] Reimplement fabd intrinsics & merge rtl patterns

* config/aarch64/aarch64-builtins.def (fabd): New builtins for modes
VALLF.
* config/aarch64/aarch64-simd.md (fabd<mode>_3): Extend modes from VDQF
to VALLF.  Rename to "fabd<mode>3".
"*fabd_scalar<mode>3): Delete.
* config/aarch64/arm_neon.h (vabds_f32): Remove inline assembly.
Use builtin.
(vabdd_f64): Likewise.
(vabd_f32): Likewise.
(vabd_f64): Likewise.
(vabdq_f32): Likewise.
(vabdq_f64): Likewise.

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

9 years ago[AArch64, 4/6] Reimplement frsqrts intrinsics
jiwang [Wed, 8 Jun 2016 10:14:30 +0000 (10:14 +0000)] 
[AArch64, 4/6] Reimplement frsqrts intrinsics

* config/aarch64/aarch64-builtins.def (rsqrts): New builtins for modes
VALLF.
* config/aarch64/aarch64-simd.md (aarch64_rsqrts_<mode>3): Rename to
"aarch64_rsqrts<mode>".
* config/aarch64/aarch64.c (get_rsqrts_type): Update gen* name.
* config/aarch64/arm_neon.h (vrsqrtss_f32): Remove inline assembly.  Use
builtin.
(vrsqrtsd_f64): Likewise.
(vrsqrts_f32): Likewise.
(vrsqrts_f64): Likewise.
(vrsqrtsq_f32): Likewise.
(vrsqrtsq_f64): Likewise.

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

9 years ago[AArch64, 3/6] Reimplement frsqrte intrinsics
jiwang [Wed, 8 Jun 2016 10:12:53 +0000 (10:12 +0000)] 
[AArch64, 3/6] Reimplement frsqrte intrinsics

* config/aarch64/aarch64-builtins.def (rsqrte): New builtins for modes
VALLF.
* config/aarch64/aarch64-simd.md (aarch64_rsqrte_<mode>2): Rename to
"aarch64_rsqrte<mode>".
* config/aarch64/aarch64.c (get_rsqrte_type): Update gen* name.
* config/aarch64/arm_neon.h (vrsqrts_f32): Remove inline assembly.  Use
builtin.
(vrsqrted_f64): Likewise.
(vrsqrte_f32): Likewise.
(vrsqrte_f64): Likewise.
(vrsqrteq_f32): Likewise.
(vrsqrteq_f64): Likewise.

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

9 years ago[AArch64, 2/6] Reimplement vector fixed-point intrinsics
jiwang [Wed, 8 Jun 2016 10:11:09 +0000 (10:11 +0000)] 
[AArch64, 2/6] Reimplement vector fixed-point intrinsics

* config/aarch64/aarch64-builtins.def (scvtf): Register vector modes.
(ucvtf): Likewise.
(fcvtzs): Likewise.
(fcvtzu): Likewise.
* config/aarch64/aarch64-simd.md
(<FCVT_F2FIXED:fcvt_fixed_insn><VDQF:mode>3): New.
(<FCVT_FIXED2F:fcvt_fixed_insn><VDQ_SDI:mode>3): Likewise.
* config/aarch64/arm_neon.h (vcvt_n_f32_s32): Remove inline assembly.
Use builtin.
(vcvt_n_f32_u32): Likewise.
(vcvt_n_s32_f32): Likewise.
(vcvt_n_u32_f32): Likewise.
(vcvtq_n_f32_s32): Likewise.
(vcvtq_n_f32_u32): Likewise.
(vcvtq_n_f64_s64): Likewise.
(vcvtq_n_f64_u64): Likewise.
(vcvtq_n_s32_f32): Likewise.
(vcvtq_n_s64_f64): Likewise.
(vcvtq_n_u32_f32): Likewise.
(vcvtq_n_u64_f64): Likewise.
* config/aarch64/iterators.md (VDQ_SDI): New mode iterator.
(VSDQ_SDI): Likewise.
(fcvt_target): Support V4DI, V4SI and V2SI.
(FCVT_TARGET): Likewise.

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

9 years ago[AArch64, 1/6] Reimplement scalar fixed-point intrinsics
jiwang [Wed, 8 Jun 2016 10:07:30 +0000 (10:07 +0000)] 
[AArch64, 1/6] Reimplement scalar fixed-point intrinsics

        * config/aarch64/aarch64-builtins.c (TYPES_BINOP_USS): New
        (TYPES_BINOP_SUS): Likewise.
        (aarch64_simd_builtin_data): Update include file name.
        (aarch64_builtins): Likewise.
        * config/aarch64/aarch64-simd-builtins.def (scvtf): New entries
        for conversion between scalar float-point and fixed-point.
        (ucvtf): Likewise.
        (fcvtzs): Likewise.
        (fcvtzu): Likewise.
        * config/aarch64/aarch64.md
        (<FCVT_F2FIXED:fcvt_fixed_insn><GPF:mode>3: New
        pattern for conversion between scalar float to fixed-pointer.
        (<FCVT_FIXED2F:fcvt_fixed_insn><GPI:mode>: Likewise.
        (UNSPEC_FCVTZS): New UNSPEC enumeration.
        (UNSPEC_FCVTZU): Likewise.
        (UNSPEC_SCVTF): Likewise.
        (UNSPEC_UCVTF): Likewise.
        * config/aarch64/arm_neon.h (vcvtd_n_f64_s64): Remove inline assembly.
Use builtin.
        (vcvtd_n_f64_u64): Likewise.
        (vcvtd_n_s64_f64): Likewise.
        (vcvtd_n_u64_f64): Likewise.
        (vcvtd_n_f32_s32): Likewise.
        (vcvts_n_f32_u32): Likewise.
        (vcvtd_n_s32_f32): Likewise.
        (vcvts_n_u32_f32): Likewise.
        * config/aarch64/iterators.md (fcvt_target): Support integer to float
mapping.
        (FCVT_TARGET): Likewise.
        (FCVT_FIXED2F): New iterator.
        (FCVT_F2FIXED): Likewise.
        (fcvt_fixed_insn): New define_int_attr.

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

9 years ago * predict.c (pass_strip_predict_hints::execute): Cleanup CFG if
hubicka [Wed, 8 Jun 2016 09:39:33 +0000 (09:39 +0000)] 
* predict.c (pass_strip_predict_hints::execute): Cleanup CFG if
some statements was removed.

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

9 years ago2016-06-08 Alan Hayward <alan.hayward@arm.com>
alahay01 [Wed, 8 Jun 2016 08:38:50 +0000 (08:38 +0000)] 
2016-06-08  Alan Hayward  <alan.hayward@arm.com>

gcc/
* tree-vect-data-refs.c (vect_analyze_data_refs): Remove debug newline.
* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): likewise.
(vect_can_advance_ivs_p): likewise.
(vect_update_ivs_after_vectorizer): likewise.
* tree-vect-loop.c (vect_determine_vectorization_factor): likewise.
(vect_analyze_scalar_cycles_1): likewise.
(vect_analyze_loop_operations): likewise.
(report_vect_op): likewise.
(vect_is_slp_reduction): likewise.
(vect_is_simple_reduction): likewise.
(get_initial_def_for_induction): likewise.
(vect_transform_loop): likewise.
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): likewise.
(vect_recog_sad_pattern): likewise.
(vect_recog_widen_sum_pattern): likewise.
(vect_recog_widening_pattern): likewise.
(vect_recog_divmod_pattern): likewise.
* tree-vect-slp.c (vect-build-slp_tree_1): likewise.
(vect_analyze_slp_instance): likewise.
(vect_transform_slp_perm_load): likewise.
(vect_schedule_slp_instance): likewise.

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

9 years ago2016-06-08 Alan Hayward <alan.hayward@arm.com>
alahay01 [Wed, 8 Jun 2016 08:26:38 +0000 (08:26 +0000)] 
2016-06-08  Alan Hayward  <alan.hayward@arm.com>

gcc/testsuite/
* gcc.dg/vect/vect-live-2.c: Update effective target.
* gcc.dg/vect/vect-live-slp-3.c: Likewise.
* lib/target-supports.exp: Add aarch64 to vect_long.

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

9 years ago PR c/71426
mpolacek [Wed, 8 Jun 2016 06:41:55 +0000 (06:41 +0000)] 
PR c/71426
* c-decl.c (get_parm_info): Don't crash on an assert on invalid
code.

* gcc.dg/noncompile/pr71426.c: New test.

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

9 years ago PR c/71418
mpolacek [Wed, 8 Jun 2016 06:39:10 +0000 (06:39 +0000)] 
PR c/71418
* c-decl.c (grokdeclarator): Check TYPE_P.

* gcc.dg/noncompile/pr71418.c: New test.

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

9 years agoDaily bump.
gccadmin [Wed, 8 Jun 2016 00:16:22 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago * predict.c (predict_iv_comparison): Mention that heuristics is broken.
hubicka [Tue, 7 Jun 2016 21:34:27 +0000 (21:34 +0000)] 
* predict.c (predict_iv_comparison): Mention that heuristics is broken.
(return_prediction): PRED_CONST_RETURN predict return as not taken.
* predict.def (PRED_CONTINUE): Change hitrate 50->67
(PRED_LOOP_BRANCH): Document predictor as broken.
(PRED_LOOP_EXIT): Change hitrate 91->92.
(PRED_LOOP_EXTRA_EXIT): Change hitrate 91->83.
(PRED_POINTER, PRED_TREE_POINTER): Change hitrate 85->70.
(PRED_OPCODE_POSITIVE): Change hitrate 79->64.
(PRED_OPCODE_NONEQUAL): Change hitrate 91->66.
(PRED_TREE_OPCODE_POSITIVE): Change hitrate 73->64
(PRED_TREE_OPCODE_NONEQUAL): Chnage hitrate 72->66
(PRED_CALL): Chane hitrate 71->67.
(PRED_TREE_EARLY_RETURN): Document issues, change hitrate 61->54.
(PRED_GOTO): Document as unused right now.
(PRED_CONST_RETURN): Change hitrate 67->69
(PRED_NEGATIVE_RETURN): Change hitrate 96->98
(PRED_NULL_RETURN): Change hitrate 91->90.
(PRED_LOOP_IV_COMPARE_GUESS): Change hitrate to 98.
(PRED_FORTRAN_FAIL_ALLOC): Change hitrate to 62; document issues.
(PRED_FORTRAN_SIZE_ZERO): Change hitrate to 99.
* gcc.dg/ipa/inlinehint-4.c: Disable partial inlining.
* gcc.dg/predict-1.c: Update template for new predictor hitrates.
* gcc.dg/predict-3.c: Update template.
* gcc.dg/predict-5.c: Update template.
* gcc.dg/predict-6.c: Update template.
* gcc.dg/predict-9.c: Update template.
* gcc.dg/predict-9.c: Update template.
* gcc.dg/tree-ssa/attr-hotcold-2.c: Update template.

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

9 years ago2016-06-07 François Dumont <fdumont@gcc.gnu.org>
fdumont [Tue, 7 Jun 2016 20:19:19 +0000 (20:19 +0000)] 
2016-06-07  François Dumont  <fdumont@gcc.gnu.org>

* include/std/tuple (_Head_base<>): Default specialization condition at
type declaration.

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

9 years agoThis patch adds support for the missing versions of the vec_mul altivec
seurer [Tue, 7 Jun 2016 20:18:09 +0000 (20:18 +0000)] 
This patch adds support for the missing versions of the vec_mul altivec
builtins from the Power Architecture 64-Bit ELF V2 ABI OpenPOWER ABI for
Linux Supplement (16 July 2015 Version 1.1). There are many of the builtins
that are missing and this is part of a series of patches to add them.

There aren't instructions for the {un}signed char, {un}signed short, and
{un}signed int versions of vec_mul so the output code is built from other
built-ins and operations that do have instructions.

The new test case is an executable test which verifies that the generated
code produces expected values. C macros were used so that the same
test case could be used for all the various supported types.

Bootstrapped and tested on powerpc64le-unknown-linux-gnu and
powerpc64-unknown-linux-gnu with no regressions. Is this ok for trunk?

[gcc]

2016-06-07  Bill Seurer  <seurer@linux.vnet.ibm.com>

* config/rs6000/altivec.h: Add __builtin_vec_mul.
* config/rs6000/rs6000-builtin.def (vec_mul): Change vec_mul to a
special case Altivec builtin.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Remove
VSX_BUILTIN_VEC_MUL (replaced with special case code).
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Add
code for ALTIVEC_BUILTIN_VEC_MUL.
* config/rs6000/rs6000.c (altivec_init_builtins): Add definition
for __builtin_vec_mul.

[gcc/testsuite]

2016-06-07  Bill Seurer  <seurer@linux.vnet.ibm.com>

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

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

9 years ago * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mhtm and
bergner [Tue, 7 Jun 2016 18:50:04 +0000 (18:50 +0000)] 
* doc/invoke.texi (RS/6000 and PowerPC Options): Document -mhtm and
-mno-htm.

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

9 years agospellcheck.c: add test_find_closest_string
dmalcolm [Tue, 7 Jun 2016 17:33:04 +0000 (17:33 +0000)] 
spellcheck.c: add test_find_closest_string

gcc/ChangeLog:
* spellcheck.c (selftest::test_find_closest_string): New function.
(spellcheck_c_tests): Call the above.

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

9 years ago[simplify-rtx] Fix unused variable warning in simplify_cond_clz_ctz on some targets
ktkachov [Tue, 7 Jun 2016 16:52:20 +0000 (16:52 +0000)] 
[simplify-rtx] Fix unused variable warning in simplify_cond_clz_ctz on some targets

* simplify-rtx.c (simplify_cond_clz_ctz): Delete 'mode' local
variable.

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

9 years agoC: add fixit hint to misspelled field names
dmalcolm [Tue, 7 Jun 2016 15:04:22 +0000 (15:04 +0000)] 
C: add fixit hint to misspelled field names

gcc/c/ChangeLog:
* c-parser.c (c_parser_postfix_expression): In __builtin_offsetof
and structure element reference, capture the location of the
element name token and pass it to build_component_ref.
(c_parser_postfix_expression_after_primary): Likewise for
structure element dereference.
(c_parser_omp_variable_list): Likewise for
OMP_CLAUSE_{_CACHE, MAP, FROM, TO},
* c-tree.h (build_component_ref): Add location_t param.
* c-typeck.c (build_component_ref): Add location_t param
COMPONENT_LOC.  Use it, if available, when issuing hints about
mispelled member names to provide a fixit replacement hint.

gcc/objc/ChangeLog:
* objc-act.c (objc_build_component_ref): Update call
to build_component_ref for added param, passing UNKNOWN_LOCATION.

gcc/testsuite/ChangeLog:
* gcc.dg/spellcheck-fields-2.c: New test case.

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

9 years ago * config/i386/sse.md (avx_vec_concat<mode>): Add v=v,vm and
jakub [Tue, 7 Jun 2016 13:00:03 +0000 (13:00 +0000)] 
* config/i386/sse.md (avx_vec_concat<mode>): Add v=v,vm and
Yv=Yv,C alternatives.

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

9 years ago2016-06-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 Jun 2016 12:41:46 +0000 (12:41 +0000)] 
2016-06-07  Richard Biener  <rguenther@suse.de>

PR c/61564
* c-common.c (parse_optimize_options): Only apply CL_OPTIMIZATION
options and warn about others.
* common.opt (ffast-math): Make Optimization.

* gcc.dg/Wpragmas-1.c: New testcase.
* gcc.dg/Wattributes-4.c: Likewise.
* gcc.dg/ipa/pr70646.c: Drop optimize pragma in favor of dg-option
entry.

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

9 years ago[MIPS] P5600 scheduler fix
rts [Tue, 7 Jun 2016 11:56:43 +0000 (11:56 +0000)] 
[MIPS] P5600 scheduler fix

gcc/
* config/mips/p5600.md (p5600_fpu_fadd): Remove checking for
`fabs' and `fneg' type attributes.
(p5600_fpu_fabs): Add `fmove' to the comment.

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

9 years ago * gimple.c: Include builtins.h
hubicka [Tue, 7 Jun 2016 11:22:26 +0000 (11:22 +0000)] 
* gimple.c: Include builtins.h
(gimple_inexpensive_call_p): New function.
* gimple.h (gimple_inexpensive_call_p): Declare.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Use it.
* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Likewise;
fix formatting.

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

9 years ago* gcc.target/aarch64/advsimd-intrinsics/p64_p128.c: Remove spurious debug code.
clyon [Tue, 7 Jun 2016 10:29:55 +0000 (10:29 +0000)] 
* gcc.target/aarch64/advsimd-intrinsics/p64_p128.c: Remove spurious debug code.

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

9 years agoRemove wrong testsuite and gcc/testsuite prefixes from gcc/testsuite/ChangeLog.
ro [Tue, 7 Jun 2016 09:24:21 +0000 (09:24 +0000)] 
Remove wrong testsuite and gcc/testsuite prefixes from gcc/testsuite/ChangeLog.

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

9 years agoUpdate copyright dates
ro [Tue, 7 Jun 2016 08:54:22 +0000 (08:54 +0000)] 
Update copyright dates

libcc1:
Update copyrights.

gotools:
Update copyrights.

contrib:
* update-copyright.py (LibMudflapFilter): Remove.
(GCCCmdLine.__init__): Add gotools, libcc1.
Remove libmudflap.
List unhandled intl, libcilkrts, libgo, liboffloadmic,
maintainer-scripts.

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

9 years ago2016-06-07 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 7 Jun 2016 07:36:02 +0000 (07:36 +0000)] 
2016-06-07  Paolo Carlini  <paolo.carlini@oracle.com>

* diagnostic.c (diagnostic_impl, diagnostic_n_impl): New.
(inform, inform_at_rich_loc, inform_n, warning, warning_at,
warning_at_rich_loc, warning_n, pedwarn, permerror,
permerror_at_rich_loc, error, error_n, error_at, error_at_rich_loc,
sorry, fatal_error, internal_error, internal_error_no_backtrace):
Use the above.

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

9 years ago2016-06-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 Jun 2016 07:31:40 +0000 (07:31 +0000)] 
2016-06-07  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71428
* tree-ssa-math-opts.c (perform_symbolic_merge): Properly distinguish
BIT_FIELD_REF op vs. load.

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

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

9 years ago2016-06-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 Jun 2016 07:30:47 +0000 (07:30 +0000)] 
2016-06-07  Richard Biener  <rguenther@suse.de>

PR middle-end/71423
* match.pd ((X | ~Y) -> Y <= X): Properly invert the comparison
for signed ops.

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

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

9 years ago * config/pa/pa.md (call): Generate indirect long calls to non-local
danglin [Tue, 7 Jun 2016 01:56:01 +0000 (01:56 +0000)] 
* config/pa/pa.md (call): Generate indirect long calls to non-local
functions on TARGET_64BIT.
(call_value): Likewise.

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

9 years ago * config/pa/pa.md (call_val_reg_64bit): Remove "reg: DI " clobber from
danglin [Tue, 7 Jun 2016 01:43:14 +0000 (01:43 +0000)] 
* config/pa/pa.md (call_val_reg_64bit): Remove "reg: DI " clobber from
pattern and subsequent splitters.
(call_val_reg_64bit_post_reload): Likewise.

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

9 years agoDaily bump.
gccadmin [Tue, 7 Jun 2016 00:16:21 +0000 (00:16 +0000)] 
Daily bump.

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

9 years agogcc/ChangeLog:
kugan [Mon, 6 Jun 2016 23:46:11 +0000 (23:46 +0000)] 
gcc/ChangeLog:

2016-06-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

PR middle-end/71408
* tree-ssa-reassoc.c (zero_one_operation): Fix NEGATE_EXPR operand for
propagate_op_to_single_use.

gcc/testsuite/ChangeLog:

2016-06-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

PR middle-end/71408
* gcc.dg/tree-ssa/pr71408.c: New test.

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

9 years agogcc/ChangeLog:
kugan [Mon, 6 Jun 2016 23:41:26 +0000 (23:41 +0000)] 
gcc/ChangeLog:

2016-06-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

PR middle-end/71281
* tree-ssa-reassoc.c (reassociate_bb): Set uid for negate stmt.

gcc/testsuite/ChangeLog:

2016-06-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

PR middle-end/71281
* g++.dg/torture/pr71281.C: New test.

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

9 years ago * config/i386/i386.h (enum ix86_enitity): Add X86_DIRFLAG.
uros [Mon, 6 Jun 2016 22:35:18 +0000 (22:35 +0000)] 
* config/i386/i386.h (enum ix86_enitity): Add X86_DIRFLAG.
(enum x86_dirflag_state): New enum.
(NUM_MODES_FOR_MODE_SWITCHING): Add X86_DIRFLAG_ANY.
(machine_function): Remove needs_cld.
(ix86_current_function_needs_cld): Remove.
* config/i386/i386.c (ix86_set_func_type): Set
ix86_optimize_mode_switching[X86_DIRFLAG] to 1.
(ix86_expand_prologue): Do not emit CLD here.
(ix86_dirflag_mode_needed): New function.
(ix86_dirflag_mode_entry): Ditto.
(ix86_mode_needed): Handle X86_DIRFLAG entity.
(ix86_mode_after): Ditto.
(ix86_mode_entry): Ditto.
(ix86_mode_exit): Ditto.
(ix86_emit_mode_set): Ditto.
* config/i386/i386.md (strmov_singleop): Set
ix86_optimize_mode_switching[X86_DIRFLAG] to 1 for TARGET_CLD.
Do not set ix86_current_function_needs_cld.
(rep_mov): Ditto.
(strset_singleop): Ditto.
(rep_stos): Ditto.
(cmpstrnqi_nz_1): Ditto.
(cmpstrnqi_1): Ditto.
(strlenqi_1): Ditto.

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

9 years ago PR c/71362
mpolacek [Mon, 6 Jun 2016 21:15:07 +0000 (21:15 +0000)] 
PR c/71362
* c-parser.c (c_parser_direct_declarator): Set location.

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

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

9 years ago PR c++/70847
jakub [Mon, 6 Jun 2016 19:48:22 +0000 (19:48 +0000)] 
PR c++/70847
PR c++/71330
PR c++/71393
* cp-gimplify.c (cp_fold_r): Set *walk_subtrees = 0 and return NULL
right after cp_fold call if cp_fold has returned the same stmt
already in some earlier cp_fold_r call.
(cp_fold_function): Add pset automatic variable, pass its address
to cp_walk_tree.

* g++.dg/opt/pr70847.C: New test.
* g++.dg/ubsan/pr70847.C: New test.
* g++.dg/ubsan/pr71393.C: New test.

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

9 years ago PR tree-optimization/71259
jakub [Mon, 6 Jun 2016 18:35:03 +0000 (18:35 +0000)] 
PR tree-optimization/71259
* tree-vect-slp.c (vect_get_constant_vectors): For
VECTOR_BOOLEAN_TYPE_P, return all ones constant instead of
one for constant op, and use COND_EXPR for non-constant.

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

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

9 years ago * fr.po: Update.
jsm28 [Mon, 6 Jun 2016 17:39:12 +0000 (17:39 +0000)] 
* fr.po: Update.

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

9 years agoSelftest framework
dmalcolm [Mon, 6 Jun 2016 17:11:30 +0000 (17:11 +0000)] 
Selftest framework

gcc/ChangeLog:
* Makefile.in (OBJS): Add function-tests.o,
hash-map-tests.o, hash-set-tests.o, rtl-tests.o,
selftest-run-tests.o.
(OBJS-libcommon): Add selftest.o.
(OBJS-libcommon-target): Add selftest.o.
(all.internal): Add "selftest".
(all.cross): Likewise.
(selftest): New phony target.
(s-selftest): New target.
(selftest-gdb): New phony target.
(COLLECT2_OBJS): Add selftest.o.
* bitmap.c: Include "selftest.h".
(selftest::test_gc_alloc): New function.
(selftest::test_set_range): New function.
(selftest::test_clear_bit_in_middle): New function.
(selftest::test_copying): New function.
(selftest::test_bitmap_single_bit_set_p): New function.
(selftest::bitmap_c_tests): New function.
* common.opt (fself-test): New.
* diagnostic-show-locus.c: Include "selftest.h".
(make_range): New function.
(test_range_contains_point_for_single_point): New function.
(test_range_contains_point_for_single_line): New function.
(test_range_contains_point_for_multiple_lines): New function.
(assert_eq): New function.
(test_get_line_width_without_trailing_whitespace): New function.
(selftest::diagnostic_show_locus_c_tests): New function.
* et-forest.c: Include "selftest.h".
(selftest::test_single_node): New function.
(selftest::test_simple_tree): New function.
(selftest::test_disconnected_nodes): New function.
(selftest::et_forest_c_tests): New function.
* fold-const.c: Include "selftest.h".
(selftest::assert_binop_folds_to_const): New function.
(selftest::assert_binop_folds_to_nonlvalue): New function.
(selftest::test_arithmetic_folding): New function.
(selftest::fold_const_c_tests): New function.
* function-tests.c: New file.
* gimple.c: Include "selftest.h".
Include "gimple-pretty-print.h".
(selftest::verify_gimple_pp): New function.
(selftest::test_assign_single): New function.
(selftest::test_assign_binop): New function.
(selftest::test_nop_stmt): New function.
(selftest::test_return_stmt): New function.
(selftest::test_return_without_value): New function.
(selftest::gimple_c_tests): New function.
* hash-map-tests.c: New file.
* hash-set-tests.c: New file.
* input.c: Include "selftest.h".
(selftest::assert_loceq): New function.
(selftest::test_accessing_ordinary_linemaps): New function.
(selftest::test_unknown_location): New function.
(selftest::test_builtins): New function.
(selftest::test_reading_source_line): New function.
(selftest::input_c_tests): New function.
* rtl-tests.c: New file.
* selftest-run-tests.c: New file.
* selftest.c: New file.
* selftest.h: New file.
* spellcheck.c: Include "selftest.h".
(selftest::levenshtein_distance_unit_test_oneway): New function,
adapted from testsuite/gcc.dg/plugin/levenshtein_plugin.c.
(selftest::levenshtein_distance_unit_test): Likewise.
(selftest::spellcheck_c_tests): Likewise.
* toplev.c: Include selftest.h.
(toplev::run_self_tests): New.
(toplev::main): Handle -fself-test.
* toplev.h (toplev::run_self_tests): New.
* tree.c: Include "selftest.h".
(selftest::test_integer_constants): New function.
(selftest::test_identifiers): New function.
(selftest::test_labels): New function.
(selftest::tree_c_tests): New function.
* tree-cfg.c: Include "selftest.h".
(selftest::push_fndecl): New function.
(selftest::test_linear_chain): New function.
(selftest::test_diamond): New function.
(selftest::test_fully_connected): New function.
(selftest::tree_cfg_c_tests): New function.
* vec.c: Include "selftest.h".
(selftest::safe_push_range): New function.
(selftest::test_quick_push): New function.
(selftest::test_safe_push): New function.
(selftest::test_truncate): New function.
(selftest::test_safe_grow_cleared): New function.
(selftest::test_pop): New function.
(selftest::test_safe_insert): New function.
(selftest::test_ordered_remove): New function.
(selftest::test_unordered_remove): New function.
(selftest::test_block_remove): New function.
(selftest::reverse_cmp): New function.
(selftest::test_qsort): New function.
(selftest::vec_c_tests): New function.c.
* wide-int.cc: Include selftest.h and wide-int-print.h.
(selftest::from_int <wide_int>): New function.
(selftest::from_int <offset_int>): New function.
(selftest::from_int <widest_int>): New function.
(selftest::assert_deceq): New function.
(selftest::assert_hexeq): New function.
(selftest::test_printing <VALUE_TYPE>): New function template.
(selftest::test_ops <VALUE_TYPE>): New function template.
(selftest::test_comparisons <VALUE_TYPE>): New function template.
(selftest::run_all_wide_int_tests <VALUE_TYPE>): New function
template.
(selftest::wide_int_cc_tests): New function.

gcc/testsuite/ChangeLog:
* gcc.dg/plugin/levenshtein-test-1.c: Delete.
* gcc.dg/plugin/levenshtein_plugin.c: Delete.
* gcc.dg/plugin/plugin.exp (plugin_test_list): Remove the
above.

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

9 years ago Support allocators in tuples of zero size.
ville [Mon, 6 Jun 2016 16:28:59 +0000 (16:28 +0000)] 
Support allocators in tuples of zero size.
* include/std/tuple (tuple<>::tuple(),
tuple<>::tuple(allocator_arg_t, const _Alloc&),
tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
* testsuite/20_util/tuple/cons/allocators.cc: Adjust.

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

9 years ago[3/3][RTL ifcvt] PR middle-end/37780: Conditional expression with __builtin_clz(...
ktkachov [Mon, 6 Jun 2016 16:06:05 +0000 (16:06 +0000)] 
[3/3][RTL ifcvt] PR middle-end/37780: Conditional expression with __builtin_clz() should be optimized out

PR middle-end/37780
* ifcvt.c (noce_try_ifelse_collapse): New function.
Declare prototype.
(noce_process_if_block): Call noce_try_ifelse_collapse.
* simplify-rtx.c (simplify_cond_clz_ctz): New function.
(simplify_ternary_operation): Use the above to simplify
conditional CLZ/CTZ expressions.

* gcc.c-torture/execute/pr37780.c: New test.
* gcc.target/aarch64/pr37780_1.c: Likewise.
* gcc.target/arm/pr37780_1.c: Likewise.

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

9 years ago[2/3][AArch64] Keep CTZ components together until after reload
ktkachov [Mon, 6 Jun 2016 16:01:47 +0000 (16:01 +0000)] 
[2/3][AArch64] Keep CTZ components together until after reload

PR middle-end/37780
* config/aarch64/aarch64.md (ctz<mode>2): Convert to
define_insn_and_split.

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

9 years ago[1/3][ARM] Keep ctz expressions together until after reload
ktkachov [Mon, 6 Jun 2016 15:59:48 +0000 (15:59 +0000)] 
[1/3][ARM] Keep ctz expressions together until after reload

PR middle-end/37780
* config/arm/arm.md (ctzsi2): Convert to define_insn_and_split.

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

9 years ago * c-typeck.c (comptypes_internal): Handle comparisons of
mpolacek [Mon, 6 Jun 2016 15:50:23 +0000 (15:50 +0000)] 
* c-typeck.c (comptypes_internal): Handle comparisons of
INTEGER_TYPE, FIXED_POINT_TYPE, and REAL_TYPE nodes.  Don't check
TYPE_REF_CAN_ALIAS_ALL.

* c-c++-common/attr-may-alias-1.c: New test.
* c-c++-common/attr-may-alias-2.c: New test.
* gcc.dg/pr39464.c: Turn dg-warning into dg-bogus.

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

9 years agolibstdc++/71320 Add or remove file permissions correctly
redi [Mon, 6 Jun 2016 15:50:01 +0000 (15:50 +0000)] 
libstdc++/71320 Add or remove file permissions correctly

PR libstdc++/71320
* src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
Add or remove permissions according to perms argument.
* testsuite/experimental/filesystem/operations/permissions.cc: New
test.

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

9 years ago PR libgcc/71400
nathan [Mon, 6 Jun 2016 15:24:24 +0000 (15:24 +0000)] 
PR libgcc/71400
* libgcov-driver-system.c (__gcov_error_file): Disable if IN_GCOV_TOOL.
(get_gcov_error_file): Check __gcov_error_file before trying to
initialize it.
(gcov_error): Always use get_gcov_error_file.

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

9 years agogcc/
edlinger [Mon, 6 Jun 2016 12:31:59 +0000 (12:31 +0000)] 
gcc/
2016-06-06  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR c/24414
        * cfgexpand.c (expand_asm_loc): Remove handling for ADDR_EXPR.
        Implicitly clobber memory for basic asm with non-empty assembler
        string.  Use targetm.md_asm_adjust also here.
        * compare-elim.c (arithmetic_flags_clobber_p): Use asm_noperands here.
        * final.c (final_scan_insn): Handle basic asm in PARALLEL block.
        * gimple.c (gimple_asm_clobbers_memory_p): Handle basic asm with
        non-empty assembler string.
        * ira.c (compute_regs_asm_clobbered): Use asm_noperands here.
        * recog.c (asm_noperands): Handle basic asm in PARALLEL block.
        (decode_asm_operands): Handle basic asm in PARALLEL block.
        (extract_insn): Handle basic asm in PARALLEL block.
        * doc/extend.texi: Mention new behavior of basic asm.
        * config/ia64/ia64 (rtx_needs_barrier): Handle ASM_INPUT here.
        * config/pa/pa.c (branch_to_delay_slot_p, branch_needs_nop_p,
        branch_needs_nop_p): Use asm_noperands.

gcc/testsuite/
2016-06-06  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR c/24414
        * gcc.target/i386/pr24414.c: New test.

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

9 years agosparc: support for the SPARC M7 and VIS 4.0
jemarch [Mon, 6 Jun 2016 11:40:02 +0000 (11:40 +0000)] 
sparc: support for the SPARC M7 and VIS 4.0

gcc/ChangeLog:

2016-06-06  Jose E. Marchesi  <jose.marchesi@oracle.com>

     * config/sparc/sparc.md (cpu): Add niagara7 cpu type.
     Include the M7 SPARC DFA scheduler.
     New attribute v3pipe.
     Annotate insns with v3pipe where appropriate.
     Define cpu_feature vis4.
     Add lzd instruction type and set it on clzdi_sp64 and clzsi_sp64.
     Add (V8QI "8") to vbits.
     Add insns {add,sub}v8qi3
     Add insns ss{add,sub}v8qi3
     Add insns us{add,sub}{v8qi,v4hi}3
     Add insns {min,max}{v8qi,v4hi,v2si}3
     Add insns {minu,maxu}{v8qi,v4hi,v2si}3
     Add insns fpcmp{le,gt,ule,ug,ule,ugt}{8,16,32}_vis.
     * config/sparc/niagara4.md: Add a comment explaining the
     discrepancy between the documented latenty numbers and the
     implemented ones.
     * config/sparc/niagara7.md: New file.
     * configure.ac (HAVE_AS_SPARC5_VIS4): Define if the assembler
     supports SPARC5 and VIS 4.0 instructions.
     * configure: Regenerate.
     * config.in: Likewise.
     * config.gcc: niagara7 is a supported cpu in sparc*-*-* targets.
     * config/sparc/sol2.h (ASM_CPU32_DEFAUILT_SPEC): Set for
     TARGET_CPU_niagara7.
     (ASM_CPU64_DEFAULT_SPEC): Likewise.
     (CPP_CPU_SPEC): Handle niagara7.
     (ASM_CPU_SPEC): Likewise.
     * config/sparc/sparc-opts.h (processor_type): Add
     PROCESSOR_NIAGARA7.
     (mvis4): New option.
     * config/sparc/sparc.h (TARGET_CPU_niagara7): Define.
     (AS_NIAGARA7_FLAG): Define.
     (ASM_CPU64_DEFAULT_SPEC): Set for niagara7.
     (CPP_CPU64_DEFAULT_SPEC): Likewise.
     (CPP_CPU_SPEC): Handle niagara7.
     (ASM_CPU_SPEC): Likewise.
     * config/sparc/sparc.c (niagara7_costs): Define.
     (sparc_option_override): Handle niagara7 and adjust cache-related
     parameters with better values for niagara cpus.  Also support VIS4.
     (sparc32_initialize_trampoline): Likewise.
     (sparc_use_sched_lookahead): Likewise.
     (sparc_issue_rate): Likewise.
     (sparc_register_move_cost): Likewise.
     (dump_target_flag_bits): Support VIS4.
     (sparc_vis_init_builtins): Likewise.
     (sparc_builtins): Likewise.
     * config/sparc/sparc-c.c (sparc_target_macros): Define __VIS__ for
     VIS4 4.0.
     * config/sparc/driver-sparc.c (cpu_names): Add SPARC-M7 and
     UltraSparc M7.
     * config/sparc/sparc.opt (sparc_processor_type): New value
     niagara7.
     * config/sparc/visintrin.h (__attribute__): Prototypes for the
     VIS4 builtins.
     * doc/invoke.texi (SPARC Options): Document -mcpu=niagara7 and
     -mvis4.
     * doc/extend.texi (SPARC VIS Built-in Functions): Document the
     VIS4 builtins.

gcc/testsuite/ChangeLog:

2016-06-06  Jose E. Marchesi  <jose.marchesi@oracle.com>

     * gcc.target/sparc/vis4misc.c: New file.
     * gcc.target/sparc/fpcmp.c: Likewise.
     * gcc.target/sparc/fpcmpu.c: Likewise.

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

9 years ago * doc/sourcebuild.texi (Directives): Remove extra closing braces.
redi [Mon, 6 Jun 2016 10:14:43 +0000 (10:14 +0000)] 
* doc/sourcebuild.texi (Directives): Remove extra closing braces.

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

9 years ago * gcc-interface/decl.c (Gigi_Equivalent_Type): Make sure equivalent
ebotcazou [Mon, 6 Jun 2016 10:03:14 +0000 (10:03 +0000)] 
* gcc-interface/decl.c (Gigi_Equivalent_Type): Make sure equivalent
types are present before returning them.  Remove final assertion.
(gnat_to_gnu_entity) <E_Access_Protected_Subprogram_Type>: Adjust to
above change.
<E_Protected_Type>: Likewise.

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

9 years ago * gcc-interface/trans.c (elaborate_all_entities_for_package): Also do
ebotcazou [Mon, 6 Jun 2016 09:55:44 +0000 (09:55 +0000)] 
* gcc-interface/trans.c (elaborate_all_entities_for_package): Also do
not elaborate Itypes.

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

9 years ago * gcc-interface/utils.c (gnat_internal_attribute_table): Add support
ebotcazou [Mon, 6 Jun 2016 09:51:33 +0000 (09:51 +0000)] 
* gcc-interface/utils.c (gnat_internal_attribute_table): Add support
for noinline and noclone attributes.
(handle_noinline_attribute): New handler.
(handle_noclone_attribute): Likewise.

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

9 years ago * gcc-interface/trans.c (process_type): Beef up comment.
ebotcazou [Mon, 6 Jun 2016 09:47:17 +0000 (09:47 +0000)] 
* gcc-interface/trans.c (process_type): Beef up comment.

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

9 years ago * gcc-interface/utils2.c (build_call_alloc_dealloc): Do not substitute
ebotcazou [Mon, 6 Jun 2016 09:44:11 +0000 (09:44 +0000)] 
* gcc-interface/utils2.c (build_call_alloc_dealloc): Do not substitute
placeholder expressions here but...
* gcc-interface/trans.c (gnat_to_gnu) <N_Free_Statement>: ...here.
Make an exception to the protection of a CALL_EXPR result with an
unconstrained type only in the same cases as Call_to_gnu.

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

9 years ago * gcc-interface/trans.c (gnat_to_gnu): Rework special code dealing
ebotcazou [Mon, 6 Jun 2016 09:31:13 +0000 (09:31 +0000)] 
* gcc-interface/trans.c (gnat_to_gnu): Rework special code dealing
with boolean rvalues and set the location directly.  Do not set the
location in the other cases for a simple name.
(gnat_to_gnu_external): Clear the location on the expression.

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

9 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Component>: Remove
ebotcazou [Mon, 6 Jun 2016 09:26:07 +0000 (09:26 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Component>: Remove
useless 'else' statements and tidy up.
<E_Array_Subtype>: Fully deal with the declaration here.
<E_Incomplete_Type>: Use properly-typed constant.
Assert that we don't apply the special type treatment to dummy types.
Separate this treatment from the final back-annotation and simplify
the condition for the RM size.
(gnat_to_gnu_param): Add GNU_PARAM_TYPE parameter and adjust.
(gnat_to_gnu_subprog_type): Ajust call to gnat_to_gnu_param.
* gcc-interface/trans.c (gnat_to_gnu) <N_Subprogram_Declaration>: Add
comment.
(process_freeze_entity): Remove obsolete code.
(process_type): Minor tweaks.

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

9 years ago * einfo.ads (Returns_Limited_View): Remove.
ebotcazou [Mon, 6 Jun 2016 09:18:41 +0000 (09:18 +0000)] 
* einfo.ads (Returns_Limited_View): Remove.
(Set_Returns_Limited_View ): Likewise.
* einfo.adb (Returns_Limited_View): Likewise.
(Set_Returns_Limited_View ): Likewise.
* freeze.adb (Late_Freeze_Subprogram): Remove.
(Freeze_Entity): Do not defer the freezing of functions returning an
incomplete type coming from a limited context.

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

9 years ago2016-06-06 Alan Hayward <alan.hayward@arm.com>
alahay01 [Mon, 6 Jun 2016 09:15:23 +0000 (09:15 +0000)] 
2016-06-06  Alan Hayward  <alan.hayward@arm.com>

testsuite/
* gcc.dg/vect/vect-live-1.c: Use additional-options.
* gcc.dg/vect/vect-live-3.c: Likewise.

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

9 years ago * gcc-interface/gigi.h (finish_subprog_decl): Add ASM_NAME parameter.
ebotcazou [Mon, 6 Jun 2016 09:08:56 +0000 (09:08 +0000)] 
* gcc-interface/gigi.h (finish_subprog_decl): Add ASM_NAME parameter.
* gcc-interface/decl.c (gnu_ext_name_for_subprog): New function.
(gnat_to_gnu_entity) <E_Subprogram_Type>: Do not check compatibility
of profiles for builtins here...  Call gnu_ext_name_for_subprog.
Also update profiles if pointers to limited_with'ed types are
updated.
(gnat_to_gnu_param): Restore the correct source location information
for vector ABI warnings.
(associate_subprog_with_dummy_type): Add comment about AI05-019.
Set TYPE_DUMMY_IN_PROFILE_P flag unconditionally.
(update_profile): Deal with builtin declarations.
Call gnu_ext_name_for_subprog.  Adjust call to finish_subprog_decl.
(update_profiles_with): Add comment.
(gnat_to_gnu_subprog_type): Reuse the return type if it is complete.
Likewise for parameter declarations in most cases.  Do not change
the return type for the CICO mechanism if the profile is incomplete.
...but here instead.  Always reset the slot for the parameters.
* gcc-interface/utils.c (create_subprog_decl): Call
gnu_ext_name_for_subprog.  Do not set the assembler name here but...
(finish_subprog_decl): ...but here instead.  Add ASM_NAME parameter.

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

9 years ago * exp_ch9.adb (Expand_N_Protected_Type_Declaration): Insert the
ebotcazou [Mon, 6 Jun 2016 08:46:33 +0000 (08:46 +0000)] 
* exp_ch9.adb (Expand_N_Protected_Type_Declaration): Insert the
declaration of the corresponding record type before that of the
unprotected version of the subprograms that operate on it.
(Expand_Access_Protected_Subprogram_Type): Declare the Equivalent_Type
just before the original type.
* sem_ch3.adb (Handle_Late_Controlled_Primitive): Point the current
declaration to the newly created declaration for the primitive.
(Analyze_Subtype_Declaration): Remove obsolete code forcing the
freezing of the subtype before its declaration.
(Replace_Anonymous_Access_To_Protected_Subprogram): Insert the new
declaration in the nearest enclosing scope for formal parameters too.
(Build_Derived_Access_Type): Restore the status of the created Itype
after it is erased by Copy_Node.
* sem_ch6.adb (Exchange_Limited_Views): Remove guard on entry.
(Analyze_Subprogram_Body_Helper): Call Exchange_Limited_Views only if
the specification is present.
Move around the code changing the designated view of the return type
and save the original view.  Restore it on exit.
* sem_ch13.adb (Build_Predicate_Function_Declaration): Always insert
the declaration right after that of the type.

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

9 years ago2016-06-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 Jun 2016 06:55:19 +0000 (06:55 +0000)] 
2016-06-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71398
* tree-ssa-loop-ivcanon.c (unloop_loops): First unloop, then
remove edges.

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

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

9 years ago[gcc]
jamesbowman [Mon, 6 Jun 2016 02:31:42 +0000 (02:31 +0000)] 
[gcc]
   * config/ft32/ft32.c (ft32_setup_incoming_varargs,
   ft32_expand_prolog, ft32_expand_epilogue):
   Handle pretend_args.
   * config/ft32/ft32.h: Remove OUTGOING_REG_PARM_STACK_SPACE.
   * config/ft32/ft32.md: Add pretend_returner.

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

9 years agoDaily bump.
gccadmin [Mon, 6 Jun 2016 00:16:25 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago PR target/71389
uros [Sun, 5 Jun 2016 22:55:35 +0000 (22:55 +0000)] 
PR target/71389
* config/i386/i386.c (ix86_avx256_split_vector_move_misalign):
Copy op1 RTX to avoid invalid sharing.
(ix86_expand_vector_move_misalign): Ditto.

testsuite/ChangeLog:

PR target/71389
* g++.dg/pr71389.C: New test.

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

9 years ago * expr.c (move_by_pieces_d::generate): Mark mode parameter with
danglin [Sun, 5 Jun 2016 20:42:40 +0000 (20:42 +0000)] 
* expr.c (move_by_pieces_d::generate): Mark mode parameter with
ATTRIBUTE_UNUSED.

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

9 years ago2016-06-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 5 Jun 2016 19:58:38 +0000 (19:58 +0000)] 
2016-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/71404
* gfortran.dg/fmt_read_5.f: New test.

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

9 years ago2016-06-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 5 Jun 2016 19:49:59 +0000 (19:49 +0000)] 
2016-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/71404
* io.c (match_io): For READ, commit in pending symbols in the
current statement before trying to match an expression so that
if the match fails and we undo symbols we dont toss good symbols.

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

9 years ago Protect allocator-overloads of tuple-from-tuple constructors
ville [Sun, 5 Jun 2016 17:39:10 +0000 (17:39 +0000)] 
Protect allocator-overloads of tuple-from-tuple constructors
from cases that would create dangling references.
* include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
  const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
  tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
* testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.

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

9 years agogcc/testsuite/ChangeLog:
vehre [Sun, 5 Jun 2016 17:20:54 +0000 (17:20 +0000)] 
gcc/testsuite/ChangeLog:

2016-06-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/69659
* gfortran.dg/class_array_22.f03: New test.

gcc/fortran/ChangeLog:

2016-06-05  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/69659
* trans-array.c (gfc_trans_dummy_array_bias): For class arrays use
the address of the _data component to reference the arrays data
component.

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

9 years ago * gcc.dg/tree-prof/peel-1.c: Fix testcase.
hubicka [Sun, 5 Jun 2016 16:46:38 +0000 (16:46 +0000)] 
* gcc.dg/tree-prof/peel-1.c: Fix testcase.

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

9 years ago * predict.c (predicted_by_loop_heuristics_p): New function.
hubicka [Sun, 5 Jun 2016 16:43:19 +0000 (16:43 +0000)] 
* predict.c (predicted_by_loop_heuristics_p): New function.
(predict_iv_comparison): Use it.
(predict_loops): Walk from innermost loops; do not predict edges
leaving multiple loops multiple times; implement
PRED_LOOP_ITERATIONS_MAX heuristics.
* predict.def (PRED_LOOP_ITERATIONS_MAX): New predictor.
* gcc.dg/predict-9.c: Update template.

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

9 years ago * cfg.c (check_bb_profile): Do not report mismatched profiles when
hubicka [Sun, 5 Jun 2016 16:38:12 +0000 (16:38 +0000)] 
* cfg.c (check_bb_profile): Do not report mismatched profiles when
only edges out of BB are EH edges.

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

9 years ago2016-06-05 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 5 Jun 2016 15:08:22 +0000 (15:08 +0000)] 
2016-06-05  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/49377
* g++.dg/template/pr49377.C: New.

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

9 years agoDaily bump.
gccadmin [Sun, 5 Jun 2016 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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