Nicolas Koenig
7b3ee9c97d
re PR fortran/35339 (Improve translation of implied do loop in transfer)
...
2017-06-05 Nicolas Koenig <koenigni@student.ethz.ch>
PR fortran/35339
* frontend-passes.c (traverse_io_block): New function.
(simplify_io_impl_do): New function.
(optimize_namespace): Invoke gfc_code_walker with
simplify_io_impl_do.
2017-06-05 Nicolas Koenig <koenigni@student.ethz.ch>
PR fortran/35339
* gfortran.dg/implied_do_io_1.f90: New Test.
* gfortran.dg/implied_do_io_2.f90: New Test.
From-SVN: r248877
2017-06-05 12:35:11 +00:00
Renlin Li
e4d1c5c438
[testsuite] Add large_long_double target selector to related tests in Wfloat-conversion.c
...
testsuite/
2017-06-05 Renlin Li <renlin.li@arm.com>
* c-c++-common/Wfloat-conversion.c: Add large_long_double target
selector to related line.
From-SVN: r248876
2017-06-05 10:40:37 +00:00
Jonathan Wakely
6c24177862
Optimize std::advance for single increments
...
* include/bits/stl_iterator_base_funcs.h
(__advance<_RandomAccessIterator, _Distance>): Optimize for next/prev
cases where incrementing or decrementing a single step.
From-SVN: r248875
2017-06-05 11:34:13 +01:00
Jonathan Wakely
d08606ce6c
Add noexcept to shared_ptr owner comparisons (LWG 2873)
...
* include/bits/shared_ptr_base.h (__shared_ptr::owner_before)
(__weak_ptr::owner_before, _Sp_owner_less::operator()): Add noexcept
specifiers as per LWG 2873 and LWG 2942.
* testsuite/20_util/owner_less/noexcept.cc: New.
* testsuite/20_util/shared_ptr/observers/owner_before.cc: Test
noexcept guarantees.
* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
From-SVN: r248874
2017-06-05 10:33:19 +01:00
Jan Hubicka
d91561cb51
cold_partition_label.c: Update template.
...
* gcc.dg/tree-prof/cold_partition_label.c: Update template.
* tree-ssa-loop-im.c (execute_sm_if_changed): Add FLAG_BBS parameter;
update profile.
(sm_set_flag_if_changed): Add bbs field.
(execute_sm_if_changed_flag_set): Pass BBS.
(execute_sm): Update.
From-SVN: r248872
2017-06-05 09:18:57 +00:00
Kyrylo Tkachov
d83950138b
[AArch64] Add combine pattern for storing lane zero of a vector
...
* config/aarch64/aarch64-simd.md (aarch64_store_lane0<mode>):
New pattern.
* gcc.target/aarch64/store_lane0_str_1.c: New test.
From-SVN: r248871
2017-06-05 08:52:02 +00:00
Kyrylo Tkachov
279dc4b464
[AArch64] Use SUBS for parallel subtraction and comparison with immediate
...
* config/aarch64/aarch64.md (sub<mode>3_compare1_imm): New define_insn.
(peephole2): New peephole2 to emit the above.
* config/aarch64/predicates.md (aarch64_sub_immediate): New predicate.
* gcc.target/aarch64/subs_compare_2.c: New test.
From-SVN: r248870
2017-06-05 08:49:59 +00:00
Kyrylo Tkachov
e49d8b68a2
[AArch64] Peephole for SUBS
...
* config/aarch64/aarch64.c (define_peephole2 above
*sub_<shift>_<mode>): New peephole.
* gcc.target/aarch64/subs_compare_1.c: New test.
From-SVN: r248869
2017-06-05 08:46:28 +00:00
Chenghua Xu
4456f65d43
div-9.c: Delete duplicate test.
...
2017-06-05 Chenghua Xu <paul.hua.gm@gmail.com>
* gcc.target/mips/div-9.c: Delete duplicate test.
* gcc.target/mips/div-10.c: Ditto.
* gcc.target/mips/div-11.c: Ditto.
* gcc.target/mips/div-12.c: Ditto.
From-SVN: r248868
2017-06-05 02:13:30 +00:00
GCC Administrator
36575b70f5
Daily bump.
...
From-SVN: r248867
2017-06-05 00:16:31 +00:00
Jan Hubicka
3995f3a220
i386.c (make_resolver_func): Update.
...
2017-05-23 Jan Hubicka <hubicka@ucw.cz>
* config/i386/i386.c (make_resolver_func): Update.
* Makefile.in: Add profile-count.h and profile-count.o
* auto-profile.c (afdo_indirect_call): Update to new API.
(afdo_set_bb_count): Update.
(afdo_propagate_edge): Update.
(afdo_propagate_circuit): Update.
(afdo_calculate_branch_prob): Update.
(afdo_annotate_cfg): Update.
* basic-block.h: Include profile-count.h
(struct edge_def): Turn count to profile_count.
(struct basic_block_def): Likewie.
(REG_BR_PROB_BASE): Move to profile-count.h
(RDIV): Move to profile-count.h
* bb-reorder.c (max_entry_count): Turn to profile_count.
(find_traces): Update.
(rotate_loop):Update.
(connect_traces):Update.
(sanitize_hot_paths):Update.
* bt-load.c (migrate_btr_defs): Update.
* cfg.c (RDIV): Remove.
(init_flow): Use alloc_block.
(alloc_block): Uninitialize count.
(unchecked_make_edge): Uninitialize count.
(check_bb_profile): Update.
(dump_edge_info): Update.
(dump_bb_info): Update.
(update_bb_profile_for_threading): Update.
(scale_bbs_frequencies_int): Update.
(scale_bbs_frequencies_gcov_type): Update.
(scale_bbs_frequencies_profile_count): New.
* cfg.h (update_bb_profile_for_threading): Update.
(scale_bbs_frequencies_profile_count): Declare.
* cfgbuild.c (compute_outgoing_frequencies): Update.
(find_many_sub_basic_blocks): Update.
* cfgcleanup.c (try_forward_edges): Update.
(try_crossjump_to_edge): Update.
* cfgexpand.c (expand_gimple_tailcall): Update.
(construct_exit_block): Update.
* cfghooks.c (verify_flow_info): Update.
(dump_bb_for_graph): Update.
(split_edge): Update.
(make_forwarder_block): Update.
(duplicate_block): Update.
(account_profile_record): Update.
* cfgloop.c (find_subloop_latch_edge_by_profile): Update.
(get_estimated_loop_iterations): Update.
* cfgloopanal.c (expected_loop_iterations_unbounded): Update.
(single_likely_exit): Update.
* cfgloopmanip.c (scale_loop_profile): Update.
(loopify): Update.
(set_zero_probability): Update.
(lv_adjust_loop_entry_edge): Update.
* cfgrtl.c (force_nonfallthru_and_redirect): Update.
(purge_dead_edges): Update.
(rtl_account_profile_record): Update.
* cgraph.c (cgraph_node::create): Uninitialize count.
(symbol_table::create_edge): Uninitialize count.
(cgraph_update_edges_for_call_stmt_node): Update.
(cgraph_edge::dump_edge_flags): Update.
(cgraph_node::dump): Update.
(cgraph_edge::maybe_hot_p): Update.
* cgraph.h: Include profile-count.h
(create_clone), create_edge, create_indirect_edge): Update.
(cgraph_node): Turn count to profile_count.
(cgraph_edge0: Likewise.
(make_speculative, clone): Update.
(create_edge): Update.
(init_lowered_empty_function): Update.
* cgraphclones.c (cgraph_edge::clone): Update.
(duplicate_thunk_for_node): Update.
(cgraph_node::create_clone): Update.
* cgraphunit.c (cgraph_node::analyze): Update.
(cgraph_node::expand_thunk): Update.
* final.c (dump_basic_block_info): Update.
* gimple-streamer-in.c (input_bb): Update.
* gimple-streamer-out.c (output_bb): Update.
* graphite.c (print_global_statistics): Update.
(print_graphite_scop_statistics): Update.
* hsa-brig.c: Include basic-block.h.
* hsa-dump.c: Include basic-block.h.
* hsa-gen.c (T sum_slice): Update.
(convert_switch_statements):Update.
* hsa-regalloc.c: Include basic-block.h.
* ipa-chkp.c (chkp_produce_thunks): Update.
* ipa-cp.c (struct caller_statistics): Update.
(init_caller_stats): Update.
(gather_caller_stats): Update.
(ipcp_cloning_candidate_p): Update.
(good_cloning_opportunity_p): Update.
(get_info_about_necessary_edges): Update.
(dump_profile_updates): Update.
(update_profiling_info): Update.
(update_specialized_profile): Update.
(perhaps_add_new_callers): Update.
(decide_about_value): Update.
(ipa_cp_c_finalize): Update.
* ipa-devirt.c (struct odr_type_warn_count): Update.
(struct decl_warn_count): Update.
(struct final_warning_record): Update.
(possible_polymorphic_call_targets): Update.
(ipa_devirt): Update.
* ipa-fnsummary.c (redirect_to_unreachable): Update.
* ipa-icf.c (sem_function::merge): Update.
* ipa-inline-analysis.c (do_estimate_edge_time): Update.
* ipa-inline.c (compute_uninlined_call_time): Update.
(compute_inlined_call_time): Update.
(want_inline_small_function_p): Update.
(want_inline_self_recursive_call_p): Update.
(edge_badness): Update.
(lookup_recursive_calls): Update.
(recursive_inlining): Update.
(inline_small_functions): Update.
(dump_overall_stats): Update.
(dump_inline_stats): Update.
* ipa-profile.c (ipa_profile_generate_summary): Update.
(ipa_propagate_frequency): Update.
(ipa_profile): Update.
* ipa-prop.c (ipa_make_edge_direct_to_target): Update.
* ipa-utils.c (ipa_merge_profiles): Update.
* loop-doloop.c (doloop_modify): Update.
* loop-unroll.c (report_unroll): Update.
(unroll_loop_runtime_iterations): Update.
* lto-cgraph.c (lto_output_edge): Update.
(lto_output_node): Update.
(input_node): Update.
(input_edge): Update.
(merge_profile_summaries): Update.
* lto-streamer-in.c (input_cfg): Update.
* lto-streamer-out.c (output_cfg): Update.
* mcf.c (create_fixup_graph): Update.
(adjust_cfg_counts): Update.
(sum_edge_counts): Update.
* modulo-sched.c (sms_schedule): Update.
* postreload-gcse.c (eliminate_partially_redundant_load): Update.
* predict.c (maybe_hot_count_p): Update.
(probably_never_executed): Update.
(dump_prediction): Update.
(combine_predictions_for_bb): Update.
(propagate_freq): Update.
(handle_missing_profiles): Update.
(counts_to_freqs): Update.
(rebuild_frequencies): Update.
(force_edge_cold): Update.
* predict.h: Include profile-count.h
(maybe_hot_count_p, counts_to_freqs): UPdate.
* print-rtl-function.c: Do not include cfg.h
* print-rtl.c: Include basic-block.h
* profile-count.c: New file.
* profile-count.h: New file.
* profile.c (is_edge_inconsistent): Update.
(correct_negative_edge_counts): Update.
(is_inconsistent): Update.
(set_bb_counts): Update.
(read_profile_edge_counts): Update.
(compute_frequency_overlap): Update.
(compute_branch_probabilities): Update; Initialize and deinitialize
gcov_count tables.
(branch_prob): Update.
* profile.h (bb_gcov_counts, edge_gcov_counts): New.
(edge_gcov_count): New.
(bb_gcov_count): New.
* shrink-wrap.c (try_shrink_wrapping): Update.
* tracer.c (better_p): Update.
* trans-mem.c (expand_transaction): Update.
(ipa_tm_insert_irr_call): Update.
(ipa_tm_insert_gettmclone_call): Update.
* tree-call-cdce.c: Update.
* tree-cfg.c (gimple_duplicate_sese_region): Update.
(gimple_duplicate_sese_tail): Update.
(gimple_account_profile_record): Update.
(execute_fixup_cfg): Update.
* tree-inline.c (copy_bb): Update.
(copy_edges_for_bb): Update.
(initialize_cfun): Update.
(freqs_to_counts): Update.
(copy_cfg_body): Update.
(expand_call_inline): Update.
* tree-ssa-ifcombine.c (update_profile_after_ifcombine): Update.
* tree-ssa-loop-ivcanon.c (unloop_loops): Update.
(try_unroll_loop_completely): Update.
(try_peel_loop): Update.
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Update.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Update.
* tree-ssa-loop-split.c (connect_loops): Update.
* tree-ssa-loop-unswitch.c (hoist_guard): Update.
* tree-ssa-reassoc.c (branch_fixup): Update.
* tree-ssa-tail-merge.c (replace_block_by): Update.
* tree-ssa-threadupdate.c (create_block_for_threading): Update.
(compute_path_counts): Update.
(update_profile): Update.
(recompute_probabilities): Update.
(update_joiner_offpath_counts): Update.
(estimated_freqs_path): Update.
(freqs_to_counts_path): Update.
(clear_counts_path): Update.
(ssa_fix_duplicate_block_edges): Update.
(duplicate_thread_path): Update.
* tree-switch-conversion.c (case_bit_test_cmp): Update.
(struct switch_conv_info): Update.
* tree-tailcall.c (decrease_profile): Update.
* tree-vect-loop-manip.c (slpeel_add_loop_guard): Update.
* tree-vect-loop.c (scale_profile_for_vect_loop): Update.
* value-prof.c (check_counter): Update.
(gimple_divmod_fixed_value): Update.
(gimple_mod_pow2): Update.
(gimple_mod_subtract): Update.
(gimple_ic_transform): Update.
(gimple_stringop_fixed_value): Update.
* value-prof.h (gimple_ic): Update.
* gcc.dg/tree-ssa/attr-hotcold-2.c: Update template.
From-SVN: r248863
2017-06-04 18:55:08 +00:00
Dominique d'Humieres
a7e8f816bd
2017-06-04 Dominique d'Humieres <dominiq@lps.ens.fr>
...
Add missing file in the previous commit.
From-SVN: r248862
2017-06-04 20:47:09 +02:00
Dominique d'Humieres
82c027e160
fortran-modules.exp (igrep): New procedure, case insensitive vesrion of the dejagnu grep.
...
2017-06-04 Dominique d'Humieres <dominiq@lps.ens.fr>
* lib/fortran-modules.exp (igrep): New procedure, case insensitive
vesrion of the dejagnu grep.
(list-module-names): Use it and adjust the regular expressions for
modules and submodules.
* gfortran.dg/prof/prof.exp: Cleanup modules.
* gfortran.dg/allocate_class_4.f90: Remove cleanup-(sub)?modules
directives.
* gfortran.dg/altreturn_8.f90: Likewise.
* gfortran.dg/associate_12.f90: Likewise.
* gfortran.dg/c_f_pointer_shape_test.f90: Likewise.
* gfortran.dg/charlen_15.f90: Likewise.
* gfortran.dg/class_4a.f03: Likewise.
* gfortran.dg/class_54.f90: Likewise.
* gfortran.dg/class_dummy_4.f03: Likewise.
* gfortran.dg/class_dummy_5.f90: Likewise.
* gfortran.dg/constructor_9.f90: Likewise.
* gfortran.dg/dec_structure_15.f90: Likewise.
* gfortran.dg/do_check_8.f90: Likewise.
* gfortran.dg/dtio_26.f03: Likewise.
* gfortran.dg/dynamic_dispatch_12.f90: Likewise.
* gfortran.dg/equiv_9.f90: Likewise.
* gfortran.dg/extends_15.f90: Likewise.
* gfortran.dg/finalize_22.f90: Likewise.
* gfortran.dg/finalize_23.f90: Likewise.
* gfortran.dg/generic_26.f90: Likewise.
* gfortran.dg/generic_27.f90: Likewise.
* gfortran.dg/namelist_76.f90: Likewise.
* gfortran.dg/pointer_init_8.f90: Likewise.
* gfortran.dg/pr61318.f90: Likewise.
* gfortran.dg/pr77260_1.f90: Likewise.
* gfortran.dg/pr77260_2.f90: Likewise.
* gfortran.dg/pr77420_3.f90: Likewise.
* gfortran.dg/proc_ptr_39.f90: Likewise.
* gfortran.dg/proc_ptr_41.f90: Likewise.
* gfortran.dg/proc_ptr_42.f90: Likewise.
* gfortran.dg/proc_ptr_comp_43.f90: Likewise.
* gfortran.dg/submodule_1.f08: Likewise.
* gfortran.dg/submodule_10.f08: Likewise.
* gfortran.dg/submodule_14.f08: Likewise.
* gfortran.dg/submodule_15.f08: Likewise.
* gfortran.dg/submodule_2.f08: Likewise.
* gfortran.dg/submodule_5.f08: Likewise.
* gfortran.dg/submodule_6.f08: Likewise.
* gfortran.dg/submodule_7.f08: Likewise.
* gfortran.dg/submodule_8.f08: Likewise.
* gfortran.dg/submodule_9.f08: Likewise.
* gfortran.dg/transfer_class_2.f90: Likewise.
* gfortran.dg/typebound_assignment_7.f90: Likewise.
* gfortran.dg/typebound_call_24.f03: Likewise.
* gfortran.dg/typebound_call_25.f90: Likewise.
* gfortran.dg/typebound_deferred_1.f90: Likewise.
* gfortran.dg/typebound_generic_12.f03: Likewise.
* gfortran.dg/typebound_generic_13.f03: Likewise.
* gfortran.dg/typebound_generic_14.f03: Likewise.
* gfortran.dg/typebound_generic_15.f90: Likewise.
* gfortran.dg/typebound_operator_16.f03: Likewise.
* gfortran.dg/typebound_operator_18.f90: Likewise.
* gfortran.dg/typebound_operator_20.f90: Likewise.
* gfortran.dg/typebound_override_3.f90: Likewise.
* gfortran.dg/typebound_override_4.f90: Likewise.
* gfortran.dg/typebound_override_5.f90: Likewise.
* gfortran.dg/typebound_override_6.f90: Likewise.
* gfortran.dg/typebound_override_7.f90: Likewise.
* gfortran.dg/typebound_proc_28.f03: Likewise.
* gfortran.dg/typebound_proc_29.f90: Likewise.
* gfortran.dg/typebound_proc_30.f90: Likewise.
* gfortran.dg/typebound_proc_31.f90: Likewise.
* gfortran.dg/typebound_proc_32.f90: Likewise.
* gfortran.dg/typebound_proc_33.f90: Likewise.
* gfortran.dg/unlimited_polymorphic_16.f90: Likewise.
* gfortran.dg/unlimited_polymorphic_19.f90: Likewise.
* gfortran.dg/unlimited_polymorphic_24.f03: Likewise.
* gfortran.dg/use_only_3.f90: Likewise.
* gfortran.dg/use_without_only_1.f90: Likewise.
* gfortran.dg/warn_unused_function.f90: Likewise.
* gfortran.dg/warn_unused_function_2.f90: Likewise.
* gfortran.dg/ieee/ieee_8.f90: Likewise.
From-SVN: r248861
2017-06-04 20:44:45 +02:00
Marek Polacek
3de4ac6d80
re PR c/80919 (ICE: Segmentation fault with -Wall when printing address of size 0 array)
...
PR c/80919
* c-format.c (matching_type_p): Return false if any of the types
requires structural equality.
* gcc.dg/format/pr80919.c: New test.
From-SVN: r248860
2017-06-04 17:27:22 +00:00
GCC Administrator
1bfb5860cf
Daily bump.
...
From-SVN: r248859
2017-06-04 00:16:20 +00:00
Andreas Schwab
d9850c48a9
baseline_symbols.txt: Update.
...
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
From-SVN: r248854
2017-06-03 09:56:43 +00:00
Eric Botcazou
76052545d2
configure.ac (*-*-linux-android*): Set target_makefile_frag.
...
* configure.ac (*-*-linux-android*): Set target_makefile_frag.
* configure: Regenerate.
config/
* mt-android: New file.
libstdc++-v3/
* src/filesystem/dir.cc (fs::_Dir::advance): Use std::exchange.
From-SVN: r248853
2017-06-03 08:23:22 +00:00
Martin Sebor
2474f48f73
PR c/80892 - -Wfloat-conversion now warns about non-floats
...
gcc/c-family/ChangeLog:
PR c/80892
* c-warn.c (conversion_warning): Use -Wconversion for integer
conversion and -Wfloat-conversion for floating one.
gcc/testsuite/ChangeLog:
PR c/80892
* c-c++-common/Wfloat-conversion-2.c: New test.
From-SVN: r248852
2017-06-02 20:49:30 -06:00
GCC Administrator
eb64690cd5
Daily bump.
...
From-SVN: r248851
2017-06-03 00:16:17 +00:00
Paolo Carlini
bd280745ee
re PR c++/68754 (Explicitly defaulted constexpr assignment operator fails to compile)
...
2017-06-02 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/68754
* g++.dg/cpp1y/constexpr-68754.C: New.
From-SVN: r248847
2017-06-02 23:27:22 +00:00
Carl Love
3fd44c8a79
rs6000-c: Add support for built-in functions vector double vec_doublee (vector signed int)...
...
gcc/ChangeLog:
2017-06-02 Carl Love <cel@us.ibm.com>
* config/rs6000/rs6000-c: Add support for built-in functions
vector double vec_doublee (vector signed int);
vector double vec_doublee (vector unsigned int);
vector double vec_doublee (vector float);
vector double vec_doubleh (vector signed int);
vector double vec_doubleh (vector unsigned int);
vector double vec_doubleh (vector float);
vector double vec_doublel (vector signed int);
vector double vec_doublel (vector unsigned int);
vector double vec_doublel (vector float);
vector double vec_doubleo (vector signed int);
vector double vec_doubleo (vector unsigned int);
vector double vec_doubleo (vector float);.
* config/rs6000/rs6000-builtin.def: Add definitions for DOUBLEE,
DOUBLEO, DOUBLEH, DOUBLEL, UNS_DOUBLEO, UNS_DOUBLEE, UNS_DOUBLEH,
UNS_DOUBLEL.
* config/rs6000/altivec.md: Add code generator for doublee<mode>2,
unsdoubleev4si2, doubleo<mode>2, unsdoubleov4si2, doubleh<mode>2,
unsdoublehv4si2, doublel<mode>2, unsdoublelv4si2, add mode attribute
VS_sxwsp.
* config/rs6000/altivec.h: Add define for vec_doublee, vec_doubleo,
vec_doublel, vec_doubleh.
* doc/extend.texi: Update the built-in documentation file for the
new built-in functions.
2017-06-02 Carl Love <cel@us.ibm.com>
gcc/testsuite/ChangeLog:
* gcc.target/powerpc/builtins-3-runnable.c: New file of runnable tests
for the new built-ins.
From-SVN: r248846
2017-06-02 20:11:40 +00:00
Jonathan Wakely
4c19e432d6
PR libstdc++/80624 satisfy invariant for char_traits<char16_t>::eof()
...
PR libstdc++/80624
* doc/xml/manual/status_cxx2011.xml: Document to_int_type behaviour.
* include/bits/char_traits.h (char_traits<char16_t>::to_int_type):
Transform eof value to U+FFFD.
* testsuite/21_strings/char_traits/requirements/char16_t/eof.cc: New.
* testsuite/27_io/basic_streambuf/sgetc/char16_t/80624.cc: New.
* testsuite/27_io/basic_streambuf/sputc/char16_t/80624.cc: New.
From-SVN: r248843
2017-06-02 19:35:37 +01:00
David Malcolm
0cbae4a7a2
Fix segfault in free_growth_caches (PR jit/80954)
...
gcc/ChangeLog:
PR jit/80954
* ipa-inline-analysis.c (free_growth_caches): Set
edge_removal_hook_holder to NULL after removing it.
From-SVN: r248841
2017-06-02 17:07:37 +00:00
Olivier Hainque
38a75ccc89
Add ChangeLog entry for revision 248838
...
From-SVN: r248839
2017-06-02 16:46:44 +00:00
Olivier Hainque
ee834d3b93
vxlib.c (__gthread_once): Add missing value to nested return statement.
...
2017-06-02 Olivier Hainque <hainque@adacore.com>
* config/vxlib.c (__gthread_once): Add missing value to
nested return statement.
From-SVN: r248838
2017-06-02 16:24:28 +00:00
Olivier Hainque
f876304201
vx_crtbegin_auto.c: New file.
...
2017-06-02 Olivier Hainque <hainque@adacore.com>
* vx_crtbegin_auto.c: New file.
* vx_crtbegin.c: New file.
* vx_crtbegin.inc: New file.
* vx_crtend.c: New file.
From-SVN: r248837
2017-06-02 16:02:24 +00:00
Sudakshina Das
ffa8a92137
[PATCH][AArch64] Allow CMP+SHIFT when comparing with zero
...
gcc/
* config/aarch64/aarch64.c (aarch64_select_cc_mode): Return CC_SWP for
comparision with zero.
gcc/testsuite/
* gcc.target/aarch64/cmp_shifted_reg_1.c: New.
From-SVN: r248836
2017-06-02 15:32:41 +00:00
Kyrylo Tkachov
b160939bf3
[AArch64] Add HF vector modes to lane-to-lane INS pattern
...
* config/aarch64/aarch64-simd.md (*aarch64_simd_vec_copy_lane<mode>):
Use VALL_F16 iterator rather than VALL.
* gcc.target/aarch64/hfmode_ins_1.c: New test.
From-SVN: r248835
2017-06-02 15:03:54 +00:00
Will Schmidt
d65d1bd970
rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vec_min and vec_max builtins.
...
[gcc]
2017-06-02 Will Schmidt <will_schmidt@vnet.ibm.com>
* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling
for early expansion of vec_min and vec_max builtins.
(builtin_function_type): Add min/max unsigned variants to those
identified as having unsigned arguments.
[gcc/testsuite]
2017-06-02 Will Schmidt <will_schmidt@vnet.ibm.com>
* testsuite/gcc.target/powerpc/fold-vec-minmax-char.c: New.
* testsuite/gcc.target/powerpc/fold-vec-minmax-floatdouble.c: New.
* testsuite/gcc.target/powerpc/fold-vec-minmax-int.c: New.
* testsuite/gcc.target/powerpc/fold-vec-minmax-longlong.c: New.
* testsuite/gcc.target/powerpc/fold-vec-minmax-short.c: New.
From-SVN: r248834
2017-06-02 15:02:25 +00:00
Olivier Hainque
a9945ae286
vx-common.h (DWARF_UNWIND_INFO): Switch #define to 1.
...
2017-06-02 Olivier Hainque <hainque@adacore.com>
* config/vx-common.h (DWARF_UNWIND_INFO): Switch #define to 1.
From-SVN: r248833
2017-06-02 15:00:43 +00:00
Kyrylo Tkachov
17f47f8621
[AArch64] Emit tighter strong atomic compare-exchange loop when comparing against zero
...
* config/aarch64/aarch64.c (aarch64_split_compare_and_swap):
Emit CBNZ inside loop when doing a strong exchange and comparing
against zero. Generate the CC flags after the loop.
* gcc.target/aarch64/atomic_cmp_exchange_zero_strong_1.c: New test.
From-SVN: r248832
2017-06-02 14:41:52 +00:00
David Edelsohn
e3bd1c6873
dwarf2out.c (DWARF_INITIAL_LENGTH_SIZE_STR): New.
...
* dwarf2out.c (DWARF_INITIAL_LENGTH_SIZE_STR): New.
(dl_section_ref): New.
(dwarf2out_finish): Copy debug_line_section_label to dl_section_ref.
On AIX, append an expression to subtract the size of the
section length to dl_section_ref.
From-SVN: r248831
2017-06-02 10:27:15 -04:00
Will Schmidt
ab82e126e7
rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vector absolute builtins.
...
[gcc]
2017-05-31 Will Schmidt <will_schmidt@vnet.ibm.com>
* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling
for early expansion of vector absolute builtins.
[gcc/testsuite]
2017-05-31 Will Schmidt <will_schmidt@vnet.ibm.com>
* gcc.target/powerpc/fold-vec-abs-char.c: New.
* gcc.target/powerpc/fold-vec-abs-floatdouble.c: New.
* gcc.target/powerpc/fold-vec-abs-int.c: New.
* gcc.target/powerpc/fold-vec-abs-longlong.c: New.
* gcc.target/powerpc/fold-vec-abs-short.c: New.
* gcc.target/powerpc/fold-vec-abs-char-fwrapv.c: New.
* gcc.target/powerpc/fold-vec-abs-int-fwrapv.c: New.
* gcc.target/powerpc/fold-vec-abs-longlong-fwrapv.c: New.
* gcc.target/powerpc/fold-vec-abs-short-fwrapv.c: New.
From-SVN: r248830
2017-06-02 14:21:55 +00:00
Nathan Sidwell
fb3a2657b2
Remove lang_type_ptrmem.
...
Changlogs:
cp/
Remove lang_type_ptrmem.
* cp-tree.h (lang_type_header): Remove is_lang_type_class. Move
into ...
(lang_type_class): ... this. Reorder bitfields. Rename to ...
(lang_type): ... this. Delete old definition.
(lang_type_ptrmem): Delete.
(LANG_TYPE_CLASS_CHECK): Simply get TYPE_LANG_SPECIFIC. Adjust
uses.
(LANG_TYPE_PTRMEM_CHECK): Delete.
(TYPE_GET_PTRMEMFUNC_TYPE, TYPE_SET_PTRMEMFUNC_TYPE): Delete.
(TYPE_PTRMEMFUNC_TYPE): New. Use TYPE_LANG_SLOT_1.
* decl.c (build_ptrmemfunc_type): Adjust.
* lex.c (copy_lang_type): Remove lang_type_ptrmem handling.
(maybe_add_lang_type_raw): Don't set u.c.h.is_lang_type_class.
objcp/
* objcp-decl.h (SIZEOF_OBJC_TYPE_LANG_SPECIFIC): Use lang_type.
(ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use it. Don't set
u.c.h.is_lang_type_class.
From-SVN: r248827
2017-06-02 13:27:45 +00:00
Nathan Sidwell
030cfa22cb
Remove lang_type_ptrmem.
...
cp/
Remove lang_type_ptrmem.
* cp-tree.h (lang_type_header): Remove is_lang_type_class. Move
into ...
(lang_type_class): ... this. Reorder bitfields. Rename to ...
(lang_type): ... this. Delete old definition.
(lang_type_ptrmem): Delete.
(LANG_TYPE_CLASS_CHECK): Simply get TYPE_LANG_SPECIFIC. Adjust
uses.
(LANG_TYPE_PTRMEM_CHECK): Delete.
(TYPE_GET_PTRMEMFUNC_TYPE, TYPE_SET_PTRMEMFUNC_TYPE): Delete.
(TYPE_PTRMEMFUNC_TYPE): New. Use TYPE_LANG_SLOT_1.
* decl.c (build_ptrmemfunc_type): Adjust.
* lex.c (copy_lang_type): Remove lang_type_ptrmem handling.
(maybe_add_lang_type_raw): Don't set u.c.h.is_lang_type_class.
objcp/
* objcp-decl.h (SIZEOF_OBJC_TYPE_LANG_SPECIFIC): Use lang_type.
(ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use it. Don't set
u.c.h.is_lang_type_class.
From-SVN: r248826
2017-06-02 13:23:08 +00:00
Richard Biener
9186a9d353
tree-vect-slp.c (vect_detect_hybrid_slp_2): Match up what we consider a relevant use stmt with vect_detect_hybrid_slp_stmts.
...
2017-06-02 Richard Biener <rguenther@suse.de>
* tree-vect-slp.c (vect_detect_hybrid_slp_2): Match up
what we consider a relevant use stmt with vect_detect_hybrid_slp_stmts.
From-SVN: r248825
2017-06-02 13:11:11 +00:00
Richard Biener
bd53b2574d
re PR tree-optimization/80948 (test case gcc.dg/torture/pr68017.c fails with ICE starting with r248771)
...
2017-06-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/80948
* tree-tailcall.c (find_tail_calls): Track stmts to move in
stmt order as well.
From-SVN: r248824
2017-06-02 12:34:32 +00:00
Jonathan Wakely
ef3985dbd1
Remove libsupc++ makefile targets setting -std=gnu++11 or -std=gnu++14
...
* libsupc++/Makefile.am: Remove custom targets for files that need to
be compiled as C++11 or C++14.
* libsupc++/Makefile.in: Regenerate.
* libsupc++/del_ops.cc: Use pragma to disable -Wsized-deallocation
warnings.
* libsupc++/del_opvs.cc: Likewise.
From-SVN: r248823
2017-06-02 12:49:04 +01:00
Nathan Sidwell
c957e9c052
name-lookup.h (cp_binding_level): Lose namespaces field.
...
* name-lookup.h (cp_binding_level): Lose namespaces field.
* name-lookup.c (add_decl_to_level): Chain namespaces on the names
list.
(suggest_alternatives_for): Adjust for namespace list. Do
breadth-first search.
* decl2.c (collect_source_refs): Namespaces are on the regulr
list.
(collect_ada_namespace): Likewise.
* g++.dg/pr45330.C: Adjust. Check breadth-firstness.
From-SVN: r248821
2017-06-02 11:02:26 +00:00
Richard Biener
643a9684fa
tree-vect-loop.c (vect_analyze_loop_operations): Not relevant PHIs are ok.
...
2017-06-02 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (vect_analyze_loop_operations): Not relevant
PHIs are ok.
* tree-vect-stmts.c (process_use): Do not mark backedge defs
for inductions as relevant.
From-SVN: r248820
2017-06-02 10:26:10 +00:00
Richard Biener
e7754973ed
tree-vect-loop.c (get_initial_def_for_induction): Inline into ...
...
2017-06-02 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (get_initial_def_for_induction): Inline into ...
(vectorizable_induction): ... this. Remove dead code.
From-SVN: r248819
2017-06-02 10:25:22 +00:00
Eric Botcazou
b7e52782f6
* builtins. (expand_builtin_alloca): Remove second parameter and
...
infer its value from the first parameter instead.
(expand_builtin) <BUILT_IN_ALLOCA>: Adjust call to above.
From-SVN: r248818
2017-06-02 09:57:40 +00:00
Richard Biener
1c26adb74d
re PR libstdc++/80721 (Sorting/Merging of free EH-emergency buffer may wrong or uncomplete)
...
2017-06-02 Richard Biener <rguenther@suse.de>
Markus Eisenmann <meisenmann.lba@fh-salzburg.ac.at>
PR libstdc++/80721
* libsupc++/eh_alloc.cc (pool::free): Keep list properly
sorted and add missing freelist item merging cases.
Co-Authored-By: Markus Eisenmann <meisenmann.lba@fh-salzburg.ac.at>
From-SVN: r248816
2017-06-02 08:10:48 +00:00
Jakub Jelinek
74b4885d94
re PR rtl-optimization/80903 (ICE: internal consistency failure (error: invalid rtl sharing found in the insn))
...
PR rtl-optimization/80903
* loop-doloop.c (add_test): Unshare sequence.
* gcc.dg/pr80903.c: New test.
From-SVN: r248815
2017-06-02 10:07:15 +02:00
Jakub Jelinek
aad16012aa
re PR fortran/80918 (Assumed size whole array rejected in depend clause)
...
PR fortran/80918
* openmp.c (resolve_omp_clauses): Fix a typo.
* gfortran.dg/gomp/pr80918.f90: New test.
From-SVN: r248812
2017-06-02 09:07:29 +02:00
Bernd Edlinger
40ffd95f56
invoke.texi: Document the -Wsizeof-pointer-div warning.
...
gcc:
2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
* doc/invoke.texi: Document the -Wsizeof-pointer-div warning.
gcc/c-family:
2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
* c.opt (Wsizeof-pointer-div): New warning option.
gcc/c:
2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
* c-parser.c (c_parser_binary_expression): Implement the
-Wsizeof_pointer_div warning.
(c_parser_postfix_expression): Allow SIZEOF_EXPR as expr.original_code
from a parenthesized expression.
(c_parser_expr_list): Use c_last_sizeof_loc.
* c-tree.h (c_last_sizeof_loc): New external.
* c-typeck.c (c_last_sizeof_loc): New variable.
(c_expr_sizeof_expr, c_expr_sizeof_type): Assign c_last_sizeof_loc.
gcc/cp:
2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
* typeck.c (cp_build_binary_op): Implement the -Wsizeof_pointer_div
warning.
gcc/testsuite:
2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
* c-c++-common/Wsizeof-pointer-div.c: New test.
* gcc.dg/Wsizeof-pointer-memaccess1.c: Add test cases with parens.
* gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise.
* gcc.target/i386/sse-init-v4hi-1.c: Fix test case.
* gcc.target/i386/sse-init-v4sf-1.c: Likewise.
* gcc.target/i386/sse-set-ps-1.c: Likewise.
* gcc.target/i386/sse2-init-v16qi-1.c: Likewise.
* gcc.target/i386/sse2-init-v2di-1.c: Likewise.
* gcc.target/i386/sse2-init-v4si-1.c: Likewise.
* gcc.target/i386/sse2-init-v8hi-1.c: Likewise.
* gcc.target/i386/sse2-set-epi32-1.c: Likewise.
* gcc.target/i386/sse2-set-epi64x-1.c: Likewise.
* gcc.target/i386/sse4_1-init-v16qi-1.c: Likewise.
* gcc.target/i386/sse4_1-init-v2di-1.c: Likewise.
* gcc.target/i386/sse4_1-init-v4sf-1.c: Likewise.
* gcc.target/i386/sse4_1-init-v4si-1.c: Likewise.
* gcc.target/i386/sse4_1-set-epi32-1.c: Likewise.
* gcc.target/i386/sse4_1-set-epi64x-1.c: Likewise.
* gcc.target/i386/sse4_1-set-ps-1.c: Likewise.
* libgomp.c/pr39591-2.c: Likewise.
* libgomp.c/pr39591-3.c: Likewise.
From-SVN: r248811
2017-06-02 04:06:59 +00:00
GCC Administrator
616dbacbac
Daily bump.
...
From-SVN: r248810
2017-06-02 00:16:22 +00:00
Will Schmidt
052754ea18
fold-vec-logical-ors-longlong.c: Update the target to power8-vector.
...
[gcc/testsuite]
2017-05-26 Will Schmidt <will_schmidt@vnet.ibm.com>
* gcc.target/powerpc/fold-vec-logical-ors-longlong.c:
Update the target to power8-vector.
From-SVN: r248805
2017-06-01 22:00:45 +00:00
Joseph Myers
d80d523964
* es.po: Update.
...
From-SVN: r248802
2017-06-01 22:15:55 +01:00
David Malcolm
aa63913f73
testsuite: ensure GCC_COLORS is unset
...
gcc/testsuite/ChangeLog:
* lib/gcc-dg.exp: Ensure GCC_COLORS is unset.
From-SVN: r248800
2017-06-01 19:43:13 +00:00