]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
9 years agouse auto_sbitmap in various places
tbsaunde [Tue, 26 Jul 2016 10:44:08 +0000 (10:44 +0000)] 
use auto_sbitmap in various places

gcc/ChangeLog:

2016-07-26  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* bt-load.c (compute_out): Use auto_sbitmap class.
(link_btr_uses): Likewise.
* cfganal.c (mark_dfs_back_edges): Likewise.
(post_order_compute): Likewise.
(inverted_post_order_compute): Likewise.
(pre_and_rev_post_order_compute_fn): Likewise.
(single_pred_before_succ_order): Likewise.
* cfgexpand.c (pass_expand::execute): Likewise.
* cfgloop.c (verify_loop_structure): Likewise.
* cfgloopmanip.c (fix_bb_placements): Likewise.
(remove_path): Likewise.
(update_dominators_in_loop): Likewise.
* cfgrtl.c (break_superblocks): Likewise.
* ddg.c (check_sccs): Likewise.
(create_ddg_all_sccs): Likewise.
* df-core.c (df_worklist_dataflow): Likewise.
* dse.c (dse_step3): Likewise.
* except.c (eh_region_outermost): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
* gcse.c (prune_expressions): Likewise.
(prune_insertions_deletions): Likewise.
* gimple-ssa-backprop.c (backprop::~backprop): Likewise.
* graph.c (draw_cfg_nodes_no_loops): Likewise.
* ira-lives.c (remove_some_program_points_and_update_live_ranges): Likewise.
* lcm.c (compute_earliest): Likewise.
(compute_farthest): Likewise.
* loop-unroll.c (unroll_loop_constant_iterations): Likewise.
(unroll_loop_runtime_iterations): Likewise.
(unroll_loop_stupid): Likewise.
* lower-subreg.c (decompose_multiword_subregs): Likewise.
* lra-lives.c: Likewise.
* lra.c (lra): Likewise.
* modulo-sched.c (schedule_reg_moves): Likewise.
(optimize_sc): Likewise.
(get_sched_window): Likewise.
(sms_schedule_by_order): Likewise.
(check_nodes_order): Likewise.
(order_nodes_of_sccs): Likewise.
(order_nodes_in_scc): Likewise.
* recog.c (split_all_insns): Likewise.
* regcprop.c (pass_cprop_hardreg::execute): Likewise.
* reload1.c (reload): Likewise.
* sched-rgn.c (haifa_find_rgns): Likewise.
(split_edges): Likewise.
(compute_trg_info): Likewise.
* sel-sched.c (init_seqno): Likewise.
* store-motion.c (remove_reachable_equiv_notes): Likewise.
* tree-into-ssa.c (update_ssa): Likewise.
* tree-ssa-live.c (live_worklist): Likewise.
* tree-ssa-loop-im.c (fill_always_executed_in): Likewise.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
* Likewise.
(try_peel_loop): Likewise.
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop):
* Likewise.
* tree-ssa-pre.c (compute_antic): Likewise.
* tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
* tree-stdarg.c (reachable_at_most_once): Likewise.
* tree-vect-slp.c (vect_attempt_slp_rearrange_stmts): Likewise.
* var-tracking.c (vt_find_locations): Likewise.

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

9 years agoadd auto_sbitmap class
tbsaunde [Tue, 26 Jul 2016 10:43:58 +0000 (10:43 +0000)] 
add auto_sbitmap class

gcc/ChangeLog:

2016-07-26  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* sbitmap.h (auto_sbitmap): New class.

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

9 years ago[RS6000] push_secondary_reload ICE
amodra [Tue, 26 Jul 2016 10:27:34 +0000 (10:27 +0000)] 
[RS6000] push_secondary_reload ICE

PR target/72103
* config/rs6000/rs6000.c (rs6000_secondary_reload): Initialize
sri->t_icode.

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

9 years ago libgo: bump library version number for 1.7
ian [Tue, 26 Jul 2016 01:53:27 +0000 (01:53 +0000)] 
libgo: bump library version number for 1.7

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

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

9 years ago os/user: fix Solaris declaration.
ian [Tue, 26 Jul 2016 01:38:33 +0000 (01:38 +0000)] 
os/user: fix Solaris declaration.

    Patch from Rainer Orth.

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

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

