ebotcazou [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.
* gcc-interface/trans.c (node_is_atomic): Return true if the prefix
denotes an entity which Has_Atomic_Components.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233485
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 17 Feb 2016 09:08:09 +0000 (09:08 +0000)]
* gcc-interface/utils2.c (gnat_protect_expr): Make a SAVE_EXPR only
for fat pointer or scalar types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233484
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Wed, 17 Feb 2016 03:33:02 +0000 (03:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233482
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 17 Feb 2016 00:50:23 +0000 (00:50 +0000)]
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 .
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233481
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 17 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233480
138bc75d-0d04-0410-961f-
82ee72b054a4
kelvin [Tue, 16 Feb 2016 23:12:19 +0000 (23:12 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233477
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Tue, 16 Feb 2016 21:10:00 +0000 (21:10 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233474
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 16 Feb 2016 20:46:17 +0000 (20:46 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233472
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 16 Feb 2016 19:01:49 +0000 (19:01 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233470
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 16 Feb 2016 18:01:04 +0000 (18:01 +0000)]
* 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
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233469
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 16 Feb 2016 17:51:56 +0000 (17:51 +0000)]
* gcc-interface/misc.c (gnat_enum_underlying_base_type): New function.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define to above.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233467
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233463
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233462
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233461
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233460
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 16 Feb 2016 15:34:07 +0000 (15:34 +0000)]
PR middle-end/69801
* gcc.dg/pr69801.c: Add empty dg-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233459
138bc75d-0d04-0410-961f-
82ee72b054a4
jnorris [Tue, 16 Feb 2016 15:29:04 +0000 (15:29 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233458
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 16 Feb 2016 15:16:48 +0000 (15:16 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233457
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 16 Feb 2016 15:15:40 +0000 (15:15 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233456
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 16 Feb 2016 15:00:45 +0000 (15:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233453
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233452
138bc75d-0d04-0410-961f-
82ee72b054a4
claziss [Tue, 16 Feb 2016 14:11:24 +0000 (14:11 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233451
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 16 Feb 2016 10:53:08 +0000 (10:53 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233448
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233447
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 16 Feb 2016 09:12:37 +0000 (09:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233446
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 16 Feb 2016 09:00:32 +0000 (09:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233445
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 16 Feb 2016 08:39:22 +0000 (08:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233444
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 16 Feb 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233441
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Mon, 15 Feb 2016 23:29:17 +0000 (23:29 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233438
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Mon, 15 Feb 2016 23:20:26 +0000 (23:20 +0000)]
* sv.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233437
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Mon, 15 Feb 2016 22:31:13 +0000 (22:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233436
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 15 Feb 2016 22:05:12 +0000 (22:05 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233435
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 15 Feb 2016 21:30:50 +0000 (21:30 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233434
138bc75d-0d04-0410-961f-
82ee72b054a4
evandro [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233432
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 15 Feb 2016 21:14:05 +0000 (21:14 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233431
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 15 Feb 2016 21:13:57 +0000 (21:13 +0000)]
PR c++/68890
* constexpr.c (verify_ctor_sanity): Remove CONSTRUCTOR_NELTS check.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233430
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Mon, 15 Feb 2016 20:31:45 +0000 (20:31 +0000)]
* alias.c (get_alias_set): Fix a typo in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233428
138bc75d-0d04-0410-961f-
82ee72b054a4
prathamesh3492 [Mon, 15 Feb 2016 17:28:48 +0000 (17:28 +0000)]
2016-02-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
testsuite/
* lib/target-supports.exp (check_effective_target_section_anchors): Add
check for aarch64*-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233426
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 15 Feb 2016 13:49:42 +0000 (13:49 +0000)]
2016-02-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/69595
* match.pd: Complete range test simplification to true.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233425
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233424
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233423
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233422
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233421
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 15 Feb 2016 09:40:01 +0000 (09:40 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233420
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233419
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 15 Feb 2016 08:42:38 +0000 (08:42 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233418
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 15 Feb 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233417
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 14 Feb 2016 18:26:00 +0000 (18:26 +0000)]
* config/pa/pa.md (absqi2, absghi2, bswaphi2, bswapsi2, bswapdi2): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233414
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sun, 14 Feb 2016 17:08:44 +0000 (17:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233413
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sun, 14 Feb 2016 16:29:08 +0000 (16:29 +0000)]
PR fortran/68746
* gfortran.dg/read_dir.f90: Xfail on hppa*-*-hpux*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233412
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sun, 14 Feb 2016 15:13:39 +0000 (15:13 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233411
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sun, 14 Feb 2016 12:23:59 +0000 (12:23 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233410
138bc75d-0d04-0410-961f-
82ee72b054a4
vekumar [Sun, 14 Feb 2016 07:11:16 +0000 (07:11 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233409
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Sun, 14 Feb 2016 01:48:59 +0000 (01:48 +0000)]
Add missing pr number
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233408
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Sun, 14 Feb 2016 01:43:14 +0000 (01:43 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233407
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Sun, 14 Feb 2016 01:37:40 +0000 (01:37 +0000)]
PRE_INC with invalid hard reg
PR target/68973
* reloads.c (find_reloads_address_1): For pre/post-inc/dec
with an invalid hard reg, reload just the reg not the entire
pre/post-inc/dec address expression.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233406
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 14 Feb 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233405
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sat, 13 Feb 2016 08:43:15 +0000 (08:43 +0000)]
gcc/testsuite/
PR target/67260
* gcc.target/sh/torture/pr67260.c: Adjust additional options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233400
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sat, 13 Feb 2016 08:03:44 +0000 (08:03 +0000)]
gcc/
PR target/67260
* config/sh/sh.md (sibcall_value_pcrel): Replace =&k scratch reg with
fixed R1_REG scratch reg.
(sibcall_value_pcrel_fdpic): Likewise.
gcc/testsuite/
PR target/67260
* gcc.target/sh/torture/pr67260.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233399
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sat, 13 Feb 2016 01:32:06 +0000 (01:32 +0000)]
* gcc.dg/pr67964.c: Add dg-require-alias.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233398
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sat, 13 Feb 2016 00:50:25 +0000 (00:50 +0000)]
gcc/
PR target/67636
PR target/64345
* config/sh/sh.md (*zero_extract_3): New insn_and_split pattern.
gcc/testsuite/
PR target/67636
PR target/64345
* gcc.target/sh/pr54236-1.c: Adjust optimization level.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233397
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 13 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233396
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 12 Feb 2016 22:10:09 +0000 (22:10 +0000)]
runtime: For c-archive/c-shared, install signal handlers synchronously.
This is a port of https://golang.org/cl/18150 to the gccgo runtime.
The previous behaviour of installing the signal handlers in a separate
thread meant that Go initialization raced with non-Go initialization if
the non-Go initialization also wanted to install signal handlers. Make
installing signal handlers synchronous so that the process-wide behavior
is predictable.
Reviewed-on: https://go-review.googlesource.com/19494
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233393
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 12 Feb 2016 21:26:33 +0000 (21:26 +0000)]
* eo.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233392
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Fri, 12 Feb 2016 21:23:11 +0000 (21:23 +0000)]
Fix FAIL: special_functions/18_riemann_zeta/check_value.cc (test for excess errors)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233391
138bc75d-0d04-0410-961f-
82ee72b054a4
walt [Fri, 12 Feb 2016 21:21:15 +0000 (21:21 +0000)]
gcc/ChangeLog:
* config/tilepro/t-tilepro: Replace CC_FOR_BUILD with
CXX_FOR_BUILD.
* config/tilegx/t-tilegx: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233390
138bc75d-0d04-0410-961f-
82ee72b054a4
walt [Fri, 12 Feb 2016 21:15:43 +0000 (21:15 +0000)]
libgcc/ChangeLog:
* config.host (tilegx*-*-linux*): remove ti from
softfp_int_modes for 32-bit configs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233389
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Fri, 12 Feb 2016 21:02:02 +0000 (21:02 +0000)]
2016-02-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/69668
* gfortran.dg/namelist_88.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233388
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Fri, 12 Feb 2016 19:52:13 +0000 (19:52 +0000)]
2016-02-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/69668
* io/list_read.c (read_character): Remove code related to DELIM_NONE.
PR libgfortran/69668
* gfortran.dg/namelist_38.f90: Update test.
* gfortran.dg/namelist_84.f90: Update test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233387
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Fri, 12 Feb 2016 19:18:03 +0000 (19:18 +0000)]
PR other/69554: avoid excessive source printing for widely-separated locations
gcc/ChangeLog:
PR other/69554
* diagnostic-show-locus.c (struct line_span): New struct.
(layout::get_first_line): Delete.
(layout::get_last_line): Delete.
(layout::get_num_line_spans): New member function.
(layout::get_line_span): Likewise.
(layout::print_heading_for_line_span_index_p): Likewise.
(layout::get_expanded_location): Likewise.
(layout::calculate_line_spans): Likewise.
(layout::m_first_line): Delete.
(layout::m_last_line): Delete.
(layout::m_line_spans): New field.
(layout::layout): Update comment. Replace m_first_line and
m_last_line with m_line_spans, replacing their initialization
with a call to calculate_line_spans.
(diagnostic_show_locus): When printing source lines and
annotations, rather than looping over a single span
of lines, instead loop over each line_span within
the layout, with an inner loop over the lines within them.
Call the context's start_span callback when changing line spans.
* diagnostic.c (diagnostic_initialize): Initialize start_span.
(diagnostic_build_prefix): Break out the building of the location
part of the string into...
(diagnostic_get_location_text): ...this new function, rewriting
it from nested ternary expressions to a sequence of "if"
statements.
(default_diagnostic_start_span_fn): New function.
* diagnostic.h (diagnostic_start_span_fn): New typedef.
(diagnostic_context::start_span): New field.
(default_diagnostic_start_span_fn): New prototype.
gcc/fortran/ChangeLog:
PR other/69554
* error.c (gfc_diagnostic_start_span): New function.
(gfc_diagnostics_init): Initialize global_dc's start_span.
gcc/testsuite/ChangeLog:
PR other/69554
* gcc.dg/pr69554-1.c: New test.
* gfortran.dg/pr69554-1.F90: New test.
* gfortran.dg/pr69554-2.F90: New test.
* lib/gcc-dg.exp (proc dg-locus): New function.
* lib/gfortran-dg.exp (proc gfortran-dg-test): Update comment to
distinguish between the caret-printing and non-caret-printing
cases. If caret-printing has been explicitly enabled, bail out
without attempting to fix up the output.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233386
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Fri, 12 Feb 2016 18:37:35 +0000 (18:37 +0000)]
PR driver/69779: fix bogus cleanup code used by libgccjit affecting s390x
gcc/ChangeLog:
PR driver/69779
* gcc.c (driver::finalize): Fix cleanup of "specs".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233385
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Fri, 12 Feb 2016 17:39:27 +0000 (17:39 +0000)]
PR driver/69265 and 69453: improved suggestions for various misspelled options
gcc/ChangeLog:
PR driver/69265
PR driver/69453
* gcc.c (driver::driver): Initialize m_option_suggestions.
(driver::~driver): Clean up m_option_suggestions.
(suggest_option): Convert to...
(driver::suggest_option): ...this, and split out into
driver::build_option_suggestions and find_closest_string.
(driver::build_option_suggestions): New function, from
first half of suggest_option. Special-case
OPT_fsanitize_ and OPT_fsanitize_recover_, making use of
the sanitizer_opts array. For options of enum types, add the
various enum values to the candidate strings.
(driver::handle_unrecognized_options): Remove "const".
* gcc.h (driver::handle_unrecognized_options): Likewise.
(driver::build_option_suggestions): New decl.
(driver::suggest_option): New decl.
(driver::m_option_suggestions): New field.
* opts-common.c (add_misspelling_candidates): New function.
* opts.c (sanitizer_opts): Remove decl of struct sanitizer_opts_s
and make non-static.
* opts.h (sanitizer_opts): New array decl.
(add_misspelling_candidates): New function decl.
* spellcheck.c (find_closest_string): New function.
* spellcheck.h (find_closest_string): New function decl.
gcc/testsuite/ChangeLog:
PR driver/69265
PR driver/69453
* gcc.dg/spellcheck-options-3.c: New test case.
* gcc.dg/spellcheck-options-4.c: New test case.
* gcc.dg/spellcheck-options-5.c: New test case.
* gcc.dg/spellcheck-options-6.c: New test case.
* gcc.dg/spellcheck-options-7.c: New test case.
* gcc.dg/spellcheck-options-8.c: New test case.
* gcc.dg/spellcheck-options-9.c: New test case.
* gcc.dg/spellcheck-options-10.c: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233382
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 12 Feb 2016 16:49:44 +0000 (16:49 +0000)]
PR rtl-optimization/69764
PR rtl-optimization/69771
* optabs.c (expand_binop_directly): For shift_optab_p, force
convert_modes with VOIDmode if xop1 has VOIDmode.
* c-c++-common/pr69764.c: New test.
* gcc.dg/torture/pr69771.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233381
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 12 Feb 2016 16:40:47 +0000 (16:40 +0000)]
* g++.dg/torture/init-list1.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233380
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 12 Feb 2016 13:48:01 +0000 (13:48 +0000)]
* gcc.dg/pr69522.c: Add empty dg-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233377
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 12 Feb 2016 13:17:28 +0000 (13:17 +0000)]
gcc/
PR target/69729
* lto-streamer-out.c (lto_output): Use thunk.add_pointer_bounds_args
to correctly determine instrumentation thunks.
gcc/testsuite/
* g++.dg/lto/lto.exp: Include and init mpx.
* g++.dg/lto/pr69729_0.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233376
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 12 Feb 2016 11:59:00 +0000 (11:59 +0000)]
PR ipa/69241
* ipa-split.c (split_function): If split part returns TREE_ADDRESSABLE
type by reference, force lhs on the call.
* g++.dg/ipa/pr69241-4.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233375
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 12 Feb 2016 11:57:54 +0000 (11:57 +0000)]
PR ipa/68672
* ipa-split.c (split_function): Don't compute/use main_part_return_p.
Compute retval and retbnd early in all cases if split_part_return_p
and return_bb is not EXIT. Remove all clobber stmts and reset
all debug stmts that refer to SSA_NAMEs defined in split part,
except if it is retval, in that case replace the old retval with the
lhs of the call to the split part.
* g++.dg/ipa/pr68672-1.C: New test.
* g++.dg/ipa/pr68672-2.C: New test.
* g++.dg/ipa/pr68672-3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233374
138bc75d-0d04-0410-961f-
82ee72b054a4
kugan [Fri, 12 Feb 2016 06:40:55 +0000 (06:40 +0000)]
2016-02-12 Kugan Vivekanandarajah <kuganv@linaro.org>
revert:
2016-02-12 Kugan Vivekanandarajah <kuganv@linaro.org>
PR middle-end/66726
* tree-ssa-reassoc.c (optimize_range_tests): Handle tcc_compare stmt
whose result is used in PHI.
(maybe_optimize_range_tests): Likewise.
(final_range_test_p): Likweise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233368
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 12 Feb 2016 01:50:25 +0000 (01:50 +0000)]
Fix incomplete initialization of the declspec struct.
* c-decl.c (build_null_declspecs): Zero the entire struct.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233367
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Fri, 12 Feb 2016 01:38:06 +0000 (01:38 +0000)]
Fix obstack use-after-free problems in C frontend, PR69522
c/
PR c/69522
* c-parser.c (c_parser_braced_init): New arg outer_obstack. All
callers changed. If nested_p is true, use it to call
finish_implicit_inits.
* c-tree.h (finish_implicit_inits): Declare.
* c-typeck.c (finish_implicit_inits): New function. Move code
from ...
(push_init_level): ... here.
(set_designator, process_init_element): Call finish_implicit_inits.
testsuite/
PR c/69522
gcc.dg/pr69522.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233366
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Fri, 12 Feb 2016 01:11:52 +0000 (01:11 +0000)]
Fix PR c++/69098 (bogus errors with static data member template)
gcc/cp/ChangeLog:
PR c++/69098
* pt.c (lookup_and_finish_template_variable): New function,
extracted from ...
(tsubst_copy_and_build) [TEMPLATE_ID_EXPR]: ... here.
(tsubst_qualified_id): Consider that EXPR might be a variable
template.
* typeck.c (check_template_keyword): Don't emit an error
if DECL is a variable template.
gcc/testsuite/ChangeLog:
PR c++/69098
* g++.dg/cpp1y/69098.C: New test.
* g++.dg/cpp1y/69098-2.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233365
138bc75d-0d04-0410-961f-
82ee72b054a4
kugan [Fri, 12 Feb 2016 00:24:22 +0000 (00:24 +0000)]
gcc/ChangeLog:
2016-02-12 Kugan Vivekanandarajah <kuganv@linaro.org>
PR middle-end/66726
* tree-ssa-reassoc.c (optimize_range_tests): Handle tcc_compare stmt
whose result is used in PHI.
(maybe_optimize_range_tests): Likewise.
(final_range_test_p): Likweise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233362
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 12 Feb 2016 00:16:17 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233361
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 11 Feb 2016 23:53:54 +0000 (23:53 +0000)]
* cgraph.c: Spelling fixes - behaviour -> behavior and
neighbour -> neighbor.
* target.def: Likewise.
* sel-sched.c: Likewise.
* config/mips/mips.c: Likewise.
* config/arc/arc.md: Likewise.
* config/arm/cortex-a57.md: Likewise.
* config/arm/arm.c: Likewise.
* config/arm/neon.md: Likewise.
* config/arm/arm-c.c: Likewise.
* config/vms/vms-c.c: Likewise.
* config/s390/s390.c: Likewise.
* config/i386/znver1.md: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/hpux-unix2003.h: Likewise.
* config/msp430/msp430.md: Likewise.
* config/rx/rx.c: Likewise.
* config/rx/rx.md: Likewise.
* config/aarch64/aarch64-simd.md: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/nvptx/nvptx.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/cris/cris.opt: Likewise.
* config/rs6000/rs6000.c: Likewise.
* target.h: Likewise.
* spellcheck.c: Likewise.
* ira-build.c: Likewise.
* tree-inline.c: Likewise.
* builtins.c: Likewise.
* lra-constraints.c: Likewise.
* explow.c: Likewise.
* hwint.h: Likewise.
* targhooks.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* expr.c: Likewise.
* doc/tm.texi: Likewise.
* doc/extend.texi: Likewise.
* doc/install.texi: Likewise.
* doc/md.texi: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* sched-int.h: Likewise.
* match.pd: Likewise.
* sched-ebb.c: Likewise.
* target.def (omit_struct_return_reg): Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
(find_implicit_erroneous_behaviour): Renamed to...
(find_implicit_erroneous_behavior): ... this.
(find_explicit_erroneous_behaviour): Renamed to...
(find_explicit_erroneous_behavior): ... this.
(gimple_ssa_isolate_erroneous_paths): Adjust caller.
gcc/cp/
* error.c: Spelling fixes - behaviour -> behavior and
neighbour -> neighbor.
* decl.c: Likewise.
* typeck.c (cp_build_binary_op): Fix up behavior spelling in
diagnostics.
* init.c (build_delete): Likewise.
gcc/objc/
* objc-act.c: Spelling fixes - behaviour -> behavior and
neighbour -> neighbor.
* objc-map.h: Likewise.
gcc/go/
* gofrontend/lex.cc: Spelling fixes - behaviour -> behavior and
neighbour -> neighbor.
* gccgo.texi: Likewise.
gcc/ada/
* prj-tree.ads: Spelling fixes - behaviour -> behavior and
neighbour -> neighbor.
* prep.adb: Likewise.
* prj.ads: Likewise.
* prepcomp.adb: Likewise.
* g-socket.ads: Likewise.
* s-imgrea.adb: Likewise.
* a-calend.adb: Likewise.
* exp_disp.adb: Likewise.
* doc/gnat_ugn/gnat_utility_programs.rst: Likewise.
* g-socket.adb: Likewise.
* sem_ch12.adb: Likewise.
* terminals.c: Likewise.
gcc/testsuite/
* objc.dg/gnu-api-2-method.m: Spelling fixes - behaviour -> behavior
and neighbour -> neighbor.
* objc.dg/attributes/method-nonnull-1.m: Likewise.
* objc.dg/gnu-api-2-class-meta.m: Likewise.
* c-c++-common/Wvarargs.c: Likewise.
* c-c++-common/goacc/host_data-5.c: Likewise.
* obj-c++.dg/gnu-api-2-class-meta.mm: Likewise.
* obj-c++.dg/attributes/method-nonnull-1.mm: Likewise.
* obj-c++.dg/gnu-api-2-method.mm: Likewise.
* gcc.target/aarch64/pr60697.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqshl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vrshl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vqrshl.c: Likewise.
* gcc.target/aarch64/advsimd-intrinsics/vldX.c: Likewise.
* gcc.target/aarch64/aapcs64/ice_2.c: Likewise.
* gcc.target/aarch64/aapcs64/test_23.c: Likewise.
* gcc.target/aarch64/vrnd_f64_1.c: Likewise.
* g++.dg/warn/Wconversion-real-integer-3.C: Likewise.
* g++.dg/lookup/koenig5.C: Likewise.
* g++.dg/ext/no-asm-2.C: Likewise.
* gfortran.dg/bounds_check_array_ctor_3.f90: Likewise.
* gfortran.dg/bounds_check_array_ctor_7.f90: Likewise.
* gfortran.dg/used_types_16.f90: Likewise.
* gfortran.dg/assumed_rank_bounds_1.f90: Likewise.
* gfortran.dg/bounds_check_array_ctor_1.f90: Likewise.
* gfortran.dg/assumed_rank_bounds_2.f90: Likewise.
* gfortran.dg/bounds_check_array_ctor_4.f90: Likewise.
* gfortran.dg/abstract_type_6.f03: Likewise.
* gfortran.dg/bounds_check_array_ctor_5.f90: Likewise.
* gfortran.dg/used_types_15.f90: Likewise.
* gfortran.dg/bounds_check_array_ctor_8.f90: Likewise.
* gfortran.dg/exit_3.f08: Likewise.
* gfortran.dg/open_status_2.f90: Likewise.
* gfortran.dg/derived_pointer_recursion_2.f90: Likewise.
* gfortran.dg/intrinsic_std_1.f90: Likewise.
* gfortran.dg/associate_1.f03: Likewise.
* gfortran.dg/bounds_check_array_ctor_2.f90: Likewise.
* gfortran.dg/intrinsic_std_6.f90: Likewise.
* gfortran.dg/bounds_check_array_ctor_6.f90: Likewise.
* gcc.dg/builtin-object-size-1.c: Likewise.
* gcc.dg/noreturn-6.c: Likewise.
* gcc.dg/builtin-stringop-chk-1.c: Likewise.
* gcc.dg/globalalias.c: Likewise.
* gcc.dg/builtins-config.h: Likewise.
* gcc.dg/pr30457.c: Likewise.
* gcc.c-torture/compile/volatile-1.c: Likewise.
* gcc.c-torture/execute/
20101011-1.c: Likewise.
* c-c++-common/Waddress-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233358
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 11 Feb 2016 22:55:02 +0000 (22:55 +0000)]
PR c/69768
* c-typeck.c (parser_build_binary_op): Strip nops from integer_zerop
arguments for -Waddress warning.
* typeck.c (cp_build_binary_op): cp_fully_fold integer_zerop
arguments for -Waddress warning. Fix up formatting.
* c-c++-common/Waddress-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233357
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Thu, 11 Feb 2016 22:26:35 +0000 (22:26 +0000)]
combine: More distribute_notes trouble (PR69737)
PR64682 is a problem in distribute_notes, where it has trouble putting
a REG_DEAD note for a reg that is set twice in the right spot. My fix
for that did the wrong thing for PR69567. And then my attempted fix
for that one made PR64682 fail again.
Instead, let's just lose the note in such complicated cases, like we
already do in certain similar cases.
PR rtl-optimization/64682
PR rtl-optimization/69567
PR rtl-optimization/69737
* combine.c (distribute_notes) <REG_DEAD>: If the register is set
in I2 as well, just lose it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233356
138bc75d-0d04-0410-961f-
82ee72b054a4
vehre [Thu, 11 Feb 2016 16:48:45 +0000 (16:48 +0000)]
gcc/fortran/ChangeLog:
2016-02-11 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/69296
* gfortran.h: Added flag to gfc_association_list indicating that
the rank of an associate variable has been guessed only.
* parse.c (parse_associate): Set the guess flag mentioned above
when guessing the rank of an expression.
* resolve.c (resolve_assoc_var): When the rank has been guessed,
make sure, that the guess was correct else overwrite with the actual
rank.
* trans-stmt.c (trans_associate_var): For subref_array_pointers in
class objects, take the span from the _data component.
gcc/testsuite/ChangeLog:
2016-02-11 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/69296
* gfortran.dg/associate_19.f03: New test.
* gfortran.dg/associate_20.f03: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233351
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Thu, 11 Feb 2016 14:47:20 +0000 (14:47 +0000)]
gcc/testsuite/
* gcc.target/sh/pr54089-8.c: Adjust optimization level.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233346
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Thu, 11 Feb 2016 13:27:28 +0000 (13:27 +0000)]
[AArch64] Only update assembler .arch directive when necessary
* config/aarch64/aarch64.c (aarch64_last_printed_arch_string):
New variable.
(aarch64_last_printed_tune_string): Likewise.
(aarch64_declare_function_name): Only output .arch assembler
directive if it will be different from the previously output
directive. Same for .tune comment but only if -dA is set.
(aarch64_start_file): New function.
(TARGET_ASM_FILE_START): Define.
* gcc.target/aarch64/target_attr_15.c: Scan assembly for
.arch armv8-a\n. Add -dA to dg-options.
* gcc.target/aarch64/assembler_arch_1.c: New test.
* gcc.target/aarch64/target_attr_7.c: Add -dA to dg-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233342
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 11 Feb 2016 11:45:10 +0000 (11:45 +0000)]
/cp
2016-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/68726
* pt.c (lookup_template_class_1): Check tsubst return value for
error_mark_node.
/testsuite
2016-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/68726
* g++.dg/cpp0x/pr68726.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233340
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 11 Feb 2016 11:44:51 +0000 (11:44 +0000)]
/cp
2016-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/68726
* pt.c (lookup_template_class_1): Check tsubst return value for
error_mark_node.
/testsuite
2016-02-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/68726
* g++.dg/cpp0x/pr68726.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233339
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 11 Feb 2016 11:26:54 +0000 (11:26 +0000)]
PR plugins/69758: add params.list to PLUGIN_HEADERS
gcc/ChangeLog:
PR plugins/69758
* Makefile.in (PLUGIN_HEADERS): Add params.list.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233338
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 11 Feb 2016 10:08:14 +0000 (10:08 +0000)]
PR target/65313
* tree-vect-slp.c (vect_schedule_slp_instance): Avoid
-Wmaybe-uninitialized warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233337
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 11 Feb 2016 09:26:23 +0000 (09:26 +0000)]
gcc/testsuite/
* lib/mpx-dg.exp: Fix warning in check_effective_target_mpx
test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233333
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Thu, 11 Feb 2016 09:12:18 +0000 (09:12 +0000)]
gcc/
PR target/69713
* config/sh/sh.md (casesi_worker_0): Add T_REG use.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233324
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 11 Feb 2016 08:15:44 +0000 (08:15 +0000)]
2016-02-11 Richard Biener <rguenther@suse.de>
* g++.dg/tree-ssa/pr61034.C: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233317
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 11 Feb 2016 08:11:52 +0000 (08:11 +0000)]
2016-02-11 Richard Biener <rguenther@suse.de>
PR rtl-optimization/69291
* ifcvt.c (noce_try_store_flag_constants): Do not allow
subexpressions affected by changing the result.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233316
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 11 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233314
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 10 Feb 2016 19:12:32 +0000 (19:12 +0000)]
PR c++/68926
* pt.c (resolve_nondeduced_context): Add complain parm.
(do_auto_deduction): Pass it.
* cvt.c (convert_to_void): Likewise.
* decl.c (cp_finish_decl): Likewise.
* init.c (build_new): Likewise.
* rtti.c (get_tinfo_decl_dynamic): Likewise.
* semantics.c (finish_decltype_type): Likewise.
* typeck.c (decay_conversion): Likewise.
* cp-tree.h: Adjust declaration.
* call.c (standard_conversion): Add complain parm, pass it along.
(implicit_conversion): Pass it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233304
138bc75d-0d04-0410-961f-
82ee72b054a4