9 years agoDaily bump.
gccadmin [Tue, 26 Jul 2016 00:16:20 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago PR c++/65970 - revert loop location change
jason [Mon, 25 Jul 2016 21:25:04 +0000 (21:25 +0000)] 
PR c++/65970 - revert loop location change

* cp-gimplify.c (genericize_cp_loop): Revert location change.

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

9 years ago PR c++/71837 - pack expansion in init-capture
jason [Mon, 25 Jul 2016 19:16:16 +0000 (19:16 +0000)] 
PR c++/71837 - pack expansion in init-capture

* lambda.c (add_capture): Leave a pack expansion in a TREE_LIST.
(build_lambda_object): Call build_x_compound_expr_from_list.
* pt.c (tsubst) [DECLTYPE_TYPE]: Likewise.

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

9 years agoFix selftest::temp_source_file ctor
dmalcolm [Mon, 25 Jul 2016 19:15:22 +0000 (19:15 +0000)] 
Fix selftest::temp_source_file ctor

gcc/ChangeLog:
* input.c (selftest::temp_source_file::temp_source_file): Fix
missing "%s" in fprintf.

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

9 years ago PR c++/71833 - member template with two parameter packs
jason [Mon, 25 Jul 2016 19:10:41 +0000 (19:10 +0000)] 
PR c++/71833 - member template with two parameter packs

PR c++/54440
* pt.c (coerce_template_parameter_pack): Fix logic for
pack index.

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

9 years ago PR c++/65970 - constexpr infinite loop
jason [Mon, 25 Jul 2016 18:32:13 +0000 (18:32 +0000)] 
PR c++/65970 - constexpr infinite loop

gcc/c-family/
* c.opt (fconstexpr-loop-limit): New.
gcc/cp/
* constexpr.c (cxx_eval_loop_expr): Count iterations.
* cp-gimplify.c (genericize_cp_loop): Use start_locus even for
infinite loops.

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

9 years ago PR c++/71972 - constexpr array self-modification
jason [Mon, 25 Jul 2016 18:32:06 +0000 (18:32 +0000)] 
PR c++/71972 - constexpr array self-modification

* constexpr.c (cxx_eval_array_reference): Handle looking for the
value of an element we're currently modifying.

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

9 years ago * g++.dg/init/elide5.C: Don't use unsigned long for size_t.
jason [Mon, 25 Jul 2016 18:32:00 +0000 (18:32 +0000)] 
* g++.dg/init/elide5.C: Don't use unsigned long for size_t.

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

9 years ago PR middle-end/71732
danglin [Mon, 25 Jul 2016 17:32:44 +0000 (17:32 +0000)] 
PR middle-end/71732
* cselib.c (cselib_process_insn): Invalidate argument slots for
const/pure calls.

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

9 years agotestsuite: add two missing label_values annotations
amonakov [Mon, 25 Jul 2016 16:16:27 +0000 (16:16 +0000)] 
testsuite: add two missing label_values annotations

2016-07-25  Alexander Monakov  <amonakov@ispras.ru>

* gcc.c-torture/execute/pr71494.c: Require label_values.
* gcc.dg/pr16973.c: Ditto.

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

9 years ago[AArch64][10/10] ARMv8.2-A FP16 lane scalar intrinsics
jiwang [Mon, 25 Jul 2016 16:15:34 +0000 (16:15 +0000)] 
[AArch64][10/10] ARMv8.2-A FP16 lane scalar intrinsics

gcc/
* config/aarch64/arm_neon.h (vfmah_lane_f16, vfmah_laneq_f16,
vfmsh_lane_f16, vfmsh_laneq_f16, vmulh_lane_f16, vmulh_laneq_f16,
vmulxh_lane_f16, vmulxh_laneq_f16): New.

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

9 years ago[AArch64][9/10] ARMv8.2-A FP16 three operands scalar intrinsics
jiwang [Mon, 25 Jul 2016 16:13:22 +0000 (16:13 +0000)] 
[AArch64][9/10] ARMv8.2-A FP16 three operands scalar intrinsics

gcc/
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64.md (fma, fnma): Support HF.
* config/aarch64/arm_fp16.h (vfmah_f16, vfmsh_f16): New.

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

9 years ago[AArch64][8/10] ARMv8.2-A FP16 two operands scalar intrinsics
jiwang [Mon, 25 Jul 2016 16:10:52 +0000 (16:10 +0000)] 
[AArch64][8/10] ARMv8.2-A FP16 two operands scalar intrinsics

gcc/
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64.md (<FCVT_F2FIXED:fcvt_fixed_insn>hf<mode>3):
New.
(<FCVT_FIXED2F:fcvt_fixed_insn><mode>hf3): Likewise.
(add<mode>3): Likewise.
(sub<mode>3): Likewise.
(mul<mode>3): Likewise.
(div<mode>3): Likewise.
(*div<mode>3): Likewise.
(<fmaxmin><mode>3): Extend to HF.
* config/aarch64/aarch64-simd.md (aarch64_rsqrts<mode>): Likewise.
(fabd<mode>3): Likewise.
(<FCVT_F2FIXED:fcvt_fixed_insn><VHSDF_HSDF:mode>3): Likewise.
(<FCVT_FIXED2F:fcvt_fixed_insn><VHSDI_HSDI:mode>3): Likewise.
(aarch64_fmulx<mode>): Likewise.
(aarch64_fac<optab><mode>): Likewise.
(aarch64_frecps<mode>): Likewise.
(<FCVT_F2FIXED:fcvt_fixed_insn>hfhi3): New.
(<FCVT_FIXED2F:fcvt_fixed_insn>hihf3): Likewise.
* config/aarch64/iterators.md (VHSDF_SDF): Delete.
(VSDQ_HSDI): Support HI.
(fcvt_target, FCVT_TARGET): Likewise.
* config/aarch64/arm_fp16.h (vaddh_f16, vsubh_f16, vabdh_f16,
vcageh_f16, vcagth_f16, vcaleh_f16, vcalth_f16, vceqh_f16, vcgeh_f16,
vcgth_f16, vcleh_f16, vclth_f16, vcvth_n_f16_s16, vcvth_n_f16_s32,
vcvth_n_f16_s64, vcvth_n_f16_u16, vcvth_n_f16_u32, vcvth_n_f16_u64,
vcvth_n_s16_f16, vcvth_n_s32_f16, vcvth_n_s64_f16, vcvth_n_u16_f16,
vcvth_n_u32_f16, vcvth_n_u64_f16, vdivh_f16, vmaxh_f16, vmaxnmh_f16,
vminh_f16, vminnmh_f16, vmulh_f16, vmulxh_f16, vrecpsh_f16,
vrsqrtsh_f16): New.

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

9 years ago[AArch64][7/10] ARMv8.2-A FP16 one operand scalar intrinsics
jiwang [Mon, 25 Jul 2016 16:00:28 +0000 (16:00 +0000)] 
[AArch64][7/10] ARMv8.2-A FP16 one operand scalar intrinsics

gcc/
* config.gcc (aarch64*-*-*): Install arm_fp16.h.
* config/aarch64/aarch64-builtins.c (hi_UP): New.
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64-simd.md (aarch64_frsqrte<mode>): Extend to HF
mode.
(aarch64_frecp<FRECP:frecp_suffix><mode>): Likewise.
(aarch64_cm<optab><mode>): Likewise.
* config/aarch64/aarch64.md (<frint_pattern><mode>2): Likewise.
(l<fcvt_pattern><su_optab><GPF:mode><GPI:mode>2): Likewise.
(fix_trunc<GPF:mode><GPI:mode>2): Likewise.
(sqrt<mode>2): Likewise.
(abs<mode>2): Likewise.
(<optab><mode>hf2): New pattern for HF mode.
(<optab>hihf2): Likewise.
* config/aarch64/arm_neon.h: Include arm_fp16.h.
* config/aarch64/iterators.md (GPF_F16, GPI_F16, VHSDF_HSDF): New.
(w1, w2, v, s, q, Vmtype, V_cmp_result, fcvt_iesize, FCVT_IESIZE):
Support HF mode.
* config/aarch64/arm_fp16.h: New file.
(vabsh_f16, vceqzh_f16, vcgezh_f16, vcgtzh_f16, vclezh_f16, vcltzh_f16,
vcvth_f16_s16, vcvth_f16_s32, vcvth_f16_s64, vcvth_f16_u16,
vcvth_f16_u32, vcvth_f16_u64, vcvth_s16_f16, vcvth_s32_f16,
vcvth_s64_f16, vcvth_u16_f16, vcvth_u32_f16, vcvth_u64_f16,
vcvtah_s16_f16, vcvtah_s32_f16, vcvtah_s64_f16, vcvtah_u16_f16,
vcvtah_u32_f16, vcvtah_u64_f16, vcvtmh_s16_f16, vcvtmh_s32_f16,
vcvtmh_s64_f16, vcvtmh_u16_f16, vcvtmh_u32_f16, vcvtmh_u64_f16,
vcvtnh_s16_f16, vcvtnh_s32_f16, vcvtnh_s64_f16, vcvtnh_u16_f16,
vcvtnh_u32_f16, vcvtnh_u64_f16, vcvtph_s16_f16, vcvtph_s32_f16,
vcvtph_s64_f16, vcvtph_u16_f16, vcvtph_u32_f16, vcvtph_u64_f16,
vnegh_f16, vrecpeh_f16, vrecpxh_f16, vrndh_f16, vrndah_f16, vrndih_f16,
vrndmh_f16, vrndnh_f16, vrndph_f16, vrndxh_f16, vrsqrteh_f16,
vsqrth_f16): New.

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

9 years ago[AArch64][6/14] ARMv8.2-A FP16 reduction vector intrinsics
jiwang [Mon, 25 Jul 2016 15:00:14 +0000 (15:00 +0000)] 
[AArch64][6/14] ARMv8.2-A FP16 reduction vector intrinsics

gcc/
* config/aarch64/aarch64-simd-builtins.def (reduc_smax_scal_,
reduc_smin_scal_): Use VDQIF_F16.
(reduc_smax_nan_scal_, reduc_smin_nan_scal_): Use VHSDF.
* config/aarch64/aarch64-simd.md (reduc_<maxmin_uns>_scal_<mode>):
Use VHSDF.
(aarch64_reduc_<maxmin_uns>_internal<mode>): Likewise.
* config/aarch64/iterators.md (VDQIF_F16): New.
(vp): Support HF modes.
* config/aarch64/arm_neon.h (vmaxv_f16, vmaxvq_f16, vminv_f16,
vminvq_f16, vmaxnmv_f16, vmaxnmvq_f16, vminnmv_f16, vminnmvq_f16): New.

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

9 years ago[AArch64][5/10] ARMv8.2-A FP16 lane vector intrinsics
jiwang [Mon, 25 Jul 2016 14:49:57 +0000 (14:49 +0000)] 
[AArch64][5/10] ARMv8.2-A FP16 lane vector intrinsics

gcc/
* config/aarch64/aarch64-simd.md (*aarch64_mulx_elt_to_64v2df): Rename to
"*aarch64_mulx_elt_from_dup<mode>".
(*aarch64_mul3_elt<mode>): Update schedule type.
(*aarch64_mul3_elt_from_dup<mode>): Likewise.
(*aarch64_fma4_elt_from_dup<mode>): Likewise.
(*aarch64_fnma4_elt_from_dup<mode>): Likewise.
* config/aarch64/iterators.md (VMUL): Supprt half precision float modes.
(f, fp): Support HF modes.
* config/aarch64/arm_neon.h (vfma_lane_f16, vfmaq_lane_f16,
vfma_laneq_f16, vfmaq_laneq_f16, vfma_n_f16, vfmaq_n_f16, vfms_lane_f16,
        vfmsq_lane_f16, vfms_laneq_f16, vfmsq_laneq_f16, vfms_n_f16,
vfmsq_n_f16, vmul_lane_f16, vmulq_lane_f16, vmul_laneq_f16,
vmulq_laneq_f16, vmul_n_f16, vmulq_n_f16, vmulx_lane_f16,
vmulxq_lane_f16, vmulx_laneq_f16, vmulxq_laneq_f16): New.

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

9 years ago[AArch64][4/10] ARMv8.2-A FP16 three operands vector intrinsics
jiwang [Mon, 25 Jul 2016 14:44:24 +0000 (14:44 +0000)] 
[AArch64][4/10] ARMv8.2-A FP16 three operands vector intrinsics

gcc/
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64-simd.md (fma<mode>4, fnma<mode>4): Extend to HF
modes.
* config/aarch64/arm_neon.h (vfma_f16, vfmaq_f16, vfms_f16,
vfmsq_f16): New.

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

9 years ago[AArch64][3/10] ARMv8.2-A FP16 two operands vector intrinsics
jiwang [Mon, 25 Jul 2016 14:30:52 +0000 (14:30 +0000)] 
[AArch64][3/10] ARMv8.2-A FP16 two operands vector intrinsics

gcc/
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64-simd.md
(aarch64_rsqrts<mode>): Extend to HF modes.
(fabd<mode>3): Likewise.
(<FCVT_F2FIXED:fcvt_fixed_insn><VHSDF_SDF:mode>3): Likewise.
(<FCVT_FIXED2F:fcvt_fixed_insn><VHSDI_SDI:mode>3): Likewise.
(aarch64_<maxmin_uns>p<mode>): Likewise.
(<su><maxmin><mode>3): Likewise.
(<maxmin_uns><mode>3): Likewise.
(<fmaxmin><mode>3): Likewise.
(aarch64_faddp<mode>): Likewise.
(aarch64_fmulx<mode>): Likewise.
(aarch64_frecps<mode>): Likewise.
(*aarch64_fac<optab><mode>): Rename to aarch64_fac<optab><mode>.
(add<mode>3): Extend to HF modes.
(sub<mode>3): Likewise.
(mul<mode>3): Likewise.
(div<mode>3): Likewise.
(*div<mode>3): Likewise.
* config/aarch64/aarch64.c (aarch64_emit_approx_div): Return false for
HF, V4HF and V8HF.
* config/aarch64/iterators.md (VDQ_HSDI, VSDQ_HSDI): New mode iterator.
* config/aarch64/arm_neon.h (vadd_f16): New.
(vaddq_f16, vabd_f16, vabdq_f16, vcage_f16, vcageq_f16, vcagt_f16,
vcagtq_f16, vcale_f16, vcaleq_f16, vcalt_f16, vcaltq_f16, vceq_f16,
vceqq_f16, vcge_f16, vcgeq_f16, vcgt_f16, vcgtq_f16, vcle_f16,
vcleq_f16, vclt_f16, vcltq_f16, vcvt_n_f16_s16, vcvtq_n_f16_s16,
vcvt_n_f16_u16, vcvtq_n_f16_u16, vcvt_n_s16_f16, vcvtq_n_s16_f16,
vcvt_n_u16_f16, vcvtq_n_u16_f16, vdiv_f16, vdivq_f16, vdup_lane_f16,
vdup_laneq_f16, vdupq_lane_f16, vdupq_laneq_f16, vdups_lane_f16,
vdups_laneq_f16, vmax_f16, vmaxq_f16, vmaxnm_f16, vmaxnmq_f16, vmin_f16,
vminq_f16, vminnm_f16, vminnmq_f16, vmul_f16, vmulq_f16, vmulx_f16,
vmulxq_f16, vpadd_f16, vpaddq_f16, vpmax_f16, vpmaxq_f16, vpmaxnm_f16,
vpmaxnmq_f16, vpmin_f16, vpminq_f16, vpminnm_f16, vpminnmq_f16,
vrecps_f16, vrecpsq_f16, vrsqrts_f16, vrsqrtsq_f16, vsub_f16,
vsubq_f16): Likewise.

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

9 years ago[AArch64][2/10] ARMv8.2-A FP16 one operand vector intrinsics
jiwang [Mon, 25 Jul 2016 14:20:37 +0000 (14:20 +0000)] 
[AArch64][2/10] ARMv8.2-A FP16 one operand vector intrinsics

gcc/
* config/aarch64/aarch64-builtins.c (TYPES_BINOP_USS): New.
* config/aarch64/aarch64-simd-builtins.def: Register new builtins.
* config/aarch64/aarch64-simd.md (aarch64_rsqrte<mode>): Extend to HF modes.
(neg<mode>2): Likewise.
(abs<mode>2): Likewise.
(<frint_pattern><mode>2): Likewise.
(l<fcvt_pattern><su_optab><VDQF:mode><fcvt_target>2): Likewise.
(<optab><VDQF:mode><fcvt_target>2): Likewise.
(<fix_trunc_optab><VDQF:mode><fcvt_target>2): Likewise.
(ftrunc<VDQF:mode>2): Likewise.
(<optab><fcvt_target><VDQF:mode>2): Likewise.
(sqrt<mode>2): Likewise.
(*sqrt<mode>2): Likewise.
(aarch64_frecpe<mode>): Likewise.
(aarch64_cm<optab><mode>): Likewise.
* config/aarch64/aarch64.c (aarch64_emit_approx_sqrt): Return
false for V4HF and V8HF.
* config/aarch64/iterators.md (VHSDF, VHSDF_DF, VHSDF_SDF): New.
(VDQF_COND, fcvt_target, FCVT_TARGET, hcon): Extend mode attribute to HF modes.
(stype): New.
* config/aarch64/arm_neon.h (vdup_n_f16): New.
(vdupq_n_f16): Likewise.
(vld1_dup_f16): Use vdup_n_f16.
(vld1q_dup_f16): Use vdupq_n_f16.
(vabs_f16): New.
(vabsq_f16, vceqz_f16, vceqzq_f16, vcgez_f16, vcgezq_f16, vcgtz_f16,
vcgtzq_f16, vclez_f16, vclezq_f16, vcltz_f16, vcltzq_f16, vcvt_f16_s16,
vcvtq_f16_s16, vcvt_f16_u16, vcvtq_f16_u16, vcvt_s16_f16, vcvtq_s16_f16,
vcvt_u16_f16, vcvtq_u16_f16, vcvta_s16_f16, vcvtaq_s16_f16,
vcvta_u16_f16, vcvtaq_u16_f16, vcvtm_s16_f16, vcvtmq_s16_f16,
vcvtm_u16_f16, vcvtmq_u16_f16, vcvtn_s16_f16, vcvtnq_s16_f16,
vcvtn_u16_f16, vcvtnq_u16_f16, vcvtp_s16_f16, vcvtpq_s16_f16,
vcvtp_u16_f16, vcvtpq_u16_f16, vneg_f16, vnegq_f16, vrecpe_f16,
vrecpeq_f16, vrnd_f16, vrndq_f16, vrnda_f16, vrndaq_f16, vrndi_f16,
vrndiq_f16, vrndm_f16, vrndmq_f16, vrndn_f16, vrndnq_f16, vrndp_f16,
vrndpq_f16, vrndx_f16, vrndxq_f16, vrsqrte_f16, vrsqrteq_f16, vsqrt_f16,
vsqrtq_f16): Likewise.

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

9 years ago[AArch64][1/10] ARMv8.2-A FP16 data processing intrinsics
jiwang [Mon, 25 Jul 2016 14:02:42 +0000 (14:02 +0000)] 
[AArch64][1/10] ARMv8.2-A FP16 data processing intrinsics

gcc/
* config/aarch64/aarch64-simd.md
(aarch64_<PERMUTE:perm_insn><PERMUTE:perm_hilo><mode>): Use VALL_F16.
(aarch64_ext<mode>): Likewise.
(aarch64_rev<REVERSE:rev_op><mode>): Likewise.
* config/aarch64/aarch64.c (aarch64_evpc_trn): Support V4HFmode and
V8HFmode.
(aarch64_evpc_uzp): Likewise.
(aarch64_evpc_zip): Likewise.
(aarch64_evpc_ext): Likewise.
(aarch64_evpc_rev): Likewise.
* config/aarch64/arm_neon.h (__aarch64_vdup_lane_f16): New.
(__aarch64_vdup_laneq_f16): New..
(__aarch64_vdupq_lane_f16): New.
(__aarch64_vdupq_laneq_f16): New.
(vbsl_f16): New.
(vbslq_f16): New.
(vdup_n_f16): New.
(vdupq_n_f16): New.
(vdup_lane_f16): New.
(vdup_laneq_f16): New.
(vdupq_lane_f16): New.
(vdupq_laneq_f16): New.
(vduph_lane_f16): New.
(vduph_laneq_f16): New.
(vext_f16): New.
(vextq_f16): New.
(vmov_n_f16): New.
(vmovq_n_f16): New.
(vrev64_f16): New.
(vrev64q_f16): New.
(vtrn1_f16): New.
(vtrn1q_f16): New.
(vtrn2_f16): New.
(vtrn2q_f16): New.
(vtrn_f16): New.
(vtrnq_f16): New.
(__INTERLEAVE_LIST): Support float16x4_t, float16x8_t.
(vuzp1_f16): New.
(vuzp1q_f16): New.
(vuzp2_f16): New.
(vuzp2q_f16): New.
(vzip1_f16): New.
(vzip2q_f16): New.
(vmov_n_f16): Reimplement using vdup_n_f16.
(vmovq_n_f16): Reimplement using vdupq_n_f16..

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

9 years ago[AArch64][3/3] Migrate aarch64_expand_prologue/epilogue to aarch64_add_constant
jiwang [Mon, 25 Jul 2016 13:42:43 +0000 (13:42 +0000)] 
[AArch64][3/3] Migrate aarch64_expand_prologue/epilogue to aarch64_add_constant

gcc/
* config/aarch64/aarch64.c (aarch64_add_constant): New parameter
"frame_related_p".  Generate CFA annotation when it's necessary.
(aarch64_expand_prologue): Use aarch64_add_constant.
(aarch64_expand_epilogue): Likewise.
(aarch64_output_mi_thunk): Pass "false" when calling
aarch64_add_constant.

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

9 years ago[AArch64][2/3] Optimize aarch64_add_constant to generate better addition sequences
jiwang [Mon, 25 Jul 2016 13:36:33 +0000 (13:36 +0000)] 
[AArch64][2/3] Optimize aarch64_add_constant to generate better addition sequences

gcc/
* config/aarch64/aarch64.c (aarch64_add_constant): Optimize instruction
sequences.

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

9 years ago[AArch64][1/3] Migrate aarch64_add_constant to new interface & kill aarch64_build_con...
jiwang [Mon, 25 Jul 2016 13:31:44 +0000 (13:31 +0000)] 
[AArch64][1/3] Migrate aarch64_add_constant to new interface & kill aarch64_build_constant

gcc/
* config/aarch64/aarch64.c (aarch64_add_constant): New parameter "mode".
Use aarch64_internal_mov_immediate instead of aarch64_build_constant.
(aarch64_output_mi_thunk): Pass Pmode when calling aarch64_add_constant.
(aarch64_build_constant): Delete.

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

9 years agoFix missing qualification in <ext/rope>
redi [Mon, 25 Jul 2016 12:56:12 +0000 (12:56 +0000)] 
Fix missing qualification in <ext/rope>

2016-07-25  Georeth Chow  <georeth2010@gmail.com>

* include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
_S_concat enumerator.
* testsuite/ext/rope/6.cc: New test.

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

9 years agorevert: nvptx: do not implicitly enable -ftoplevel-reorder
amonakov [Mon, 25 Jul 2016 12:37:29 +0000 (12:37 +0000)] 
revert: nvptx: do not implicitly enable -ftoplevel-reorder

Revert
2016-07-20  Alexander Monakov  <amonakov@ispras.ru>

* config/nvptx/nvptx.c (nvptx_option_override): Do not set
flag_toplevel_reorder.

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

9 years ago2016-07-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Jul 2016 12:35:08 +0000 (12:35 +0000)] 
2016-07-25  Richard Biener  <rguenther@suse.de>

* cgraph.c (cgraph_node::verify_node): Compare against builtin
by using DECL_BUILT_IN_CLASS and DECL_FUNCTION_CODE.
* tree-chkp.c (chkp_gimple_call_builtin_p): Likewise.
* tree-streamer.h (streamer_handle_as_builtin_p): Remove.
(streamer_get_builtin_tree): Likewise.
(streamer_write_builtin): Likewise.
* lto-streamer.h (LTO_builtin_decl): Remove.
* lto-streamer-in.c (lto_read_tree_1): Remove assert.
(lto_input_scc): Remove LTO_builtin_decl handling.
(lto_input_tree_1): Liekwise.
* lto-streamer-out.c (lto_output_tree_1): Remove special
handling of builtins.
(DFS::DFS): Likewise.
* tree-streamer-in.c (streamer_get_builtin_tree): Remove.
* tree-streamer-out.c (pack_ts_function_decl_value_fields): Remove
assert.
(streamer_write_builtin): Remove.

lto/
* lto.c (compare_tree_sccs_1): Remove streamer_handle_as_builtin_p uses.
(unify_scc): Likewise.
(lto_read_decls): Likewise.

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

9 years agoFix tests for targets with sizeof(int) != 32.
saaadhu [Mon, 25 Jul 2016 11:55:45 +0000 (11:55 +0000)] 
Fix tests for targets with sizeof(int) != 32.

gcc/testsuite/

* gcc.dg/torture/pr69352.c (foo): Cast to intptr_t instead of long.
* gcc.dg/torture/pr69771.c: Require int32plus.
* gcc.dg/torture/pr71866.c (inb): Add cast to intptr_t.

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

9 years agoDon't call get_working_sets w/ LTO and -fauto-profile (PR
marxin [Mon, 25 Jul 2016 11:28:52 +0000 (11:28 +0000)] 
Don't call get_working_sets w/ LTO and -fauto-profile (PR

* lto-cgraph.c (input_symtab): Don't call get_working_sets
if flag_auto_profile is set to true.

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

9 years agoHandle loops with loop->latch == NULL (PR gcov-profile/71868)
marxin [Mon, 25 Jul 2016 10:56:08 +0000 (10:56 +0000)] 
Handle loops with loop->latch == NULL (PR gcov-profile/71868)

PR gcov-profile/71868
* cfgloopanal.c (expected_loop_iterations_unbounded): When we
have a function with multiple latches, count them all.

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

9 years agoFix memory leak introduced in r238336
marxin [Mon, 25 Jul 2016 10:52:30 +0000 (10:52 +0000)] 
Fix memory leak introduced in r238336

* tree-ssa-loop-niter.c (loop_only_exit_p): Release body array.

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

9 years agoCall get_ops just for SSA_NAMEs (PR tree-optimization/71987)
marxin [Mon, 25 Jul 2016 10:50:30 +0000 (10:50 +0000)] 
Call get_ops just for SSA_NAMEs (PR tree-optimization/71987)

PR tree-optimization/71987
* tree-ssa-reassoc.c (maybe_optimize_range_tests): Call get_ops
just for SSA_NAMEs. Fix GNU coding style.
* gcc.dg/torture/pr71987.c: New test.

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

9 years agoUse std::mt19937, std::thread and std::atomic to simplify tests
redi [Mon, 25 Jul 2016 10:31:53 +0000 (10:31 +0000)] 
Use std::mt19937, std::thread and std::atomic to simplify tests

* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
std::mt19937, std::thread and std::atomic to simplify test.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.

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

9 years agoAdapt the numbering scheme (PR gcov-profile/64874)
marxin [Mon, 25 Jul 2016 08:42:42 +0000 (08:42 +0000)] 
Adapt the numbering scheme (PR gcov-profile/64874)

PR gcov-profile/64874
* gcov-io.h: Update command about file format.
* gcov-iov.c (main): Adapt the numbering scheme.

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

9 years agoRevert 2015-11-09 sanitizer/obstack configury
amodra [Mon, 25 Jul 2016 01:13:36 +0000 (01:13 +0000)] 
Revert 2015-11-09 sanitizer/obstack configury

The 2015-11-23 sanitizer merge from upstream lost the changes from
f6528435 to sanitizer_common/sanitizer_common_interceptors.inc, which
made use of _OBSTACK_SIZE_T.  So the configury changes to define
_OBSTACK_SIZE_T don't do anything.  This wasn't such a bad thing
anyway..  The configure test wrongly adds -I${srcdir}/../include,
effectively resulting in a test of libiberty/obstack rather than libc
obstack support, and it's the latter that asan and tsan need to work
with.

So, remove the useless configure test.  Upstream santizer project has
been made aware of the problem if glibc obstack support is ever
updated.  Bootsrapped etc. x86_64-linux and committed as obvious.

Revert 2015-11-09  Alan Modra  <amodra@gmail.com>
* configure.ac: Don't substitute OBSTACK_DEFS.
* asan/Makefile.am: Remove OBSTACK_DEFS from DEFS.
* tsan/Makefile.am: Likewise.
* configure: Regenerate.
* Makefile.in: Regenerate.
* asan/Makefile.in: Regenerate.
* interception/Makefile.in: Regenerate.
* libbacktrace/Makefile.in: Regenerate.
* lsan/Makefile.in: Regenerate.
* sanitizer_common/Makefile.in: Regenerate.
* tsan/Makefile.in: Regenerate.
* ubsan/Makefile.in: Regenerate.

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

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

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

9 years ago PR c++/71515 - typename in partial specialization
jason [Sun, 24 Jul 2016 23:40:05 +0000 (23:40 +0000)] 
PR c++/71515 - typename in partial specialization

* pt.c (resolve_typename_type): Try to avoid calling
currently_open_class.

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

9 years agogcc/ChangeLog:
kugan [Sun, 24 Jul 2016 12:47:29 +0000 (12:47 +0000)] 
gcc/ChangeLog:

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

PR middle-end/66726
* tree-ssa-reassoc.c (optimize_vec_cond_expr): Handle tcc_compare stmt
whose result is used in PHI.
(final_range_test_p): Likewise.
(maybe_optimize_range_tests): Likewise.

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

9 years ago PR c++/66617 - virtual base list-initialization
jason [Sun, 24 Jul 2016 02:59:34 +0000 (02:59 +0000)] 
PR c++/66617 - virtual base list-initialization

* call.c (add_list_candidates): Handle VTT parm.
(build_new_method_call_1): Likewise.

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

9 years ago PR c++/55922 - list-value-initialization of base
jason [Sun, 24 Jul 2016 02:56:22 +0000 (02:56 +0000)] 
PR c++/55922 - list-value-initialization of base

PR c++/63151
* init.c (expand_aggr_init_1): Handle list-initialization from {}.

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

9 years ago PR c++/70709 - zero-length array member
jason [Sun, 24 Jul 2016 02:52:33 +0000 (02:52 +0000)] 
PR c++/70709 - zero-length array member

* class.c (walk_subobject_offsets): Handle 0-length array.

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

9 years ago PR c++/70778 - member template template parameter
jason [Sun, 24 Jul 2016 02:50:16 +0000 (02:50 +0000)] 
PR c++/70778 - member template template parameter

* pt.c (tsubst): Also substitute into the template of a
BOUND_TEMPLATE_TEMPLATE_PARM.

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

9 years ago PR c++/71738 - nested template friend
jason [Sun, 24 Jul 2016 02:39:41 +0000 (02:39 +0000)] 
PR c++/71738 - nested template friend

* pt.c (lookup_template_class_1): Handle getting template from tsubst.

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

9 years ago PR c++/71350 - error recursion with initializer-list
jason [Sun, 24 Jul 2016 02:35:37 +0000 (02:35 +0000)] 
PR c++/71350 - error recursion with initializer-list

* decl.c (reshape_init_r): Check complain for missing braces warning.

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

9 years ago PR c++/71576 - bitfield and rvalue reference
jason [Sun, 24 Jul 2016 02:25:36 +0000 (02:25 +0000)] 
PR c++/71576 - bitfield and rvalue reference

* call.c (convert_like_real): Use lvalue_kind.

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

9 years ago PR c++/71748 - call to base destructor in template.
jason [Sun, 24 Jul 2016 02:19:46 +0000 (02:19 +0000)] 
PR c++/71748 - call to base destructor in template.

PR c++/52746
* pt.c (tsubst_baselink): Call
adjust_result_of_qualified_name_lookup for unqualified
destructors.

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

9 years agoDaily bump.
gccadmin [Sun, 24 Jul 2016 00:16:22 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago2016-07-22 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Sat, 23 Jul 2016 02:54:53 +0000 (02:54 +0000)] 
2016-07-22  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Reformat two multi-line strings.

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

9 years agoDaily bump.
gccadmin [Sat, 23 Jul 2016 00:16:21 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago2016-07-22 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Fri, 22 Jul 2016 18:53:11 +0000 (18:53 +0000)] 
2016-07-22  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/71935
* check.c (is_c_interoperable): Simplify right expression.

2016-07-22  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/71935
* gfortran.dg/c_sizeof_1.f90: Move invalid code to ...
* gfortran.dg/c_sizeof_6.f90: here.  Test for error.
* gfortran.dg/pr71935.f90: New test.

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

9 years agoPR c++/71675 - __atomic_compare_exchange_n returns wrong type for typed enum
msebor [Fri, 22 Jul 2016 18:32:08 +0000 (18:32 +0000)] 
PR c++/71675 - __atomic_compare_exchange_n returns wrong type for typed enum

gcc/c-family/ChangeLog:

PR c++/71675
* c-common.c (resolve_overloaded_builtin): Avoid converting
__atomic_compare_exchange_n return type to that of what its
first argument points to.

gcc/testsuite/ChangeLog:

PR c++/71675
* g++.dg/ext/atomic-3.C: New test.
* gcc.dg/atomic/pr71675.c: New test.

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

9 years ago libgo: update to go1.7rc3
ian [Fri, 22 Jul 2016 18:15:38 +0000 (18:15 +0000)] 
libgo: update to go1.7rc3

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

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

9 years agogcc/ChangeLog:
msebor [Fri, 22 Jul 2016 16:16:17 +0000 (16:16 +0000)] 
gcc/ChangeLog:
* doc/extend.texi (Compound Literals): Add '@' missed in last commit.

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

9 years agoPR c/71560 - union compound literal initializes wrong union field
msebor [Fri, 22 Jul 2016 15:40:51 +0000 (15:40 +0000)] 
PR c/71560 - union compound literal initializes wrong union field

gcc/ChangeLog:
* doc/extend.texi (Compound Literals): Correct and clarify.
(Cast to Union): Same.

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

9 years agogcc/ChangeLog:
kelvin [Fri, 22 Jul 2016 15:13:20 +0000 (15:13 +0000)] 
gcc/ChangeLog:

2016-07-22  Kelvin Nilsen  <kelvin@gcc.gnu.org>

* config/rs6000/rs6000.c (rs6000_option_override_internal): Add
comments to explain why certain error messages make mention of
undocumented options.
(rs6000_invalid_builtin): Change error messages to replace mention
of undocumented options with mention of the -mcpu=power9 option
that enables those undocumented options.
* config/rs6000/rs6000.h (MASK_FLOAT128): New macro.
(RS6000_BTM_FLOAT128): Use the new MASK_FLOAT128 macro in the
definition of this macro to correct an existing error.
* config/rs6000/rs6000.opt: Add the Undocumented qualifier to the
mpower9-fusion, mpower9-vector, mpower9-dform, and mmodulo entries.
* doc/extend.texi (PowerPC AltiVec Built-in Functions): Modify
descriptions of built-in functions so that they depend on
-mcpu=power9 instead of on the corresponding undocumented flags.
* doc/invoke.texi (Option Summary):  Remove all mention of newly
undocumented flags.
(IBM RS/6000 and PowerPC Options): Likewise.
* doc/md.texi (Constraints for Particuliar Machines): Remove all
mention of newly undocumented flags.

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

9 years agoMove allocator in std::string and RB tree move constructors
redi [Fri, 22 Jul 2016 15:03:11 +0000 (15:03 +0000)] 
Move allocator in std::string and RB tree move constructors

PR libstdc++/71964
* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
(basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
* testsuite/21_strings/basic_string/allocator/71964.cc: New test.
* testsuite/23_containers/set/allocator/71964.cc: New test.

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

9 years ago2016-07-22 Evgeny Stupachenko <evstupac@gmail.com>
iverbin [Fri, 22 Jul 2016 15:00:42 +0000 (15:00 +0000)] 
2016-07-22  Evgeny Stupachenko  <evstupac@gmail.com>

gcc/
* ipa-cp.c (determine_versionability): Do not create constprop clones,
when target_clones attribute is set.
gcc/testsuite/
* gcc.target/i386/mvc8.c: New test.

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

9 years agoc/ChangeLog:
uros [Fri, 22 Jul 2016 14:09:55 +0000 (14:09 +0000)] 
c/ChangeLog:

* c-typeck.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1,

c-family/ChangeLog:

* c-common.c: Use HOST_WIDE_INT_M1U instead of
~(unsigned HOST_WIDE_INT) 0.

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

9 years ago * common.opt (funsafe-loop-optimizations): Mark ignore.
amker [Fri, 22 Jul 2016 13:25:59 +0000 (13:25 +0000)] 
* common.opt (funsafe-loop-optimizations): Mark ignore.
* doc/invoke.texi (funsafe-loop-optimizations): Remove.
* loop-iv.c (get_simple_loop_desc): Remove unsafe-loop-optimizations
related code.
* tree-ssa-loop-niter.c (finite_loop_p): Ditto.
* config/bfin/bfin.c (bfin_can_use_doloop_p): Ditto.

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

9 years ago * tree-ssa-loop-niter.h (number_of_iterations_exit_assumptions): New
amker [Fri, 22 Jul 2016 13:22:03 +0000 (13:22 +0000)] 
* tree-ssa-loop-niter.h (number_of_iterations_exit_assumptions): New
Parameter.
* tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions): New
Parameter.
(number_of_iterations_exit): Warn missed loop optimization for
possible infinite loops.

gcc/testsuite
* gcc.dg/tree-ssa/pr19210-1.c: Refine test strings.
* gcc.dg/tree-ssa/pr19210-2.c: Delete.

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

9 years agoSubject: [PATCH] rs6000: Fix logic for when to emit .machine (PR71216)
segher [Fri, 22 Jul 2016 13:08:19 +0000 (13:08 +0000)] 
Subject: [PATCH] rs6000: Fix logic for when to emit .machine (PR71216)

The current logic determining whether to use .machine in the generated
asm code puts it there if the compiler is not configured with a default
target cpu, _or_ no -mcpu= was given on the command line.  It should
be "and" instead.

PR target/71216
* config/rs6000/rs6000.c (rs6000_file_start): Fix condition for
when to emit a ".machine" pseudo-op.

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

9 years ago2016-07-22 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Fri, 22 Jul 2016 10:38:32 +0000 (10:38 +0000)] 
2016-07-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/71795
* frontend-passes.c (combine_array_constructor):  Don't
do anything if the expression is inside an array iterator.

2016-07-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/71795
* gfortran.dg/constructor_50.f90:  New test.

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

9 years agoConsider functions with xloc.file == NULL (PR
marxin [Fri, 22 Jul 2016 10:19:57 +0000 (10:19 +0000)] 
Consider functions with xloc.file == NULL (PR

PR gcov-profile/69028
PR gcov-profile/62047
* g++.dg/cilk-plus/pr69028.C: New test.
PR gcov-profile/69028
PR gcov-profile/62047
* cilk.c (create_cilk_helper_decl): Set location of a new decl
to the current_function_decl.
PR gcov-profile/69028
PR gcov-profile/62047
* coverage.c (coverage_compute_lineno_checksum): Do not
calculate checksum for fns w/o xloc.file.
(coverage_compute_profile_id): Likewise.

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

9 years agolibgfortran/ChangeLog:
vehre [Fri, 22 Jul 2016 09:58:50 +0000 (09:58 +0000)] 
libgfortran/ChangeLog:

2016-07-22  Andre Vehreschild  <vehre@gcc.gnu.org>

* caf/libcaf.h: Add parameter stat to caf_get() and
caf_send()'s function prototypes.
* caf/single.c (_gfortran_caf_get): Implement reporting
error using stat instead of abort().
(_gfortran_caf_send): Same.
(_gfortran_caf_sendget): Use NULL for stat when calling
caf_send().

gcc/testsuite/ChangeLog:

2016-07-22  Andre Vehreschild  <vehre@gcc.gnu.org>

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

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

9 years agogcc/fortran/ChangeLog:
vehre [Fri, 22 Jul 2016 09:46:54 +0000 (09:46 +0000)] 
gcc/fortran/ChangeLog:

2016-07-22  Andre Vehreschild  <vehre@gcc.gnu.org>

* expr.c (gfc_find_stat_co): Fixed whitespaces.
* gfortran.texi: Fixed typos and reversed meaning of caf_get()'s
src and dst description.
* trans-decl.c (gfc_build_builtin_function_decls): Fixed style
and corrected fnspec for caf functions.
* trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Fixed style.
(conv_caf_send): Dito.

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

9 years ago * config/avr/avr.c (TARGET_SECONDARY_RELOAD): Remove hook define...
gjl [Fri, 22 Jul 2016 09:19:35 +0000 (09:19 +0000)] 
* config/avr/avr.c (TARGET_SECONDARY_RELOAD): Remove hook define...
(avr_secondary_reload): ...and implementation.
(avr_adjust_insn_length) [ADJUST_LEN_LPM]: Remove handling.
* config/avr/avr.md (reload_in<mode>): Remove insns.
(adjust_len) [lpm]: Remove insn attribute value.
* config/avr/predicates.md (flash_operand): Remove insn predicate.

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

9 years agoFix params.exp test-cases
marxin [Fri, 22 Jul 2016 09:08:56 +0000 (09:08 +0000)] 
Fix params.exp test-cases

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

9 years agoUse correct form of delete in libstdc++.exp
redi [Fri, 22 Jul 2016 08:33:26 +0000 (08:33 +0000)] 
Use correct form of delete in libstdc++.exp

* testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
delete[] instead of delete.

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

9 years ago PR c++/69223 - ICE with deduced template return type.
jason [Fri, 22 Jul 2016 03:45:54 +0000 (03:45 +0000)] 
PR c++/69223 - ICE with deduced template return type.

* semantics.c (apply_deduced_return_type): Call
complete_type_or_else before building the new RESULT_DECL.

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

9 years ago PR c++/71274 - deprecated warning without use.
jason [Fri, 22 Jul 2016 03:45:48 +0000 (03:45 +0000)] 
PR c++/71274 - deprecated warning without use.

* decl2.c (maybe_instantiate_decl): Split out from mark_used.
(decl_constant_var_p): Use it instead.

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

9 years ago PR c++/71630 - extern variable template
jason [Fri, 22 Jul 2016 03:45:43 +0000 (03:45 +0000)] 
PR c++/71630 - extern variable template

* pt.c (instantiate_decl): Fix pattern_defined for namespace scope
variable templates.

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

9 years ago PR c++/71913 - missing copy elision with new.
jason [Fri, 22 Jul 2016 03:45:37 +0000 (03:45 +0000)] 
PR c++/71913 - missing copy elision with new.

* call.c (unsafe_copy_elision_p): It's OK to elide when
initializing an unknown object.

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

9 years ago * call.c (build_over_call): Check unsafe_copy_elision_p even for
jason [Fri, 22 Jul 2016 03:45:30 +0000 (03:45 +0000)] 
* call.c (build_over_call): Check unsafe_copy_elision_p even for
trivial constructors.
* method.c (do_build_copy_constructor): Don't copy tail padding
even in a trivial constructor.

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

9 years ago compiler: fix check for duplicate declaration
ian [Fri, 22 Jul 2016 00:21:51 +0000 (00:21 +0000)] 
compiler: fix check for duplicate declaration

    The compiler check that issued a duplicate declaration error for
        a, a, a := 1, 2, 3
    was incorrectly issuing an error for
        a, a, a = 1, 2, 3
    While this is not particularly useful, it is valid Go.

    Test is https://golang.org/cl/25143.

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

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

9 years agoDaily bump.
gccadmin [Fri, 22 Jul 2016 00:16:20 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago2016-07-21 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Fri, 22 Jul 2016 00:12:28 +0000 (00:12 +0000)] 
2016-07-21  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/vec-extract.h: New files to check the
vec_extract built-in functions for all vector types, testing
accessing each element, both with constant and variable element
numbers.
* gcc.target/powerpc/vec-extract-v16qi.c: Likewise.
* gcc.target/powerpc/vec-extract-v16qiu.c: Likewise.
* gcc.target/powerpc/vec-extract-v2df.c: Likewise.
* gcc.target/powerpc/vec-extract-v2di.c: Likewise.
* gcc.target/powerpc/vec-extract-v4sf.c: Likewise.
* gcc.target/powerpc/vec-extract-v4si.c: Likewise.
* gcc.target/powerpc/vec-extract-v4siu.c: Likewise.
* gcc.target/powerpc/vec-extract-v8hi.c: Likewise.
* gcc.target/powerpc/vec-extract-v8hiu.c: Likewise.

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

9 years agoFix naming, qualification and broken test for propagate_const
redi [Thu, 21 Jul 2016 19:39:03 +0000 (19:39 +0000)] 
Fix naming, qualification and broken test for propagate_const

* include/experimental/propagate_const (propagate_const::__t): Rename
to _M_t and remove comment. Qualify std::move and std::forward.
* testsuite/experimental/propagate_const/cons/default.cc: Fix test.

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

9 years agoDefine missing delete operators in libstdc++ testsuite
redi [Thu, 21 Jul 2016 19:38:57 +0000 (19:38 +0000)] 
Define missing delete operators in libstdc++ testsuite

* testsuite/23_containers/vector/zero_sized_allocations.cc:
Define sized deallocation function.
* testsuite/util/testsuite_new_operators.h:
(operator delete(void*, const std::nothrow_t&)): Define nothrow
deallocation function.

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

9 years agoFix out-of-bound array accesses in libstdc++ testsuite
redi [Thu, 21 Jul 2016 19:38:51 +0000 (19:38 +0000)] 
Fix out-of-bound array accesses in libstdc++ testsuite

* testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
reads past the end of strings.
* testsuite/21_strings/basic_string/operations/compare/char/1.cc:
Likewise.
* testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
invalid array accesses.
* testsuite/experimental/string_view/operations/compare/char/1.cc:
Fix read past the end of string.
* testsuite/util/testsuite_character.cc: Fix out-of-bounds write.

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

9 years agoFix missing returns in libstdc++ testsuite
redi [Thu, 21 Jul 2016 19:38:44 +0000 (19:38 +0000)] 
Fix missing returns in libstdc++ testsuite

* testsuite/24_iterators/container_access.cc: Fix missing returns.
* testsuite/24_iterators/range_access_cpp14.cc: Likewise.

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

9 years agoRemove memory leaks in libstdc++ testsuite
redi [Thu, 21 Jul 2016 19:38:32 +0000 (19:38 +0000)] 
Remove memory leaks in libstdc++ testsuite

* testsuite/18_support/new_delete_placement.cc: Don't allocate (and
leak) memory for arguments to placement delete.
* testsuite/20_util/addressof/1.cc: Don't leak memory.
* testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
Likewise.

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

9 years ago016-07-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Thu, 21 Jul 2016 19:11:26 +0000 (19:11 +0000)] 
016-07-21  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR middle-end/71876
        * builtin-attrs.def (ATTR_RT_NOTHROW_LEAF_LIST): New return twice
        attribute.
        * builtins.def (BUILT_IN_SETJMP): Use ATTR_RT_NOTHROW_LEAF_LIST here.
        * calls.c (special_function_p): Remove the special handling of the
        "__builtin_" prefix.

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

9 years ago016-07-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Thu, 21 Jul 2016 19:06:02 +0000 (19:06 +0000)] 
016-07-21  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR middle-end/71876
        * calls.c (gimple_maybe_alloca_call_p): New function.  Return true
        if STMT may be an alloca call.
        (gimple_alloca_call_p, alloca_call_p): Return only true for the
        builtin alloca call.
        * calls.h (gimple_maybe_alloca_call_p): New function.
        * tree-inline.c (inline_forbidden_p_stmt): Use
        gimple_maybe_alloca_call_p here.

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

9 years agoMerge liboffloadmic from upstream
iverbin [Thu, 21 Jul 2016 18:41:27 +0000 (18:41 +0000)] 
Merge liboffloadmic from upstream

liboffloadmic/
* Makefile.am (myo_inc_dir): Remove.
(toolexeclib_LTLIBRARIES): Remove libmyo-client.la and
libmyo-service.la.
(liboffloadmic_cppflags): Remove -DMYO_SUPPORT.
(liboffloadmic_host_la_SOURCES): Remove offload_myo_host.cpp.
(liboffloadmic_target_la_SOURCES): Remove offload_myo_target.cpp.
(liboffloadmic_target_la_LIBADD): Remove libmyo-service.la.
(libmyo_client_la_SOURCES, libmyo_service_la_SOURCES): Remove.
(libmyo_client_la_DEPENDENCIES, libmyo_service_la_DEPENDENCIES): Remove.
(libmyo_client_la_CPPFLAGS, libmyo_service_la_CPPFLAGS): Remove.
(libmyo_client_la_LDFLAGS, libmyo_service_la_LDFLAGS): Remove.
* Makefile.in: Regenerate.
* doc/doxygen/header.tex: Merge from upstream, version 20160715
<https://openmprtl.org/sites/default/files/liboffload_oss_20160715.tgz>.
* runtime/cean_util.cpp: Likewise.
* runtime/cean_util.h: Likewise.
* runtime/coi/coi_client.cpp: Likewise.
* runtime/coi/coi_client.h: Likewise.
* runtime/coi/coi_server.cpp: Likewise.
* runtime/coi/coi_server.h: Likewise.
* runtime/compiler_if_host.cpp: Likewise.
* runtime/compiler_if_host.h: Likewise.
* runtime/compiler_if_target.cpp: Likewise.
* runtime/compiler_if_target.h: Likewise.
* runtime/dv_util.cpp: Likewise.
* runtime/dv_util.h: Likewise.
* runtime/liboffload_error.c: Likewise.
* runtime/liboffload_error_codes.h: Likewise.
* runtime/liboffload_msg.c: Likewise.
* runtime/liboffload_msg.h: Likewise.
* runtime/mic_lib.f90: Likewise.
* runtime/offload.h: Likewise.
* runtime/offload_common.cpp: Likewise.
* runtime/offload_common.h: Likewise.
* runtime/offload_engine.cpp: Likewise.
* runtime/offload_engine.h: Likewise.
* runtime/offload_env.cpp: Likewise.
* runtime/offload_env.h: Likewise.
* runtime/offload_host.cpp: Likewise.
* runtime/offload_host.h: Likewise.
* runtime/offload_iterator.h: Likewise.
* runtime/offload_myo_host.cpp: Likewise.
* runtime/offload_myo_host.h: Likewise.
* runtime/offload_myo_target.cpp: Likewise.
* runtime/offload_myo_target.h: Likewise.
* runtime/offload_omp_host.cpp: Likewise.
* runtime/offload_omp_target.cpp: Likewise.
* runtime/offload_orsl.cpp: Likewise.
* runtime/offload_orsl.h: Likewise.
* runtime/offload_table.cpp: Likewise.
* runtime/offload_table.h: Likewise.
* runtime/offload_target.cpp: Likewise.
* runtime/offload_target.h: Likewise.
* runtime/offload_target_main.cpp: Likewise.
* runtime/offload_timer.h: Likewise.
* runtime/offload_timer_host.cpp: Likewise.
* runtime/offload_timer_target.cpp: Likewise.
* runtime/offload_trace.cpp: Likewise.
* runtime/offload_trace.h: Likewise.
* runtime/offload_util.cpp: Likewise.
* runtime/offload_util.h: Likewise.
* runtime/ofldbegin.cpp: Likewise.
* runtime/ofldend.cpp: Likewise.
* runtime/orsl-lite/include/orsl-lite.h: Likewise.
* runtime/orsl-lite/lib/orsl-lite.c: Likewise.
* runtime/use_mpss2.txt: Remove.
* include/coi/common/COIEngine_common.h: Merge from upstream, MPSS
version 3.7.1
<http://registrationcenter-download.intel.com/akdlm/irc_nas/9226/
mpss-3.7.1-linux.tar>.
* include/coi/common/COIEvent_common.h: Likewise.
* include/coi/common/COIMacros_common.h: Likewise.
* include/coi/common/COIPerf_common.h: Likewise.
* include/coi/common/COIResult_common.h: Likewise.
* include/coi/common/COISysInfo_common.h: Likewise.
* include/coi/common/COITypes_common.h: Likewise.
* include/coi/sink/COIBuffer_sink.h: Likewise.
* include/coi/sink/COIPipeline_sink.h: Likewise.
* include/coi/sink/COIProcess_sink.h: Likewise.
* include/coi/source/COIBuffer_source.h: Likewise.
* include/coi/source/COIEngine_source.h: Likewise.
* include/coi/source/COIEvent_source.h: Likewise.
* include/coi/source/COIPipeline_source.h: Likewise.
* include/coi/source/COIProcess_source.h: Likewise.
* include/myo/myo.h: Remove.
* include/myo/myoimpl.h: Remove.
* include/myo/myotypes.h: Remove.
* plugin/Makefile.am (AM_LDFLAGS): Remove -lmyo-service.
* plugin/Makefile.in: Regenerate.
* plugin/libgomp-plugin-intelmic.cpp (LD_LIBRARY_PATH_ENV): Remove.
(MIC_LD_LIBRARY_PATH_ENV): Remove.
(init): Do not set MIC_LD_LIBRARY_PATH.  Now liboffloadmic uses only
LD_LIBRARY_PATH.
* plugin/offload_target_main.cpp: Update copyright years.
* runtime/emulator/coi_common.h: Likewise.
* runtime/emulator/coi_device.cpp: Likewise.
* runtime/emulator/coi_device.h: Likewise.
* runtime/emulator/coi_host.cpp: Likewise.
(COIBufferCreate): Allow COI_BUFFER_OPENCL.
(COIEngineGetInfo): Return COI_DEVICE_KNL instead of COI_ISA_x86_64.
* runtime/emulator/coi_host.h: Update copyright years.
* runtime/emulator/coi_version_asm.h: Likewise.
* runtime/emulator/coi_version_linker_script.map: Likewise.
* runtime/emulator/myo_client.cpp: Remove.
* runtime/emulator/myo_service.cpp: Remove.
* runtime/emulator/myo_service.h: Remove.
* runtime/emulator/myo_version_asm.h: Remove.
* runtime/emulator/myo_version_linker_script.map: Remove.

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

9 years ago PR c++/71728
jakub [Thu, 21 Jul 2016 18:22:32 +0000 (18:22 +0000)] 
PR c++/71728
* constexpr.c (potential_constant_expression_1) <case GOTO_EXPR>:
Replace assert with test, return false if the goto isn't break
or continue.  Formatting fix.

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

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

9 years agoFix build of spellcheck-tree.c with older gccs
dmalcolm [Thu, 21 Jul 2016 17:21:12 +0000 (17:21 +0000)] 
Fix build of spellcheck-tree.c with older gccs

gcc/ChangeLog:
* spellcheck-tree.c (best_macro_match::best_macro_match):
Explictly specify the template arguments when invoking the base
class constructor, to help older C++ compilers.

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

9 years ago PR sanitizer/71953
jakub [Thu, 21 Jul 2016 16:17:58 +0000 (16:17 +0000)] 
PR sanitizer/71953
* asan.c (asan_dynamic_init_call): Call asan_init_shadow_ptr_types
before builtin_decl_implicit.

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

9 years ago[Patch 3/2 ifcvt costs] Don't expand a conditional move between identical sources
jgreenhalgh [Thu, 21 Jul 2016 15:41:59 +0000 (15:41 +0000)] 
[Patch 3/2 ifcvt costs] Don't expand a conditional move between identical sources

gcc/

* optabs.c (emit_condiitonal_move): Short circuit for identical
sources.

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

9 years ago[Patch 2/2 ifcvt costs] Introduce a new cost model for ifcvt.
jgreenhalgh [Thu, 21 Jul 2016 15:40:24 +0000 (15:40 +0000)] 
[Patch 2/2 ifcvt costs] Introduce a new cost model for ifcvt.

gcc/

* ifcvt.c (noce_if_info): New fields: speed_p, original_cost,
max_seq_cost.  Removed fields: then_cost, else_cost, branch_cost.
(noce_conversion_profitable_p): New.
(noce_try_store_flag_constants): Use it.
(noce_try_addcc): Likewise.
(noce_try_store_flag_mask): Likewise.
(noce_try_cmove): Likewise.
(noce_try_cmove_arith): Likewise.
(bb_valid_for_noce_process_p): Add to the cost parameter rather than
overwriting it.
(noce_convert_multiple_sets): Move cost model to here, from...
(bb_ok_for_noce_convert_multiple_sets) ...here.
(noce_process_if_block): Update calls for above changes.
(noce_find_if_block): Record new noce_if_info parameters.

gcc/testsuite/

* gcc.dg/ifcvt-2.c: Use parameter to guide if-conversion heuristics.
* gcc.dg/ifcvt-3.c: Use parameter to guide if-conversion heuristics.
* gcc.dg/pr68435.c: Use parameter to guide if-conversion heuristics.
* gcc.dg/ifcvt-4.c: Use parameter to guide if-conversion heuristics.
* gcc.dg/ifcvt-5.c: Use parameter to guide if-conversion heuristics.

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

9 years ago[Patch 1/2 ifcvt costs] New target hook: max_noce_ifcvt_seq_cost
jgreenhalgh [Thu, 21 Jul 2016 15:37:50 +0000 (15:37 +0000)] 
[Patch 1/2 ifcvt costs] New target hook: max_noce_ifcvt_seq_cost

gcc/

* target.def (max_noce_ifcvt_seq_cost): New.
* doc/tm.texi.in (TARGET_MAX_NOCE_IFCVT_SEQ_COST): Document it.
* doc/tm.texi: Regenerate.
* targhooks.h (default_max_noce_ifcvt_seq_cost): New.
* targhooks.c (default_max_noce_ifcvt_seq_cost): New.
* params.def (PARAM_MAX_RTL_IF_CONVERSION_PREDICTABLE_COST): New.
(PARAM_MAX_RTL_IF_CONVERSION_UNPREDICTABLE_COST): Likewise.
* doc/invoke.texi: Document new params.

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

9 years ago2016-07-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Jul 2016 13:00:32 +0000 (13:00 +0000)] 
2016-07-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71947
* tree-vrp.c (extract_range_from_assert): Singleton symbolic
ranges have useful limit_vr information.

* gcc.dg/tree-ssa/vrp102.c: New testcase.

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

9 years agoDo not divide by zero in analyze_brprob.py
marxin [Thu, 21 Jul 2016 12:53:24 +0000 (12:53 +0000)] 
Do not divide by zero in analyze_brprob.py

* analyze_brprob.py: If there's no loop, do not calculate
average number of loop iterations.

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

9 years ago2016-07-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 Jul 2016 12:25:00 +0000 (12:25 +0000)] 
2016-07-21  Richard Biener  <rguenther@suse.de>

* function-tests.c (build_trivial_generic_function): Set
BLOCK_SUPERCONTEXT of DECL_INITIAL.
* omp-low.c (create_omp_child_function): Likewise.
(grid_expand_target_grid_body): Likewise.
* cgraphunit.c (init_lowered_empty_function): Likewise.
(cgraph_node::expand_thunk): Likewise.
* tree-parloops.c (create_loop_fn): Likewise.
* ipa.c (cgraph_build_static_cdtor_1): Likewise.

cp/
* vtable-class-hierarchy.c (vtv_generate_init_routine): Set
DECL_IGNORED_P.

java/
* jcf-parse.c (java_emit_static_constructor): Set
BLOCK_SUPERCONTEXT of DECL_INITIAL.

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

9 years ago2016-07-21 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
prathamesh3492 [Thu, 21 Jul 2016 12:12:05 +0000 (12:12 +0000)] 
2016-07-21  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

* tree-ssa-strlen.c (strlen_dom_walker::before_dom_children): Fix typo
in comment.

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

9 years ago Some patterns for moving one bit around by BST + BLD.
gjl [Thu, 21 Jul 2016 11:00:56 +0000 (11:00 +0000)] 
Some patterns for moving one bit around by BST + BLD.
* config/avr/avr.md (any_extract, any_shiftrt): New code iterators.
(*insv.extract, *insv.shiftrt, *insv.not-bit.0, *insv.not-bit.7)
(*insv.xor-extract, *insv.xor1-bit.0): New insns.
(adjust_len) [insv_notbit, insv_notbit_0, insv_notbit_7]: New
values for insn attribute.
* config/avr/avr.c (avr_out_insert_notbit): New function.
(avr_adjust_insn_length): Handle ADJUST_LEN_INSV_NOTBIT,
ADJUST_LEN_INSV_NOTBIT_0/_7.
* config/avr/avr-protos.h (avr_out_insert_notbit): New proto.

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

9 years ago * tree-chrec.c (convert_affine_scev): New parameter. Pass new arg.
amker [Thu, 21 Jul 2016 10:52:13 +0000 (10:52 +0000)] 
* tree-chrec.c (convert_affine_scev): New parameter.  Pass new arg.
(chrec_convert_1, chrec_convert): Ditto.
* tree-chrec.h (chrec_convert, convert_affine_scev): New parameter.
* tree-scalar-evolution.c (interpret_rhs_expr): Pass new arg.
* tree-vrp.c (adjust_range_with_scev): Ditto.
* tree-ssa-loop-niter.c (idx_infer_loop_bounds): Ditto.
(scev_var_range_cant_overflow): New function.
(scev_probably_wraps_p): New parameter.  Call above function.
* tree-ssa-loop-niter.h (scev_probably_wraps_p): New parameter.

gcc/testsuite
* gcc.dg/tree-ssa/scev-15.c: New.

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