[PATCH 0/7] Param conversion to option machinery

classic Classic list List threaded Threaded
29 messages Options
12
Reply | Threaded
Open this post in threaded view
|

[PATCH 0/7] Param conversion to option machinery

Martin Liška-2
The email thread is follow up of a demo that I made here:
https://gcc.gnu.org/ml/gcc-patches/2019-10/msg02220.html

The patchset converts current param infrastructure to
the option machinery. The parts 3 and 4 are quite
mechanical.

I would appreciate a feedback about what parameters
should be per function (Optimization keyword) and global.

The patch survives bootstrap and regtests on x86_64-linux-gnu
and ppc64-linux-gnu and I made cross build of all target compilers.

Thoughts?
Martin

Martin Liska (7):
  Param to options conversion.
  Include new generated gcc/params.opt file.
  Apply mechanical replacement (generated patch).
  Remove gcc/params.* files.
  Remove last leftover usage of params* files.
  Remove set_default_param_value from documentation.
  Fix test-suite fallout.

 gcc/Makefile.in                               |   20 +-
 gcc/asan.c                                    |   19 +-
 gcc/auto-profile.c                            |    3 +-
 gcc/bb-reorder.c                              |    5 +-
 gcc/builtins.c                                |    3 +-
 gcc/c/gimple-parser.c                         |    3 +-
 gcc/cfgcleanup.c                              |    5 +-
 gcc/cfgexpand.c                               |    9 +-
 gcc/cfgloopanal.c                             |    9 +-
 gcc/cgraph.c                                  |    3 +-
 gcc/combine.c                                 |    5 +-
 gcc/common.opt                                |   10 -
 gcc/common/common-target.def                  |    6 +-
 gcc/common/config/aarch64/aarch64-common.c    |   16 +-
 gcc/common/config/gcn/gcn-common.c            |    1 -
 gcc/common/config/ia64/ia64-common.c          |    9 +-
 .../config/powerpcspe/powerpcspe-common.c     |    3 +-
 gcc/common/config/rs6000/rs6000-common.c      |    3 +-
 gcc/common/config/sh/sh-common.c              |    3 +-
 gcc/config/aarch64/aarch64.c                  |   80 +-
 gcc/config/alpha/alpha.c                      |   17 +-
 gcc/config/arm/arm.c                          |   44 +-
 gcc/config/avr/avr.c                          |    1 -
 gcc/config/csky/csky.c                        |    1 -
 gcc/config/i386/i386-builtins.c               |    1 -
 gcc/config/i386/i386-expand.c                 |    1 -
 gcc/config/i386/i386-features.c               |    1 -
 gcc/config/i386/i386-options.c                |   35 +-
 gcc/config/i386/i386.c                        |   27 +-
 gcc/config/ia64/ia64.c                        |    3 +-
 gcc/config/rs6000/rs6000-logue.c              |    5 +-
 gcc/config/rs6000/rs6000.c                    |   56 +-
 gcc/config/s390/s390.c                        |   80 +-
 gcc/config/sparc/sparc.c                      |   84 +-
 gcc/config/visium/visium.c                    |    7 +-
 gcc/coverage.c                                |    9 +-
 gcc/cp/name-lookup.c                          |    3 +-
 gcc/cp/typeck.c                               |    5 +-
 gcc/cprop.c                                   |    1 -
 gcc/cse.c                                     |    7 +-
 gcc/cselib.c                                  |    3 +-
 gcc/doc/options.texi                          |    3 +
 gcc/doc/tm.texi                               |    4 +-
 gcc/dse.c                                     |    3 +-
 gcc/emit-rtl.c                                |   19 +-
 gcc/explow.c                                  |    3 +-
 gcc/final.c                                   |    5 +-
 gcc/flag-types.h                              |   11 +
 gcc/fold-const.c                              |   13 +-
 gcc/gcc.c                                     |    9 -
 gcc/gcse.c                                    |   17 +-
 gcc/ggc-common.c                              |    5 +-
 gcc/ggc-page.c                                |    5 +-
 gcc/gimple-loop-interchange.cc                |    7 +-
 gcc/gimple-loop-jam.c                         |    9 +-
 gcc/gimple-loop-versioning.cc                 |    5 +-
 gcc/gimple-ssa-split-paths.c                  |    3 +-
 gcc/gimple-ssa-sprintf.c                      |    1 -
 gcc/gimple-ssa-store-merging.c                |    9 +-
 gcc/gimple-ssa-strength-reduction.c           |    3 +-
 gcc/gimple-ssa-warn-alloca.c                  |    1 -
 gcc/gimple-ssa-warn-restrict.c                |    1 -
 gcc/graphite-isl-ast-to-gimple.c              |    5 +-
 gcc/graphite-optimize-isl.c                   |    5 +-
 gcc/graphite-scop-detection.c                 |    5 +-
 gcc/graphite-sese-to-poly.c                   |    1 -
 gcc/graphite.c                                |    1 -
 gcc/haifa-sched.c                             |   39 +-
 gcc/hsa-gen.c                                 |    3 +-
 gcc/ifcvt.c                                   |    5 +-
 gcc/ipa-cp.c                                  |   31 +-
 gcc/ipa-fnsummary.c                           |   21 +-
 gcc/ipa-inline-analysis.c                     |    3 +-
 gcc/ipa-inline.c                              |   78 +-
 gcc/ipa-polymorphic-call.c                    |    3 +-
 gcc/ipa-profile.c                             |    3 +-
 gcc/ipa-prop.c                                |    7 +-
 gcc/ipa-split.c                               |   11 +-
 gcc/ipa-sra.c                                 |   10 +-
 gcc/ira-build.c                               |    5 +-
 gcc/ira-conflicts.c                           |    5 +-
 gcc/loop-doloop.c                             |    3 +-
 gcc/loop-invariant.c                          |    5 +-
 gcc/loop-unroll.c                             |   27 +-
 gcc/lra-assigns.c                             |    3 +-
 gcc/lra-constraints.c                         |    3 +-
 gcc/lto/lto-common.c                          |    1 -
 gcc/lto/lto-partition.c                       |   11 +-
 gcc/lto/lto.c                                 |   11 +-
 gcc/modulo-sched.c                            |    7 +-
 gcc/opt-functions.awk                         |    3 +-
 gcc/opt-suggestions.c                         |   59 +-
 gcc/opt-suggestions.h                         |    5 -
 gcc/opts-common.c                             |   20 +
 gcc/opts.c                                    |  158 +-
 gcc/opts.h                                    |   11 +-
 gcc/params-enum.h                             |   39 -
 gcc/params-list.h                             |   26 -
 gcc/params-options.h                          |   27 -
 gcc/params.c                                  |  302 ----
 gcc/params.def                                | 1495 -----------------
 gcc/params.h                                  |  254 ---
 gcc/params.opt                                |  967 +++++++++++
 gcc/postreload-gcse.c                         |    7 +-
 gcc/predict.c                                 |   21 +-
 gcc/reload.c                                  |    3 +-
 gcc/reorg.c                                   |    5 +-
 gcc/resource.c                                |    5 +-
 gcc/sanopt.c                                  |    5 +-
 gcc/sched-deps.c                              |   11 +-
 gcc/sched-ebb.c                               |    5 +-
 gcc/sched-rgn.c                               |   19 +-
 gcc/sel-sched-ir.c                            |    5 +-
 gcc/sel-sched-ir.h                            |    2 +-
 gcc/sel-sched.c                               |    5 +-
 gcc/shrink-wrap.c                             |    3 +-
 gcc/stmt.c                                    |    1 -
 gcc/targhooks.c                               |   22 +-
 gcc/testsuite/gcc.dg/completion-3.c           |   16 +-
 gcc/testsuite/gcc.dg/pr83620.c                |    2 +-
 gcc/testsuite/gcc.dg/spellcheck-params-2.c    |    2 +-
 gcc/testsuite/gcc.dg/spellcheck-params.c      |    2 +-
 gcc/testsuite/gcc.misc-tests/help.exp         |    4 +-
 gcc/toplev.c                                  |   13 +-
 gcc/tracer.c                                  |   13 +-
 gcc/trans-mem.c                               |    3 +-
 gcc/tree-chrec.c                              |    5 +-
 gcc/tree-data-ref.c                           |    5 +-
 gcc/tree-if-conv.c                            |    3 +-
 gcc/tree-inline.c                             |    3 +-
 gcc/tree-loop-distribution.c                  |    3 +-
 gcc/tree-parloops.c                           |   20 +-
 gcc/tree-predcom.c                            |    3 +-
 gcc/tree-profile.c                            |    1 -
 gcc/tree-scalar-evolution.c                   |    5 +-
 gcc/tree-sra.c                                |   20 +-
 gcc/tree-ssa-ccp.c                            |    3 +-
 gcc/tree-ssa-dom.c                            |    1 -
 gcc/tree-ssa-dse.c                            |    9 +-
 gcc/tree-ssa-ifcombine.c                      |    5 +-
 gcc/tree-ssa-loop-ch.c                        |    3 +-
 gcc/tree-ssa-loop-im.c                        |    3 +-
 gcc/tree-ssa-loop-ivcanon.c                   |   19 +-
 gcc/tree-ssa-loop-ivopts.c                    |   11 +-
 gcc/tree-ssa-loop-manip.c                     |    3 +-
 gcc/tree-ssa-loop-niter.c                     |    3 +-
 gcc/tree-ssa-loop-prefetch.c                  |   47 +-
 gcc/tree-ssa-loop-unswitch.c                  |    7 +-
 gcc/tree-ssa-math-opts.c                      |    7 +-
 gcc/tree-ssa-phiopt.c                         |    9 +-
 gcc/tree-ssa-pre.c                            |    5 +-
 gcc/tree-ssa-reassoc.c                        |    3 +-
 gcc/tree-ssa-sccvn.c                          |    7 +-
 gcc/tree-ssa-scopedtables.c                   |    3 +-
 gcc/tree-ssa-sink.c                           |    3 +-
 gcc/tree-ssa-strlen.c                         |    9 +-
 gcc/tree-ssa-structalias.c                    |    9 +-
 gcc/tree-ssa-tail-merge.c                     |    5 +-
 gcc/tree-ssa-threadbackward.c                 |   17 +-
 gcc/tree-ssa-threadedge.c                     |    5 +-
 gcc/tree-ssa-uninit.c                         |    3 +-
 gcc/tree-switch-conversion.c                  |    7 +-
 gcc/tree-switch-conversion.h                  |    4 +-
 gcc/tree-vect-data-refs.c                     |   12 +-
 gcc/tree-vect-loop.c                          |    7 +-
 gcc/tree-vect-slp.c                           |    3 +-
 gcc/tree-vectorizer.h                         |    2 +-
 gcc/tree-vrp.c                                |    5 +-
 gcc/tree.c                                    |   23 +-
 gcc/value-prof.c                              |    1 -
 gcc/var-tracking.c                            |    7 +-
 171 files changed, 1689 insertions(+), 3243 deletions(-)
 delete mode 100644 gcc/params-enum.h
 delete mode 100644 gcc/params-list.h
 delete mode 100644 gcc/params-options.h
 delete mode 100644 gcc/params.c
 delete mode 100644 gcc/params.def
 delete mode 100644 gcc/params.h
 create mode 100644 gcc/params.opt

--
2.23.0

Reply | Threaded
Open this post in threaded view
|

[PATCH 1/7] Param to options conversion.

Martin Liška-2

gcc/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * common.opt: Remove --param and --param= options.
        * opt-functions.awk: Mark CL_PARAMS for options
        that have Param keyword.
        * opts-common.c (decode_cmdline_options_to_array):
        Replace --param key=value with --param=key=value.
        * opts.c (print_filtered_help): Remove special
        printing of params.
        (print_specific_help): Update title for params.
        (common_handle_option): Do not handle OPT__param.
        opts.h (SET_OPTION_IF_UNSET): New macro.
        * doc/options.texi: Document Param keyword.
---
 gcc/common.opt        |  7 -------
 gcc/doc/options.texi  |  3 +++
 gcc/opt-functions.awk |  3 ++-
 gcc/opts-common.c     |  9 +++++++++
 gcc/opts.c            | 38 +-------------------------------------
 gcc/opts.h            | 10 ++++++++++
 6 files changed, 25 insertions(+), 45 deletions(-)


0001-Param-to-options-conversion.patch (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 2/7] Include new generated gcc/params.opt file.

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * Makefile.in: Include params.opt.
        * flag-types.h (enum parloops_schedule_type): Add
        parloops_schedule_type used in params.opt.
        * params.opt: New file.
---
 gcc/Makefile.in  |   2 +-
 gcc/flag-types.h |  11 +
 gcc/params.opt   | 967 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 979 insertions(+), 1 deletion(-)
 create mode 100644 gcc/params.opt


0002-Include-new-generated-gcc-params.opt-file.patch (50K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 3/7] Apply mechanical replacement (generated patch).

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/ChangeLog:

2019-11-07  Martin Liska  <[hidden email]>

        * asan.c (asan_sanitize_stack_p): Replace old parameter syntax
        with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
        macro.
        (asan_sanitize_allocas_p): Likewise.
        (asan_emit_stack_protection): Likewise.
        (asan_protect_global): Likewise.
        (instrument_derefs): Likewise.
        (instrument_builtin_call): Likewise.
        (asan_expand_mark_ifn): Likewise.
        * auto-profile.c (auto_profile): Likewise.
        * bb-reorder.c (copy_bb_p): Likewise.
        (duplicate_computed_gotos): Likewise.
        * builtins.c (inline_expand_builtin_string_cmp): Likewise.
        * cfgcleanup.c (try_crossjump_to_edge): Likewise.
        (try_crossjump_bb): Likewise.
        * cfgexpand.c (defer_stack_allocation): Likewise.
        (stack_protect_classify_type): Likewise.
        (pass_expand::execute): Likewise.
        * cfgloopanal.c (expected_loop_iterations_unbounded): Likewise.
        (estimate_reg_pressure_cost): Likewise.
        * cgraph.c (cgraph_edge::maybe_hot_p): Likewise.
        * combine.c (combine_instructions): Likewise.
        (record_value_for_reg): Likewise.
        * common/config/aarch64/aarch64-common.c (aarch64_option_validate_param): Likewise.
        (aarch64_option_default_params): Likewise.
        * common/config/ia64/ia64-common.c (ia64_option_default_params): Likewise.
        * common/config/powerpcspe/powerpcspe-common.c (rs6000_option_default_params): Likewise.
        * common/config/rs6000/rs6000-common.c (rs6000_option_default_params): Likewise.
        * common/config/sh/sh-common.c (sh_option_default_params): Likewise.
        * config/aarch64/aarch64.c (aarch64_output_probe_stack_range): Likewise.
        (aarch64_allocate_and_probe_stack_space): Likewise.
        (aarch64_expand_epilogue): Likewise.
        (aarch64_override_options_internal): Likewise.
        * config/alpha/alpha.c (alpha_option_override): Likewise.
        * config/arm/arm.c (arm_option_override): Likewise.
        (arm_valid_target_attribute_p): Likewise.
        * config/i386/i386-options.c (ix86_option_override_internal): Likewise.
        * config/i386/i386.c (get_probe_interval): Likewise.
        (ix86_adjust_stack_and_probe_stack_clash): Likewise.
        (ix86_max_noce_ifcvt_seq_cost): Likewise.
        * config/ia64/ia64.c (ia64_adjust_cost): Likewise.
        * config/rs6000/rs6000-logue.c (get_stack_clash_protection_probe_interval): Likewise.
        (get_stack_clash_protection_guard_size): Likewise.
        * config/rs6000/rs6000.c (rs6000_option_override_internal): Likewise.
        * config/s390/s390.c (allocate_stack_space): Likewise.
        (s390_emit_prologue): Likewise.
        (s390_option_override_internal): Likewise.
        * config/sparc/sparc.c (sparc_option_override): Likewise.
        * config/visium/visium.c (visium_option_override): Likewise.
        * coverage.c (get_coverage_counts): Likewise.
        (coverage_compute_profile_id): Likewise.
        (coverage_begin_function): Likewise.
        (coverage_end_function): Likewise.
        * cse.c (cse_find_path): Likewise.
        (cse_extended_basic_block): Likewise.
        (cse_main): Likewise.
        * cselib.c (cselib_invalidate_mem): Likewise.
        * dse.c (dse_step1): Likewise.
        * emit-rtl.c (set_new_first_and_last_insn): Likewise.
        (get_max_insn_count): Likewise.
        (make_debug_insn_raw): Likewise.
        (init_emit): Likewise.
        * explow.c (compute_stack_clash_protection_loop_data): Likewise.
        * final.c (compute_alignments): Likewise.
        * fold-const.c (fold_range_test): Likewise.
        (fold_truth_andor): Likewise.
        (tree_single_nonnegative_warnv_p): Likewise.
        (integer_valued_real_single_p): Likewise.
        * gcse.c (want_to_gcse_p): Likewise.
        (prune_insertions_deletions): Likewise.
        (hoist_code): Likewise.
        (gcse_or_cprop_is_too_expensive): Likewise.
        * ggc-common.c: Likewise.
        * ggc-page.c (ggc_collect): Likewise.
        * gimple-loop-interchange.cc (MAX_NUM_STMT): Likewise.
        (MAX_DATAREFS): Likewise.
        (OUTER_STRIDE_RATIO): Likewise.
        * gimple-loop-jam.c (tree_loop_unroll_and_jam): Likewise.
        * gimple-loop-versioning.cc (loop_versioning::max_insns_for_loop): Likewise.
        * gimple-ssa-split-paths.c (is_feasible_trace): Likewise.
        * gimple-ssa-store-merging.c (imm_store_chain_info::try_coalesce_bswap): Likewise.
        (imm_store_chain_info::coalesce_immediate_stores): Likewise.
        (imm_store_chain_info::output_merged_store): Likewise.
        (pass_store_merging::process_store): Likewise.
        * gimple-ssa-strength-reduction.c (find_basis_for_base_expr): Likewise.
        * graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple): Likewise.
        (scop_to_isl_ast): Likewise.
        * graphite-optimize-isl.c (get_schedule_for_node_st): Likewise.
        (optimize_isl): Likewise.
        * graphite-scop-detection.c (build_scops): Likewise.
        * haifa-sched.c (set_modulo_params): Likewise.
        (rank_for_schedule): Likewise.
        (model_add_to_worklist): Likewise.
        (model_promote_insn): Likewise.
        (model_choose_insn): Likewise.
        (queue_to_ready): Likewise.
        (autopref_multipass_dfa_lookahead_guard): Likewise.
        (schedule_block): Likewise.
        (sched_init): Likewise.
        * hsa-gen.c (init_prologue): Likewise.
        * ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Likewise.
        (cond_move_process_if_block): Likewise.
        * ipa-cp.c (ipcp_lattice::add_value): Likewise.
        (merge_agg_lats_step): Likewise.
        (devirtualization_time_bonus): Likewise.
        (hint_time_bonus): Likewise.
        (incorporate_penalties): Likewise.
        (good_cloning_opportunity_p): Likewise.
        (ipcp_propagate_stage): Likewise.
        * ipa-fnsummary.c (decompose_param_expr): Likewise.
        (set_switch_stmt_execution_predicate): Likewise.
        (analyze_function_body): Likewise.
        (compute_fn_summary): Likewise.
        * ipa-inline-analysis.c (estimate_growth): Likewise.
        * ipa-inline.c (caller_growth_limits): Likewise.
        (inline_insns_single): Likewise.
        (inline_insns_auto): Likewise.
        (can_inline_edge_by_limits_p): Likewise.
        (want_early_inline_function_p): Likewise.
        (big_speedup_p): Likewise.
        (want_inline_small_function_p): Likewise.
        (want_inline_self_recursive_call_p): Likewise.
        (edge_badness): Likewise.
        (recursive_inlining): Likewise.
        (compute_max_insns): Likewise.
        (early_inliner): Likewise.
        * ipa-polymorphic-call.c (csftc_abort_walking_p): Likewise.
        * ipa-profile.c (ipa_profile): Likewise.
        * ipa-prop.c (determine_known_aggregate_parts): Likewise.
        (ipa_analyze_node): Likewise.
        (ipcp_transform_function): Likewise.
        * ipa-split.c (consider_split): Likewise.
        * ipa-sra.c (allocate_access): Likewise.
        (process_scan_results): Likewise.
        (ipa_sra_summarize_function): Likewise.
        (pull_accesses_from_callee): Likewise.
        * ira-build.c (loop_compare_func): Likewise.
        (mark_loops_for_removal): Likewise.
        * ira-conflicts.c (build_conflict_bit_table): Likewise.
        * loop-doloop.c (doloop_optimize): Likewise.
        * loop-invariant.c (gain_for_invariant): Likewise.
        (move_loop_invariants): Likewise.
        * loop-unroll.c (decide_unroll_constant_iterations): Likewise.
        (decide_unroll_runtime_iterations): Likewise.
        (decide_unroll_stupid): Likewise.
        (expand_var_during_unrolling): Likewise.
        * lra-assigns.c (spill_for): Likewise.
        * lra-constraints.c (EBB_PROBABILITY_CUTOFF): Likewise.
        * modulo-sched.c (sms_schedule): Likewise.
        (DFA_HISTORY): Likewise.
        * opts.c (default_options_optimization): Likewise.
        (finish_options): Likewise.
        (common_handle_option): Likewise.
        * postreload-gcse.c (eliminate_partially_redundant_load): Likewise.
        (if): Likewise.
        * predict.c (get_hot_bb_threshold): Likewise.
        (maybe_hot_count_p): Likewise.
        (probably_never_executed): Likewise.
        (predictable_edge_p): Likewise.
        (predict_loops): Likewise.
        (expr_expected_value_1): Likewise.
        (tree_predict_by_opcode): Likewise.
        (handle_missing_profiles): Likewise.
        * reload.c (find_equiv_reg): Likewise.
        * reorg.c (redundant_insn): Likewise.
        * resource.c (mark_target_live_regs): Likewise.
        (incr_ticks_for_insn): Likewise.
        * sanopt.c (pass_sanopt::execute): Likewise.
        * sched-deps.c (sched_analyze_1): Likewise.
        (sched_analyze_2): Likewise.
        (sched_analyze_insn): Likewise.
        (deps_analyze_insn): Likewise.
        * sched-ebb.c (schedule_ebbs): Likewise.
        * sched-rgn.c (find_single_block_region): Likewise.
        (too_large): Likewise.
        (haifa_find_rgns): Likewise.
        (extend_rgns): Likewise.
        (new_ready): Likewise.
        (schedule_region): Likewise.
        (sched_rgn_init): Likewise.
        * sel-sched-ir.c (make_region_from_loop): Likewise.
        * sel-sched-ir.h (MAX_WS): Likewise.
        * sel-sched.c (process_pipelined_exprs): Likewise.
        (sel_setup_region_sched_flags): Likewise.
        * shrink-wrap.c (try_shrink_wrapping): Likewise.
        * targhooks.c (default_max_noce_ifcvt_seq_cost): Likewise.
        * toplev.c (print_version): Likewise.
        (process_options): Likewise.
        * tracer.c (tail_duplicate): Likewise.
        * trans-mem.c (tm_log_add): Likewise.
        * tree-chrec.c (chrec_fold_plus_1): Likewise.
        * tree-data-ref.c (split_constant_offset): Likewise.
        (compute_all_dependences): Likewise.
        * tree-if-conv.c (MAX_PHI_ARG_NUM): Likewise.
        * tree-inline.c (remap_gimple_stmt): Likewise.
        * tree-loop-distribution.c (MAX_DATAREFS_NUM): Likewise.
        * tree-parloops.c (MIN_PER_THREAD): Likewise.
        (create_parallel_loop): Likewise.
        * tree-predcom.c (determine_unroll_factor): Likewise.
        * tree-scalar-evolution.c (instantiate_scev_r): Likewise.
        * tree-sra.c (analyze_all_variable_accesses): Likewise.
        * tree-ssa-ccp.c (fold_builtin_alloca_with_align): Likewise.
        * tree-ssa-dse.c (setup_live_bytes_from_ref): Likewise.
        (dse_optimize_redundant_stores): Likewise.
        (dse_classify_store): Likewise.
        * tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise.
        * tree-ssa-loop-ch.c (ch_base::copy_headers): Likewise.
        * tree-ssa-loop-im.c (LIM_EXPENSIVE): Likewise.
        * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Likewise.
        (try_peel_loop): Likewise.
        (tree_unroll_loops_completely): Likewise.
        * tree-ssa-loop-ivopts.c (avg_loop_niter): Likewise.
        (CONSIDER_ALL_CANDIDATES_BOUND): Likewise.
        (MAX_CONSIDERED_GROUPS): Likewise.
        (ALWAYS_PRUNE_CAND_SET_BOUND): Likewise.
        * tree-ssa-loop-manip.c (can_unroll_loop_p): Likewise.
        * tree-ssa-loop-niter.c (MAX_ITERATIONS_TO_TRACK): Likewise.
        * tree-ssa-loop-prefetch.c (PREFETCH_BLOCK): Likewise.
        (L1_CACHE_SIZE_BYTES): Likewise.
        (L2_CACHE_SIZE_BYTES): Likewise.
        (should_issue_prefetch_p): Likewise.
        (schedule_prefetches): Likewise.
        (determine_unroll_factor): Likewise.
        (volume_of_references): Likewise.
        (add_subscript_strides): Likewise.
        (self_reuse_distance): Likewise.
        (mem_ref_count_reasonable_p): Likewise.
        (insn_to_prefetch_ratio_too_small_p): Likewise.
        (loop_prefetch_arrays): Likewise.
        (tree_ssa_prefetch_arrays): Likewise.
        * tree-ssa-loop-unswitch.c (tree_unswitch_single_loop): Likewise.
        * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Likewise.
        (convert_mult_to_fma): Likewise.
        (math_opts_dom_walker::after_dom_children): Likewise.
        * tree-ssa-phiopt.c (cond_if_else_store_replacement): Likewise.
        (hoist_adjacent_loads): Likewise.
        (gate_hoist_loads): Likewise.
        * tree-ssa-pre.c (translate_vuse_through_block): Likewise.
        (compute_partial_antic_aux): Likewise.
        * tree-ssa-reassoc.c (get_reassociation_width): Likewise.
        * tree-ssa-sccvn.c (vn_reference_lookup_pieces): Likewise.
        (vn_reference_lookup): Likewise.
        (do_rpo_vn): Likewise.
        * tree-ssa-scopedtables.c (avail_exprs_stack::lookup_avail_expr): Likewise.
        * tree-ssa-sink.c (select_best_block): Likewise.
        * tree-ssa-strlen.c (new_stridx): Likewise.
        (new_addr_stridx): Likewise.
        (get_range_strlen_dynamic): Likewise.
        (class ssa_name_limit_t): Likewise.
        * tree-ssa-structalias.c (push_fields_onto_fieldstack): Likewise.
        (create_variable_info_for_1): Likewise.
        (init_alias_vars): Likewise.
        * tree-ssa-tail-merge.c (find_clusters_1): Likewise.
        (tail_merge_optimize): Likewise.
        * tree-ssa-threadbackward.c (thread_jumps::profitable_jump_thread_path): Likewise.
        (thread_jumps::fsm_find_control_statement_thread_paths): Likewise.
        (thread_jumps::find_jump_threads_backwards): Likewise.
        * tree-ssa-threadedge.c (record_temporary_equivalences_from_stmts_at_dest): Likewise.
        * tree-ssa-uninit.c (compute_control_dep_chain): Likewise.
        * tree-switch-conversion.c (switch_conversion::check_range): Likewise.
        (jump_table_cluster::can_be_handled): Likewise.
        * tree-switch-conversion.h (jump_table_cluster::case_values_threshold): Likewise.
        (SWITCH_CONVERSION_BRANCH_RATIO): Likewise.
        (param_switch_conversion_branch_ratio): Likewise.
        * tree-vect-data-refs.c (vect_mark_for_runtime_alias_test): Likewise.
        (vect_enhance_data_refs_alignment): Likewise.
        (vect_prune_runtime_alias_test_list): Likewise.
        * tree-vect-loop.c (vect_analyze_loop_costing): Likewise.
        (vect_get_datarefs_in_loop): Likewise.
        (vect_analyze_loop): Likewise.
        * tree-vect-slp.c (vect_slp_bb): Likewise.
        * tree-vectorizer.h: Likewise.
        * tree-vrp.c (find_switch_asserts): Likewise.
        (vrp_prop::check_mem_ref): Likewise.
        * tree.c (wide_int_to_tree_1): Likewise.
        (cache_integer_cst): Likewise.
        * var-tracking.c (EXPR_USE_DEPTH): Likewise.
        (reverse_op): Likewise.
        (vt_find_locations): Likewise.

gcc/c/ChangeLog:

2019-11-07  Martin Liska  <[hidden email]>

        * gimple-parser.c (c_parser_parse_gimple_body): Replace old parameter syntax
        with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
        macro.

gcc/cp/ChangeLog:

2019-11-07  Martin Liska  <[hidden email]>

        * name-lookup.c (namespace_hints::namespace_hints): Replace old parameter syntax
        with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
        macro.
        * typeck.c (comptypes): Likewise.

gcc/lto/ChangeLog:

2019-11-07  Martin Liska  <[hidden email]>

        * lto-partition.c (lto_balanced_map): Replace old parameter syntax
        with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
        macro.
        * lto.c (do_whole_program_analysis): Likewise.
---
 gcc/asan.c                                    | 18 ++--
 gcc/auto-profile.c                            |  2 +-
 gcc/bb-reorder.c                              |  4 +-
 gcc/builtins.c                                |  2 +-
 gcc/c/gimple-parser.c                         |  2 +-
 gcc/cfgcleanup.c                              |  4 +-
 gcc/cfgexpand.c                               |  8 +-
 gcc/cfgloopanal.c                             |  8 +-
 gcc/cgraph.c                                  |  2 +-
 gcc/combine.c                                 |  4 +-
 gcc/common/config/aarch64/aarch64-common.c    | 15 ++--
 gcc/common/config/ia64/ia64-common.c          |  8 +-
 .../config/powerpcspe/powerpcspe-common.c     |  2 +-
 gcc/common/config/rs6000/rs6000-common.c      |  2 +-
 gcc/common/config/sh/sh-common.c              |  2 +-
 gcc/config/aarch64/aarch64.c                  | 79 ++++++++----------
 gcc/config/alpha/alpha.c                      | 16 ++--
 gcc/config/arm/arm.c                          | 43 ++++------
 gcc/config/i386/i386-options.c                | 32 +++----
 gcc/config/i386/i386.c                        | 26 +++---
 gcc/config/ia64/ia64.c                        |  2 +-
 gcc/config/rs6000/rs6000-logue.c              |  4 +-
 gcc/config/rs6000/rs6000.c                    | 55 ++++++------
 gcc/config/s390/s390.c                        | 79 ++++++------------
 gcc/config/sparc/sparc.c                      | 83 +++++++++----------
 gcc/config/visium/visium.c                    |  6 +-
 gcc/coverage.c                                |  8 +-
 gcc/cp/name-lookup.c                          |  2 +-
 gcc/cp/typeck.c                               |  4 +-
 gcc/cse.c                                     |  6 +-
 gcc/cselib.c                                  |  2 +-
 gcc/dse.c                                     |  2 +-
 gcc/emit-rtl.c                                | 18 ++--
 gcc/explow.c                                  |  2 +-
 gcc/final.c                                   |  4 +-
 gcc/fold-const.c                              | 12 +--
 gcc/gcse.c                                    | 16 ++--
 gcc/ggc-common.c                              |  4 +-
 gcc/ggc-page.c                                |  4 +-
 gcc/gimple-loop-interchange.cc                |  6 +-
 gcc/gimple-loop-jam.c                         |  8 +-
 gcc/gimple-loop-versioning.cc                 |  4 +-
 gcc/gimple-ssa-split-paths.c                  |  2 +-
 gcc/gimple-ssa-store-merging.c                |  8 +-
 gcc/gimple-ssa-strength-reduction.c           |  2 +-
 gcc/graphite-isl-ast-to-gimple.c              |  4 +-
 gcc/graphite-optimize-isl.c                   |  4 +-
 gcc/graphite-scop-detection.c                 |  4 +-
 gcc/haifa-sched.c                             | 38 ++++-----
 gcc/hsa-gen.c                                 |  2 +-
 gcc/ifcvt.c                                   |  4 +-
 gcc/ipa-cp.c                                  | 30 +++----
 gcc/ipa-fnsummary.c                           | 20 ++---
 gcc/ipa-inline-analysis.c                     |  2 +-
 gcc/ipa-inline.c                              | 77 +++++++++--------
 gcc/ipa-polymorphic-call.c                    |  2 +-
 gcc/ipa-profile.c                             |  2 +-
 gcc/ipa-prop.c                                |  6 +-
 gcc/ipa-split.c                               | 10 +--
 gcc/ipa-sra.c                                 |  9 +-
 gcc/ira-build.c                               |  4 +-
 gcc/ira-conflicts.c                           |  4 +-
 gcc/loop-doloop.c                             |  2 +-
 gcc/loop-invariant.c                          |  4 +-
 gcc/loop-unroll.c                             | 26 +++---
 gcc/lra-assigns.c                             |  2 +-
 gcc/lra-constraints.c                         |  2 +-
 gcc/lto/lto-partition.c                       | 10 +--
 gcc/lto/lto.c                                 | 10 +--
 gcc/modulo-sched.c                            |  6 +-
 gcc/opts.c                                    | 48 ++++-------
 gcc/postreload-gcse.c                         |  6 +-
 gcc/predict.c                                 | 20 ++---
 gcc/reload.c                                  |  2 +-
 gcc/reorg.c                                   |  4 +-
 gcc/resource.c                                |  4 +-
 gcc/sanopt.c                                  |  4 +-
 gcc/sched-deps.c                              | 10 +--
 gcc/sched-ebb.c                               |  4 +-
 gcc/sched-rgn.c                               | 18 ++--
 gcc/sel-sched-ir.c                            |  4 +-
 gcc/sel-sched-ir.h                            |  2 +-
 gcc/sel-sched.c                               |  4 +-
 gcc/shrink-wrap.c                             |  2 +-
 gcc/targhooks.c                               | 21 ++---
 gcc/toplev.c                                  |  4 +-
 gcc/tracer.c                                  | 12 +--
 gcc/trans-mem.c                               |  2 +-
 gcc/tree-chrec.c                              |  4 +-
 gcc/tree-data-ref.c                           |  4 +-
 gcc/tree-if-conv.c                            |  2 +-
 gcc/tree-inline.c                             |  2 +-
 gcc/tree-loop-distribution.c                  |  2 +-
 gcc/tree-parloops.c                           | 18 ++--
 gcc/tree-predcom.c                            |  2 +-
 gcc/tree-scalar-evolution.c                   |  4 +-
 gcc/tree-sra.c                                | 19 +++--
 gcc/tree-ssa-ccp.c                            |  2 +-
 gcc/tree-ssa-dse.c                            |  8 +-
 gcc/tree-ssa-ifcombine.c                      |  4 +-
 gcc/tree-ssa-loop-ch.c                        |  2 +-
 gcc/tree-ssa-loop-im.c                        |  2 +-
 gcc/tree-ssa-loop-ivcanon.c                   | 18 ++--
 gcc/tree-ssa-loop-ivopts.c                    | 10 +--
 gcc/tree-ssa-loop-manip.c                     |  2 +-
 gcc/tree-ssa-loop-niter.c                     |  2 +-
 gcc/tree-ssa-loop-prefetch.c                  | 46 +++++-----
 gcc/tree-ssa-loop-unswitch.c                  |  6 +-
 gcc/tree-ssa-math-opts.c                      |  6 +-
 gcc/tree-ssa-phiopt.c                         |  8 +-
 gcc/tree-ssa-pre.c                            |  4 +-
 gcc/tree-ssa-reassoc.c                        |  2 +-
 gcc/tree-ssa-sccvn.c                          |  6 +-
 gcc/tree-ssa-scopedtables.c                   |  2 +-
 gcc/tree-ssa-sink.c                           |  2 +-
 gcc/tree-ssa-strlen.c                         |  8 +-
 gcc/tree-ssa-structalias.c                    |  8 +-
 gcc/tree-ssa-tail-merge.c                     |  4 +-
 gcc/tree-ssa-threadbackward.c                 | 16 ++--
 gcc/tree-ssa-threadedge.c                     |  4 +-
 gcc/tree-ssa-uninit.c                         |  2 +-
 gcc/tree-switch-conversion.c                  |  6 +-
 gcc/tree-switch-conversion.h                  |  4 +-
 gcc/tree-vect-data-refs.c                     | 11 ++-
 gcc/tree-vect-loop.c                          |  6 +-
 gcc/tree-vect-slp.c                           |  2 +-
 gcc/tree-vectorizer.h                         |  2 +-
 gcc/tree-vrp.c                                |  4 +-
 gcc/tree.c                                    | 22 ++---
 gcc/var-tracking.c                            |  6 +-
 130 files changed, 640 insertions(+), 731 deletions(-)


0003-Apply-mechanical-replacement-generated-patch.patch (188K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 4/7] Remove gcc/params.* files.

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * Makefile.in: Remove PARAMS_H and params.list
        and params.options.
        * params-enum.h: Remove.
        * params-list.h: Remove.
        * params-options.h: Remove.
        * params.c: Remove.
        * params.def: Remove.
        * params.h: Remove.
        * asan.c: Do not include params.h.
        * auto-profile.c: Likewise.
        * bb-reorder.c: Likewise.
        * builtins.c: Likewise.
        * cfgcleanup.c: Likewise.
        * cfgexpand.c: Likewise.
        * cfgloopanal.c: Likewise.
        * cgraph.c: Likewise.
        * combine.c: Likewise.
        * common/config/aarch64/aarch64-common.c: Likewise.
        * common/config/gcn/gcn-common.c: Likewise.
        * common/config/ia64/ia64-common.c: Likewise.
        * common/config/powerpcspe/powerpcspe-common.c: Likewise.
        * common/config/rs6000/rs6000-common.c: Likewise.
        * common/config/sh/sh-common.c: Likewise.
        * config/aarch64/aarch64.c: Likewise.
        * config/alpha/alpha.c: Likewise.
        * config/arm/arm.c: Likewise.
        * config/avr/avr.c: Likewise.
        * config/csky/csky.c: Likewise.
        * config/i386/i386-builtins.c: Likewise.
        * config/i386/i386-expand.c: Likewise.
        * config/i386/i386-features.c: Likewise.
        * config/i386/i386-options.c: Likewise.
        * config/i386/i386.c: Likewise.
        * config/ia64/ia64.c: Likewise.
        * config/rs6000/rs6000-logue.c: Likewise.
        * config/rs6000/rs6000.c: Likewise.
        * config/s390/s390.c: Likewise.
        * config/sparc/sparc.c: Likewise.
        * config/visium/visium.c: Likewise.
        * coverage.c: Likewise.
        * cprop.c: Likewise.
        * cse.c: Likewise.
        * cselib.c: Likewise.
        * dse.c: Likewise.
        * emit-rtl.c: Likewise.
        * explow.c: Likewise.
        * final.c: Likewise.
        * fold-const.c: Likewise.
        * gcc.c: Likewise.
        * gcse.c: Likewise.
        * ggc-common.c: Likewise.
        * ggc-page.c: Likewise.
        * gimple-loop-interchange.cc: Likewise.
        * gimple-loop-jam.c: Likewise.
        * gimple-loop-versioning.cc: Likewise.
        * gimple-ssa-split-paths.c: Likewise.
        * gimple-ssa-sprintf.c: Likewise.
        * gimple-ssa-store-merging.c: Likewise.
        * gimple-ssa-strength-reduction.c: Likewise.
        * gimple-ssa-warn-alloca.c: Likewise.
        * gimple-ssa-warn-restrict.c: Likewise.
        * graphite-isl-ast-to-gimple.c: Likewise.
        * graphite-optimize-isl.c: Likewise.
        * graphite-scop-detection.c: Likewise.
        * graphite-sese-to-poly.c: Likewise.
        * graphite.c: Likewise.
        * haifa-sched.c: Likewise.
        * hsa-gen.c: Likewise.
        * ifcvt.c: Likewise.
        * ipa-cp.c: Likewise.
        * ipa-fnsummary.c: Likewise.
        * ipa-inline-analysis.c: Likewise.
        * ipa-inline.c: Likewise.
        * ipa-polymorphic-call.c: Likewise.
        * ipa-profile.c: Likewise.
        * ipa-prop.c: Likewise.
        * ipa-split.c: Likewise.
        * ipa-sra.c: Likewise.
        * ira-build.c: Likewise.
        * ira-conflicts.c: Likewise.
        * loop-doloop.c: Likewise.
        * loop-invariant.c: Likewise.
        * loop-unroll.c: Likewise.
        * lra-assigns.c: Likewise.
        * lra-constraints.c: Likewise.
        * modulo-sched.c: Likewise.
        * opt-suggestions.c: Likewise.
        * opts.c: Likewise.
        * postreload-gcse.c: Likewise.
        * predict.c: Likewise.
        * reload.c: Likewise.
        * reorg.c: Likewise.
        * resource.c: Likewise.
        * sanopt.c: Likewise.
        * sched-deps.c: Likewise.
        * sched-ebb.c: Likewise.
        * sched-rgn.c: Likewise.
        * sel-sched-ir.c: Likewise.
        * sel-sched.c: Likewise.
        * shrink-wrap.c: Likewise.
        * stmt.c: Likewise.
        * targhooks.c: Likewise.
        * toplev.c: Likewise.
        * tracer.c: Likewise.
        * trans-mem.c: Likewise.
        * tree-chrec.c: Likewise.
        * tree-data-ref.c: Likewise.
        * tree-if-conv.c: Likewise.
        * tree-inline.c: Likewise.
        * tree-loop-distribution.c: Likewise.
        * tree-parloops.c: Likewise.
        * tree-predcom.c: Likewise.
        * tree-profile.c: Likewise.
        * tree-scalar-evolution.c: Likewise.
        * tree-sra.c: Likewise.
        * tree-ssa-ccp.c: Likewise.
        * tree-ssa-dom.c: Likewise.
        * tree-ssa-dse.c: Likewise.
        * tree-ssa-ifcombine.c: Likewise.
        * tree-ssa-loop-ch.c: Likewise.
        * tree-ssa-loop-im.c: Likewise.
        * tree-ssa-loop-ivcanon.c: Likewise.
        * tree-ssa-loop-ivopts.c: Likewise.
        * tree-ssa-loop-manip.c: Likewise.
        * tree-ssa-loop-niter.c: Likewise.
        * tree-ssa-loop-prefetch.c: Likewise.
        * tree-ssa-loop-unswitch.c: Likewise.
        * tree-ssa-math-opts.c: Likewise.
        * tree-ssa-phiopt.c: Likewise.
        * tree-ssa-pre.c: Likewise.
        * tree-ssa-reassoc.c: Likewise.
        * tree-ssa-sccvn.c: Likewise.
        * tree-ssa-scopedtables.c: Likewise.
        * tree-ssa-sink.c: Likewise.
        * tree-ssa-strlen.c: Likewise.
        * tree-ssa-structalias.c: Likewise.
        * tree-ssa-tail-merge.c: Likewise.
        * tree-ssa-threadbackward.c: Likewise.
        * tree-ssa-threadedge.c: Likewise.
        * tree-ssa-uninit.c: Likewise.
        * tree-switch-conversion.c: Likewise.
        * tree-vect-data-refs.c: Likewise.
        * tree-vect-loop.c: Likewise.
        * tree-vect-slp.c: Likewise.
        * tree-vrp.c: Likewise.
        * tree.c: Likewise.
        * value-prof.c: Likewise.
        * var-tracking.c: Likewise.

gcc/c/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * gimple-parser.c: Do not include params.h.

gcc/cp/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * name-lookup.c: Do not include params.h.
        * typeck.c: Likewise.

gcc/lto/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * lto-common.c: Do not include params.h.
        * lto-partition.c: Likewise.
        * lto.c: Likewise.
---
 gcc/Makefile.in                               |   18 +-
 gcc/asan.c                                    |    1 -
 gcc/auto-profile.c                            |    1 -
 gcc/bb-reorder.c                              |    1 -
 gcc/builtins.c                                |    1 -
 gcc/c/gimple-parser.c                         |    1 -
 gcc/cfgcleanup.c                              |    1 -
 gcc/cfgexpand.c                               |    1 -
 gcc/cfgloopanal.c                             |    1 -
 gcc/cgraph.c                                  |    1 -
 gcc/combine.c                                 |    1 -
 gcc/common/config/aarch64/aarch64-common.c    |    1 -
 gcc/common/config/gcn/gcn-common.c            |    1 -
 gcc/common/config/ia64/ia64-common.c          |    1 -
 .../config/powerpcspe/powerpcspe-common.c     |    1 -
 gcc/common/config/rs6000/rs6000-common.c      |    1 -
 gcc/common/config/sh/sh-common.c              |    1 -
 gcc/config/aarch64/aarch64.c                  |    1 -
 gcc/config/alpha/alpha.c                      |    1 -
 gcc/config/arm/arm.c                          |    1 -
 gcc/config/avr/avr.c                          |    1 -
 gcc/config/csky/csky.c                        |    1 -
 gcc/config/i386/i386-builtins.c               |    1 -
 gcc/config/i386/i386-expand.c                 |    1 -
 gcc/config/i386/i386-features.c               |    1 -
 gcc/config/i386/i386-options.c                |    1 -
 gcc/config/i386/i386.c                        |    1 -
 gcc/config/ia64/ia64.c                        |    1 -
 gcc/config/rs6000/rs6000-logue.c              |    1 -
 gcc/config/rs6000/rs6000.c                    |    1 -
 gcc/config/s390/s390.c                        |    1 -
 gcc/config/sparc/sparc.c                      |    1 -
 gcc/config/visium/visium.c                    |    1 -
 gcc/coverage.c                                |    1 -
 gcc/cp/name-lookup.c                          |    1 -
 gcc/cp/typeck.c                               |    1 -
 gcc/cprop.c                                   |    1 -
 gcc/cse.c                                     |    1 -
 gcc/cselib.c                                  |    1 -
 gcc/dse.c                                     |    1 -
 gcc/emit-rtl.c                                |    1 -
 gcc/explow.c                                  |    1 -
 gcc/final.c                                   |    1 -
 gcc/fold-const.c                              |    1 -
 gcc/gcc.c                                     |    1 -
 gcc/gcse.c                                    |    1 -
 gcc/ggc-common.c                              |    1 -
 gcc/ggc-page.c                                |    1 -
 gcc/gimple-loop-interchange.cc                |    1 -
 gcc/gimple-loop-jam.c                         |    1 -
 gcc/gimple-loop-versioning.cc                 |    1 -
 gcc/gimple-ssa-split-paths.c                  |    1 -
 gcc/gimple-ssa-sprintf.c                      |    1 -
 gcc/gimple-ssa-store-merging.c                |    1 -
 gcc/gimple-ssa-strength-reduction.c           |    1 -
 gcc/gimple-ssa-warn-alloca.c                  |    1 -
 gcc/gimple-ssa-warn-restrict.c                |    1 -
 gcc/graphite-isl-ast-to-gimple.c              |    1 -
 gcc/graphite-optimize-isl.c                   |    1 -
 gcc/graphite-scop-detection.c                 |    1 -
 gcc/graphite-sese-to-poly.c                   |    1 -
 gcc/graphite.c                                |    1 -
 gcc/haifa-sched.c                             |    1 -
 gcc/hsa-gen.c                                 |    1 -
 gcc/ifcvt.c                                   |    1 -
 gcc/ipa-cp.c                                  |    1 -
 gcc/ipa-fnsummary.c                           |    1 -
 gcc/ipa-inline-analysis.c                     |    1 -
 gcc/ipa-inline.c                              |    1 -
 gcc/ipa-polymorphic-call.c                    |    1 -
 gcc/ipa-profile.c                             |    1 -
 gcc/ipa-prop.c                                |    1 -
 gcc/ipa-split.c                               |    1 -
 gcc/ipa-sra.c                                 |    1 -
 gcc/ira-build.c                               |    1 -
 gcc/ira-conflicts.c                           |    1 -
 gcc/loop-doloop.c                             |    1 -
 gcc/loop-invariant.c                          |    1 -
 gcc/loop-unroll.c                             |    1 -
 gcc/lra-assigns.c                             |    1 -
 gcc/lra-constraints.c                         |    1 -
 gcc/lto/lto-common.c                          |    1 -
 gcc/lto/lto-partition.c                       |    1 -
 gcc/lto/lto.c                                 |    1 -
 gcc/modulo-sched.c                            |    1 -
 gcc/opt-suggestions.c                         |    1 -
 gcc/opts.c                                    |    1 -
 gcc/params-enum.h                             |   39 -
 gcc/params-list.h                             |   26 -
 gcc/params-options.h                          |   27 -
 gcc/params.c                                  |  302 ----
 gcc/params.def                                | 1495 -----------------
 gcc/params.h                                  |  254 ---
 gcc/postreload-gcse.c                         |    1 -
 gcc/predict.c                                 |    1 -
 gcc/reload.c                                  |    1 -
 gcc/reorg.c                                   |    1 -
 gcc/resource.c                                |    1 -
 gcc/sanopt.c                                  |    1 -
 gcc/sched-deps.c                              |    1 -
 gcc/sched-ebb.c                               |    1 -
 gcc/sched-rgn.c                               |    1 -
 gcc/sel-sched-ir.c                            |    1 -
 gcc/sel-sched.c                               |    1 -
 gcc/shrink-wrap.c                             |    1 -
 gcc/stmt.c                                    |    1 -
 gcc/targhooks.c                               |    1 -
 gcc/toplev.c                                  |    1 -
 gcc/tracer.c                                  |    1 -
 gcc/trans-mem.c                               |    1 -
 gcc/tree-chrec.c                              |    1 -
 gcc/tree-data-ref.c                           |    1 -
 gcc/tree-if-conv.c                            |    1 -
 gcc/tree-inline.c                             |    1 -
 gcc/tree-loop-distribution.c                  |    1 -
 gcc/tree-parloops.c                           |    2 -
 gcc/tree-predcom.c                            |    1 -
 gcc/tree-profile.c                            |    1 -
 gcc/tree-scalar-evolution.c                   |    1 -
 gcc/tree-sra.c                                |    1 -
 gcc/tree-ssa-ccp.c                            |    1 -
 gcc/tree-ssa-dom.c                            |    1 -
 gcc/tree-ssa-dse.c                            |    1 -
 gcc/tree-ssa-ifcombine.c                      |    1 -
 gcc/tree-ssa-loop-ch.c                        |    1 -
 gcc/tree-ssa-loop-im.c                        |    1 -
 gcc/tree-ssa-loop-ivcanon.c                   |    1 -
 gcc/tree-ssa-loop-ivopts.c                    |    1 -
 gcc/tree-ssa-loop-manip.c                     |    1 -
 gcc/tree-ssa-loop-niter.c                     |    1 -
 gcc/tree-ssa-loop-prefetch.c                  |    1 -
 gcc/tree-ssa-loop-unswitch.c                  |    1 -
 gcc/tree-ssa-math-opts.c                      |    1 -
 gcc/tree-ssa-phiopt.c                         |    1 -
 gcc/tree-ssa-pre.c                            |    1 -
 gcc/tree-ssa-reassoc.c                        |    1 -
 gcc/tree-ssa-sccvn.c                          |    1 -
 gcc/tree-ssa-scopedtables.c                   |    1 -
 gcc/tree-ssa-sink.c                           |    1 -
 gcc/tree-ssa-strlen.c                         |    1 -
 gcc/tree-ssa-structalias.c                    |    1 -
 gcc/tree-ssa-tail-merge.c                     |    1 -
 gcc/tree-ssa-threadbackward.c                 |    1 -
 gcc/tree-ssa-threadedge.c                     |    1 -
 gcc/tree-ssa-uninit.c                         |    1 -
 gcc/tree-switch-conversion.c                  |    1 -
 gcc/tree-vect-data-refs.c                     |    1 -
 gcc/tree-vect-loop.c                          |    1 -
 gcc/tree-vect-slp.c                           |    1 -
 gcc/tree-vrp.c                                |    1 -
 gcc/tree.c                                    |    1 -
 gcc/value-prof.c                              |    1 -
 gcc/var-tracking.c                            |    1 -
 153 files changed, 2 insertions(+), 2306 deletions(-)
 delete mode 100644 gcc/params-enum.h
 delete mode 100644 gcc/params-list.h
 delete mode 100644 gcc/params-options.h
 delete mode 100644 gcc/params.c
 delete mode 100644 gcc/params.def
 delete mode 100644 gcc/params.h


0004-Remove-gcc-params.-files.patch (138K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 5/7] Remove last leftover usage of params* files.

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * common.opt: Remove param_values.
        * config/i386/i386-options.c (ix86_valid_target_attribute_p):
        Remove finalize_options_struct.
        * gcc.c (driver::decode_argv): Do not call global_init_params
        and finish_params.
        (driver::finalize): Do not call params_c_finalize
        and finalize_options_struct.
        * opt-suggestions.c (option_proposer::get_completions): Remove
        special casing of params.
        (option_proposer::find_param_completions): Remove.
        (test_completion_partial_match): Update expected output.
        * opt-suggestions.h: Remove find_param_completions.
        * opts-common.c (add_misspelling_candidates): Add
        --param with a space.
        * opts.c (handle_param): Remove.
        (init_options_struct):. Remove init_options_struct and
        similar calls.
        (finalize_options_struct): Remove.
        (common_handle_option): Use SET_OPTION_IF_UNSET.
        * opts.h (finalize_options_struct): Remove.
        * toplev.c (general_init): Do not call global_init_params.
        (toplev::finalize): Do not call params_c_finalize and
        finalize_options_struct.
---
 gcc/common.opt                 |  3 --
 gcc/config/i386/i386-options.c |  2 -
 gcc/gcc.c                      |  8 ----
 gcc/opt-suggestions.c          | 58 ++++++---------------------
 gcc/opt-suggestions.h          |  5 ---
 gcc/opts-common.c              | 11 ++++++
 gcc/opts.c                     | 71 ++--------------------------------
 gcc/opts.h                     |  1 -
 gcc/toplev.c                   |  8 ----
 9 files changed, 27 insertions(+), 140 deletions(-)


0005-Remove-last-leftover-usage-of-params-files.patch (11K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 6/7] Remove set_default_param_value from documentation.

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * common/common-target.def:
        Do not mention set_default_param_value
        and set_param_value.
        * doc/tm.texi: Likewise.
---
 gcc/common/common-target.def | 6 ++----
 gcc/doc/tm.texi              | 4 ++--
 2 files changed, 4 insertions(+), 6 deletions(-)


0006-Remove-set_default_param_value-from-documentation.patch (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 7/7] Fix test-suite fallout.

Martin Liška-2
In reply to this post by Martin Liška-2

gcc/testsuite/ChangeLog:

2019-11-06  Martin Liska  <[hidden email]>

        * gcc.dg/completion-3.c: Append = to all expected
        results and sort expected output.
        * gcc.dg/pr83620.c: Update error message.
        * gcc.dg/spellcheck-params-2.c: Likewise.
        * gcc.dg/spellcheck-params.c: Likewise.
        * gcc.misc-tests/help.exp: Update expected output.
---
 gcc/testsuite/gcc.dg/completion-3.c        | 16 ++++++++--------
 gcc/testsuite/gcc.dg/pr83620.c             |  2 +-
 gcc/testsuite/gcc.dg/spellcheck-params-2.c |  2 +-
 gcc/testsuite/gcc.dg/spellcheck-params.c   |  2 +-
 gcc/testsuite/gcc.misc-tests/help.exp      |  4 +---
 5 files changed, 12 insertions(+), 14 deletions(-)


0007-Fix-test-suite-fallout.patch (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH] Use more SET_OPTION_IF_UNSET.

Martin Liška-2
In reply to this post by Martin Liška-2
There's one more refactoring patch that is about more
usage of SET_OPTION_IF_UNSET for parameters.

Patch can bootstrap on x86_64-linux-gnu and survives regression tests.

Ready to be installed?
Thanks,
Martin

0001-Use-more-SET_OPTION_IF_UNSET.patch (19K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 3/7] Apply mechanical replacement (generated patch).

Richard Biener-2
In reply to this post by Martin Liška-2
On Thu, Nov 7, 2019 at 1:35 PM Martin Liska <[hidden email]> wrote:
>
>
> gcc/ChangeLog:

I think I've noticed at least one long line (please double-check):

-             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
INTEGER_SHARE_LIMIT)
+             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
param_integer_share_limit)

as a followup I notice that the targets *_default_params () functions should
be merged into the default-options structs they have (did you check the
defaults are still applied and user-overridable?)

> 2019-11-07  Martin Liska  <[hidden email]>
>
>         * asan.c (asan_sanitize_stack_p): Replace old parameter syntax
>         with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
>         macro.
>         (asan_sanitize_allocas_p): Likewise.
>         (asan_emit_stack_protection): Likewise.
>         (asan_protect_global): Likewise.
>         (instrument_derefs): Likewise.
>         (instrument_builtin_call): Likewise.
>         (asan_expand_mark_ifn): Likewise.
>         * auto-profile.c (auto_profile): Likewise.
>         * bb-reorder.c (copy_bb_p): Likewise.
>         (duplicate_computed_gotos): Likewise.
>         * builtins.c (inline_expand_builtin_string_cmp): Likewise.
>         * cfgcleanup.c (try_crossjump_to_edge): Likewise.
>         (try_crossjump_bb): Likewise.
>         * cfgexpand.c (defer_stack_allocation): Likewise.
>         (stack_protect_classify_type): Likewise.
>         (pass_expand::execute): Likewise.
>         * cfgloopanal.c (expected_loop_iterations_unbounded): Likewise.
>         (estimate_reg_pressure_cost): Likewise.
>         * cgraph.c (cgraph_edge::maybe_hot_p): Likewise.
>         * combine.c (combine_instructions): Likewise.
>         (record_value_for_reg): Likewise.
>         * common/config/aarch64/aarch64-common.c (aarch64_option_validate_param): Likewise.
>         (aarch64_option_default_params): Likewise.
>         * common/config/ia64/ia64-common.c (ia64_option_default_params): Likewise.
>         * common/config/powerpcspe/powerpcspe-common.c (rs6000_option_default_params): Likewise.
>         * common/config/rs6000/rs6000-common.c (rs6000_option_default_params): Likewise.
>         * common/config/sh/sh-common.c (sh_option_default_params): Likewise.
>         * config/aarch64/aarch64.c (aarch64_output_probe_stack_range): Likewise.
>         (aarch64_allocate_and_probe_stack_space): Likewise.
>         (aarch64_expand_epilogue): Likewise.
>         (aarch64_override_options_internal): Likewise.
>         * config/alpha/alpha.c (alpha_option_override): Likewise.
>         * config/arm/arm.c (arm_option_override): Likewise.
>         (arm_valid_target_attribute_p): Likewise.
>         * config/i386/i386-options.c (ix86_option_override_internal): Likewise.
>         * config/i386/i386.c (get_probe_interval): Likewise.
>         (ix86_adjust_stack_and_probe_stack_clash): Likewise.
>         (ix86_max_noce_ifcvt_seq_cost): Likewise.
>         * config/ia64/ia64.c (ia64_adjust_cost): Likewise.
>         * config/rs6000/rs6000-logue.c (get_stack_clash_protection_probe_interval): Likewise.
>         (get_stack_clash_protection_guard_size): Likewise.
>         * config/rs6000/rs6000.c (rs6000_option_override_internal): Likewise.
>         * config/s390/s390.c (allocate_stack_space): Likewise.
>         (s390_emit_prologue): Likewise.
>         (s390_option_override_internal): Likewise.
>         * config/sparc/sparc.c (sparc_option_override): Likewise.
>         * config/visium/visium.c (visium_option_override): Likewise.
>         * coverage.c (get_coverage_counts): Likewise.
>         (coverage_compute_profile_id): Likewise.
>         (coverage_begin_function): Likewise.
>         (coverage_end_function): Likewise.
>         * cse.c (cse_find_path): Likewise.
>         (cse_extended_basic_block): Likewise.
>         (cse_main): Likewise.
>         * cselib.c (cselib_invalidate_mem): Likewise.
>         * dse.c (dse_step1): Likewise.
>         * emit-rtl.c (set_new_first_and_last_insn): Likewise.
>         (get_max_insn_count): Likewise.
>         (make_debug_insn_raw): Likewise.
>         (init_emit): Likewise.
>         * explow.c (compute_stack_clash_protection_loop_data): Likewise.
>         * final.c (compute_alignments): Likewise.
>         * fold-const.c (fold_range_test): Likewise.
>         (fold_truth_andor): Likewise.
>         (tree_single_nonnegative_warnv_p): Likewise.
>         (integer_valued_real_single_p): Likewise.
>         * gcse.c (want_to_gcse_p): Likewise.
>         (prune_insertions_deletions): Likewise.
>         (hoist_code): Likewise.
>         (gcse_or_cprop_is_too_expensive): Likewise.
>         * ggc-common.c: Likewise.
>         * ggc-page.c (ggc_collect): Likewise.
>         * gimple-loop-interchange.cc (MAX_NUM_STMT): Likewise.
>         (MAX_DATAREFS): Likewise.
>         (OUTER_STRIDE_RATIO): Likewise.
>         * gimple-loop-jam.c (tree_loop_unroll_and_jam): Likewise.
>         * gimple-loop-versioning.cc (loop_versioning::max_insns_for_loop): Likewise.
>         * gimple-ssa-split-paths.c (is_feasible_trace): Likewise.
>         * gimple-ssa-store-merging.c (imm_store_chain_info::try_coalesce_bswap): Likewise.
>         (imm_store_chain_info::coalesce_immediate_stores): Likewise.
>         (imm_store_chain_info::output_merged_store): Likewise.
>         (pass_store_merging::process_store): Likewise.
>         * gimple-ssa-strength-reduction.c (find_basis_for_base_expr): Likewise.
>         * graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple): Likewise.
>         (scop_to_isl_ast): Likewise.
>         * graphite-optimize-isl.c (get_schedule_for_node_st): Likewise.
>         (optimize_isl): Likewise.
>         * graphite-scop-detection.c (build_scops): Likewise.
>         * haifa-sched.c (set_modulo_params): Likewise.
>         (rank_for_schedule): Likewise.
>         (model_add_to_worklist): Likewise.
>         (model_promote_insn): Likewise.
>         (model_choose_insn): Likewise.
>         (queue_to_ready): Likewise.
>         (autopref_multipass_dfa_lookahead_guard): Likewise.
>         (schedule_block): Likewise.
>         (sched_init): Likewise.
>         * hsa-gen.c (init_prologue): Likewise.
>         * ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Likewise.
>         (cond_move_process_if_block): Likewise.
>         * ipa-cp.c (ipcp_lattice::add_value): Likewise.
>         (merge_agg_lats_step): Likewise.
>         (devirtualization_time_bonus): Likewise.
>         (hint_time_bonus): Likewise.
>         (incorporate_penalties): Likewise.
>         (good_cloning_opportunity_p): Likewise.
>         (ipcp_propagate_stage): Likewise.
>         * ipa-fnsummary.c (decompose_param_expr): Likewise.
>         (set_switch_stmt_execution_predicate): Likewise.
>         (analyze_function_body): Likewise.
>         (compute_fn_summary): Likewise.
>         * ipa-inline-analysis.c (estimate_growth): Likewise.
>         * ipa-inline.c (caller_growth_limits): Likewise.
>         (inline_insns_single): Likewise.
>         (inline_insns_auto): Likewise.
>         (can_inline_edge_by_limits_p): Likewise.
>         (want_early_inline_function_p): Likewise.
>         (big_speedup_p): Likewise.
>         (want_inline_small_function_p): Likewise.
>         (want_inline_self_recursive_call_p): Likewise.
>         (edge_badness): Likewise.
>         (recursive_inlining): Likewise.
>         (compute_max_insns): Likewise.
>         (early_inliner): Likewise.
>         * ipa-polymorphic-call.c (csftc_abort_walking_p): Likewise.
>         * ipa-profile.c (ipa_profile): Likewise.
>         * ipa-prop.c (determine_known_aggregate_parts): Likewise.
>         (ipa_analyze_node): Likewise.
>         (ipcp_transform_function): Likewise.
>         * ipa-split.c (consider_split): Likewise.
>         * ipa-sra.c (allocate_access): Likewise.
>         (process_scan_results): Likewise.
>         (ipa_sra_summarize_function): Likewise.
>         (pull_accesses_from_callee): Likewise.
>         * ira-build.c (loop_compare_func): Likewise.
>         (mark_loops_for_removal): Likewise.
>         * ira-conflicts.c (build_conflict_bit_table): Likewise.
>         * loop-doloop.c (doloop_optimize): Likewise.
>         * loop-invariant.c (gain_for_invariant): Likewise.
>         (move_loop_invariants): Likewise.
>         * loop-unroll.c (decide_unroll_constant_iterations): Likewise.
>         (decide_unroll_runtime_iterations): Likewise.
>         (decide_unroll_stupid): Likewise.
>         (expand_var_during_unrolling): Likewise.
>         * lra-assigns.c (spill_for): Likewise.
>         * lra-constraints.c (EBB_PROBABILITY_CUTOFF): Likewise.
>         * modulo-sched.c (sms_schedule): Likewise.
>         (DFA_HISTORY): Likewise.
>         * opts.c (default_options_optimization): Likewise.
>         (finish_options): Likewise.
>         (common_handle_option): Likewise.
>         * postreload-gcse.c (eliminate_partially_redundant_load): Likewise.
>         (if): Likewise.
>         * predict.c (get_hot_bb_threshold): Likewise.
>         (maybe_hot_count_p): Likewise.
>         (probably_never_executed): Likewise.
>         (predictable_edge_p): Likewise.
>         (predict_loops): Likewise.
>         (expr_expected_value_1): Likewise.
>         (tree_predict_by_opcode): Likewise.
>         (handle_missing_profiles): Likewise.
>         * reload.c (find_equiv_reg): Likewise.
>         * reorg.c (redundant_insn): Likewise.
>         * resource.c (mark_target_live_regs): Likewise.
>         (incr_ticks_for_insn): Likewise.
>         * sanopt.c (pass_sanopt::execute): Likewise.
>         * sched-deps.c (sched_analyze_1): Likewise.
>         (sched_analyze_2): Likewise.
>         (sched_analyze_insn): Likewise.
>         (deps_analyze_insn): Likewise.
>         * sched-ebb.c (schedule_ebbs): Likewise.
>         * sched-rgn.c (find_single_block_region): Likewise.
>         (too_large): Likewise.
>         (haifa_find_rgns): Likewise.
>         (extend_rgns): Likewise.
>         (new_ready): Likewise.
>         (schedule_region): Likewise.
>         (sched_rgn_init): Likewise.
>         * sel-sched-ir.c (make_region_from_loop): Likewise.
>         * sel-sched-ir.h (MAX_WS): Likewise.
>         * sel-sched.c (process_pipelined_exprs): Likewise.
>         (sel_setup_region_sched_flags): Likewise.
>         * shrink-wrap.c (try_shrink_wrapping): Likewise.
>         * targhooks.c (default_max_noce_ifcvt_seq_cost): Likewise.
>         * toplev.c (print_version): Likewise.
>         (process_options): Likewise.
>         * tracer.c (tail_duplicate): Likewise.
>         * trans-mem.c (tm_log_add): Likewise.
>         * tree-chrec.c (chrec_fold_plus_1): Likewise.
>         * tree-data-ref.c (split_constant_offset): Likewise.
>         (compute_all_dependences): Likewise.
>         * tree-if-conv.c (MAX_PHI_ARG_NUM): Likewise.
>         * tree-inline.c (remap_gimple_stmt): Likewise.
>         * tree-loop-distribution.c (MAX_DATAREFS_NUM): Likewise.
>         * tree-parloops.c (MIN_PER_THREAD): Likewise.
>         (create_parallel_loop): Likewise.
>         * tree-predcom.c (determine_unroll_factor): Likewise.
>         * tree-scalar-evolution.c (instantiate_scev_r): Likewise.
>         * tree-sra.c (analyze_all_variable_accesses): Likewise.
>         * tree-ssa-ccp.c (fold_builtin_alloca_with_align): Likewise.
>         * tree-ssa-dse.c (setup_live_bytes_from_ref): Likewise.
>         (dse_optimize_redundant_stores): Likewise.
>         (dse_classify_store): Likewise.
>         * tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise.
>         * tree-ssa-loop-ch.c (ch_base::copy_headers): Likewise.
>         * tree-ssa-loop-im.c (LIM_EXPENSIVE): Likewise.
>         * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Likewise.
>         (try_peel_loop): Likewise.
>         (tree_unroll_loops_completely): Likewise.
>         * tree-ssa-loop-ivopts.c (avg_loop_niter): Likewise.
>         (CONSIDER_ALL_CANDIDATES_BOUND): Likewise.
>         (MAX_CONSIDERED_GROUPS): Likewise.
>         (ALWAYS_PRUNE_CAND_SET_BOUND): Likewise.
>         * tree-ssa-loop-manip.c (can_unroll_loop_p): Likewise.
>         * tree-ssa-loop-niter.c (MAX_ITERATIONS_TO_TRACK): Likewise.
>         * tree-ssa-loop-prefetch.c (PREFETCH_BLOCK): Likewise.
>         (L1_CACHE_SIZE_BYTES): Likewise.
>         (L2_CACHE_SIZE_BYTES): Likewise.
>         (should_issue_prefetch_p): Likewise.
>         (schedule_prefetches): Likewise.
>         (determine_unroll_factor): Likewise.
>         (volume_of_references): Likewise.
>         (add_subscript_strides): Likewise.
>         (self_reuse_distance): Likewise.
>         (mem_ref_count_reasonable_p): Likewise.
>         (insn_to_prefetch_ratio_too_small_p): Likewise.
>         (loop_prefetch_arrays): Likewise.
>         (tree_ssa_prefetch_arrays): Likewise.
>         * tree-ssa-loop-unswitch.c (tree_unswitch_single_loop): Likewise.
>         * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Likewise.
>         (convert_mult_to_fma): Likewise.
>         (math_opts_dom_walker::after_dom_children): Likewise.
>         * tree-ssa-phiopt.c (cond_if_else_store_replacement): Likewise.
>         (hoist_adjacent_loads): Likewise.
>         (gate_hoist_loads): Likewise.
>         * tree-ssa-pre.c (translate_vuse_through_block): Likewise.
>         (compute_partial_antic_aux): Likewise.
>         * tree-ssa-reassoc.c (get_reassociation_width): Likewise.
>         * tree-ssa-sccvn.c (vn_reference_lookup_pieces): Likewise.
>         (vn_reference_lookup): Likewise.
>         (do_rpo_vn): Likewise.
>         * tree-ssa-scopedtables.c (avail_exprs_stack::lookup_avail_expr): Likewise.
>         * tree-ssa-sink.c (select_best_block): Likewise.
>         * tree-ssa-strlen.c (new_stridx): Likewise.
>         (new_addr_stridx): Likewise.
>         (get_range_strlen_dynamic): Likewise.
>         (class ssa_name_limit_t): Likewise.
>         * tree-ssa-structalias.c (push_fields_onto_fieldstack): Likewise.
>         (create_variable_info_for_1): Likewise.
>         (init_alias_vars): Likewise.
>         * tree-ssa-tail-merge.c (find_clusters_1): Likewise.
>         (tail_merge_optimize): Likewise.
>         * tree-ssa-threadbackward.c (thread_jumps::profitable_jump_thread_path): Likewise.
>         (thread_jumps::fsm_find_control_statement_thread_paths): Likewise.
>         (thread_jumps::find_jump_threads_backwards): Likewise.
>         * tree-ssa-threadedge.c (record_temporary_equivalences_from_stmts_at_dest): Likewise.
>         * tree-ssa-uninit.c (compute_control_dep_chain): Likewise.
>         * tree-switch-conversion.c (switch_conversion::check_range): Likewise.
>         (jump_table_cluster::can_be_handled): Likewise.
>         * tree-switch-conversion.h (jump_table_cluster::case_values_threshold): Likewise.
>         (SWITCH_CONVERSION_BRANCH_RATIO): Likewise.
>         (param_switch_conversion_branch_ratio): Likewise.
>         * tree-vect-data-refs.c (vect_mark_for_runtime_alias_test): Likewise.
>         (vect_enhance_data_refs_alignment): Likewise.
>         (vect_prune_runtime_alias_test_list): Likewise.
>         * tree-vect-loop.c (vect_analyze_loop_costing): Likewise.
>         (vect_get_datarefs_in_loop): Likewise.
>         (vect_analyze_loop): Likewise.
>         * tree-vect-slp.c (vect_slp_bb): Likewise.
>         * tree-vectorizer.h: Likewise.
>         * tree-vrp.c (find_switch_asserts): Likewise.
>         (vrp_prop::check_mem_ref): Likewise.
>         * tree.c (wide_int_to_tree_1): Likewise.
>         (cache_integer_cst): Likewise.
>         * var-tracking.c (EXPR_USE_DEPTH): Likewise.
>         (reverse_op): Likewise.
>         (vt_find_locations): Likewise.
>
> gcc/c/ChangeLog:
>
> 2019-11-07  Martin Liska  <[hidden email]>
>
>         * gimple-parser.c (c_parser_parse_gimple_body): Replace old parameter syntax
>         with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
>         macro.
>
> gcc/cp/ChangeLog:
>
> 2019-11-07  Martin Liska  <[hidden email]>
>
>         * name-lookup.c (namespace_hints::namespace_hints): Replace old parameter syntax
>         with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
>         macro.
>         * typeck.c (comptypes): Likewise.
>
> gcc/lto/ChangeLog:
>
> 2019-11-07  Martin Liska  <[hidden email]>
>
>         * lto-partition.c (lto_balanced_map): Replace old parameter syntax
>         with the new one, include opts.h if needed.  Use SET_OPTION_IF_UNSET
>         macro.
>         * lto.c (do_whole_program_analysis): Likewise.
> ---
>  gcc/asan.c                                    | 18 ++--
>  gcc/auto-profile.c                            |  2 +-
>  gcc/bb-reorder.c                              |  4 +-
>  gcc/builtins.c                                |  2 +-
>  gcc/c/gimple-parser.c                         |  2 +-
>  gcc/cfgcleanup.c                              |  4 +-
>  gcc/cfgexpand.c                               |  8 +-
>  gcc/cfgloopanal.c                             |  8 +-
>  gcc/cgraph.c                                  |  2 +-
>  gcc/combine.c                                 |  4 +-
>  gcc/common/config/aarch64/aarch64-common.c    | 15 ++--
>  gcc/common/config/ia64/ia64-common.c          |  8 +-
>  .../config/powerpcspe/powerpcspe-common.c     |  2 +-
>  gcc/common/config/rs6000/rs6000-common.c      |  2 +-
>  gcc/common/config/sh/sh-common.c              |  2 +-
>  gcc/config/aarch64/aarch64.c                  | 79 ++++++++----------
>  gcc/config/alpha/alpha.c                      | 16 ++--
>  gcc/config/arm/arm.c                          | 43 ++++------
>  gcc/config/i386/i386-options.c                | 32 +++----
>  gcc/config/i386/i386.c                        | 26 +++---
>  gcc/config/ia64/ia64.c                        |  2 +-
>  gcc/config/rs6000/rs6000-logue.c              |  4 +-
>  gcc/config/rs6000/rs6000.c                    | 55 ++++++------
>  gcc/config/s390/s390.c                        | 79 ++++++------------
>  gcc/config/sparc/sparc.c                      | 83 +++++++++----------
>  gcc/config/visium/visium.c                    |  6 +-
>  gcc/coverage.c                                |  8 +-
>  gcc/cp/name-lookup.c                          |  2 +-
>  gcc/cp/typeck.c                               |  4 +-
>  gcc/cse.c                                     |  6 +-
>  gcc/cselib.c                                  |  2 +-
>  gcc/dse.c                                     |  2 +-
>  gcc/emit-rtl.c                                | 18 ++--
>  gcc/explow.c                                  |  2 +-
>  gcc/final.c                                   |  4 +-
>  gcc/fold-const.c                              | 12 +--
>  gcc/gcse.c                                    | 16 ++--
>  gcc/ggc-common.c                              |  4 +-
>  gcc/ggc-page.c                                |  4 +-
>  gcc/gimple-loop-interchange.cc                |  6 +-
>  gcc/gimple-loop-jam.c                         |  8 +-
>  gcc/gimple-loop-versioning.cc                 |  4 +-
>  gcc/gimple-ssa-split-paths.c                  |  2 +-
>  gcc/gimple-ssa-store-merging.c                |  8 +-
>  gcc/gimple-ssa-strength-reduction.c           |  2 +-
>  gcc/graphite-isl-ast-to-gimple.c              |  4 +-
>  gcc/graphite-optimize-isl.c                   |  4 +-
>  gcc/graphite-scop-detection.c                 |  4 +-
>  gcc/haifa-sched.c                             | 38 ++++-----
>  gcc/hsa-gen.c                                 |  2 +-
>  gcc/ifcvt.c                                   |  4 +-
>  gcc/ipa-cp.c                                  | 30 +++----
>  gcc/ipa-fnsummary.c                           | 20 ++---
>  gcc/ipa-inline-analysis.c                     |  2 +-
>  gcc/ipa-inline.c                              | 77 +++++++++--------
>  gcc/ipa-polymorphic-call.c                    |  2 +-
>  gcc/ipa-profile.c                             |  2 +-
>  gcc/ipa-prop.c                                |  6 +-
>  gcc/ipa-split.c                               | 10 +--
>  gcc/ipa-sra.c                                 |  9 +-
>  gcc/ira-build.c                               |  4 +-
>  gcc/ira-conflicts.c                           |  4 +-
>  gcc/loop-doloop.c                             |  2 +-
>  gcc/loop-invariant.c                          |  4 +-
>  gcc/loop-unroll.c                             | 26 +++---
>  gcc/lra-assigns.c                             |  2 +-
>  gcc/lra-constraints.c                         |  2 +-
>  gcc/lto/lto-partition.c                       | 10 +--
>  gcc/lto/lto.c                                 | 10 +--
>  gcc/modulo-sched.c                            |  6 +-
>  gcc/opts.c                                    | 48 ++++-------
>  gcc/postreload-gcse.c                         |  6 +-
>  gcc/predict.c                                 | 20 ++---
>  gcc/reload.c                                  |  2 +-
>  gcc/reorg.c                                   |  4 +-
>  gcc/resource.c                                |  4 +-
>  gcc/sanopt.c                                  |  4 +-
>  gcc/sched-deps.c                              | 10 +--
>  gcc/sched-ebb.c                               |  4 +-
>  gcc/sched-rgn.c                               | 18 ++--
>  gcc/sel-sched-ir.c                            |  4 +-
>  gcc/sel-sched-ir.h                            |  2 +-
>  gcc/sel-sched.c                               |  4 +-
>  gcc/shrink-wrap.c                             |  2 +-
>  gcc/targhooks.c                               | 21 ++---
>  gcc/toplev.c                                  |  4 +-
>  gcc/tracer.c                                  | 12 +--
>  gcc/trans-mem.c                               |  2 +-
>  gcc/tree-chrec.c                              |  4 +-
>  gcc/tree-data-ref.c                           |  4 +-
>  gcc/tree-if-conv.c                            |  2 +-
>  gcc/tree-inline.c                             |  2 +-
>  gcc/tree-loop-distribution.c                  |  2 +-
>  gcc/tree-parloops.c                           | 18 ++--
>  gcc/tree-predcom.c                            |  2 +-
>  gcc/tree-scalar-evolution.c                   |  4 +-
>  gcc/tree-sra.c                                | 19 +++--
>  gcc/tree-ssa-ccp.c                            |  2 +-
>  gcc/tree-ssa-dse.c                            |  8 +-
>  gcc/tree-ssa-ifcombine.c                      |  4 +-
>  gcc/tree-ssa-loop-ch.c                        |  2 +-
>  gcc/tree-ssa-loop-im.c                        |  2 +-
>  gcc/tree-ssa-loop-ivcanon.c                   | 18 ++--
>  gcc/tree-ssa-loop-ivopts.c                    | 10 +--
>  gcc/tree-ssa-loop-manip.c                     |  2 +-
>  gcc/tree-ssa-loop-niter.c                     |  2 +-
>  gcc/tree-ssa-loop-prefetch.c                  | 46 +++++-----
>  gcc/tree-ssa-loop-unswitch.c                  |  6 +-
>  gcc/tree-ssa-math-opts.c                      |  6 +-
>  gcc/tree-ssa-phiopt.c                         |  8 +-
>  gcc/tree-ssa-pre.c                            |  4 +-
>  gcc/tree-ssa-reassoc.c                        |  2 +-
>  gcc/tree-ssa-sccvn.c                          |  6 +-
>  gcc/tree-ssa-scopedtables.c                   |  2 +-
>  gcc/tree-ssa-sink.c                           |  2 +-
>  gcc/tree-ssa-strlen.c                         |  8 +-
>  gcc/tree-ssa-structalias.c                    |  8 +-
>  gcc/tree-ssa-tail-merge.c                     |  4 +-
>  gcc/tree-ssa-threadbackward.c                 | 16 ++--
>  gcc/tree-ssa-threadedge.c                     |  4 +-
>  gcc/tree-ssa-uninit.c                         |  2 +-
>  gcc/tree-switch-conversion.c                  |  6 +-
>  gcc/tree-switch-conversion.h                  |  4 +-
>  gcc/tree-vect-data-refs.c                     | 11 ++-
>  gcc/tree-vect-loop.c                          |  6 +-
>  gcc/tree-vect-slp.c                           |  2 +-
>  gcc/tree-vectorizer.h                         |  2 +-
>  gcc/tree-vrp.c                                |  4 +-
>  gcc/tree.c                                    | 22 ++---
>  gcc/var-tracking.c                            |  6 +-
>  130 files changed, 640 insertions(+), 731 deletions(-)
>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 0/7] Param conversion to option machinery

Richard Biener-2
In reply to this post by Martin Liška-2
On Thu, Nov 7, 2019 at 1:33 PM Martin Liska <[hidden email]> wrote:

>
> The email thread is follow up of a demo that I made here:
> https://gcc.gnu.org/ml/gcc-patches/2019-10/msg02220.html
>
> The patchset converts current param infrastructure to
> the option machinery. The parts 3 and 4 are quite
> mechanical.
>
> I would appreciate a feedback about what parameters
> should be per function (Optimization keyword) and global.

I didn't go over them but maybe we can postpone this to a followup
and for now make _none_ of them Optimization which preserves
previous behavior (I guess the optimize attribute/pragma doesn't
accept -param either at the moment).

I've commented on part 3/4 spotting a long line and also a
followup / testing opportunity.

> The patch survives bootstrap and regtests on x86_64-linux-gnu
> and ppc64-linux-gnu and I made cross build of all target compilers.

OK if you split the long lines.  The rest can be done as followup.

Thanks for the work,
Richard.

> Thoughts?
> Martin
>
> Martin Liska (7):
>   Param to options conversion.
>   Include new generated gcc/params.opt file.
>   Apply mechanical replacement (generated patch).
>   Remove gcc/params.* files.
>   Remove last leftover usage of params* files.
>   Remove set_default_param_value from documentation.
>   Fix test-suite fallout.
>
>  gcc/Makefile.in                               |   20 +-
>  gcc/asan.c                                    |   19 +-
>  gcc/auto-profile.c                            |    3 +-
>  gcc/bb-reorder.c                              |    5 +-
>  gcc/builtins.c                                |    3 +-
>  gcc/c/gimple-parser.c                         |    3 +-
>  gcc/cfgcleanup.c                              |    5 +-
>  gcc/cfgexpand.c                               |    9 +-
>  gcc/cfgloopanal.c                             |    9 +-
>  gcc/cgraph.c                                  |    3 +-
>  gcc/combine.c                                 |    5 +-
>  gcc/common.opt                                |   10 -
>  gcc/common/common-target.def                  |    6 +-
>  gcc/common/config/aarch64/aarch64-common.c    |   16 +-
>  gcc/common/config/gcn/gcn-common.c            |    1 -
>  gcc/common/config/ia64/ia64-common.c          |    9 +-
>  .../config/powerpcspe/powerpcspe-common.c     |    3 +-
>  gcc/common/config/rs6000/rs6000-common.c      |    3 +-
>  gcc/common/config/sh/sh-common.c              |    3 +-
>  gcc/config/aarch64/aarch64.c                  |   80 +-
>  gcc/config/alpha/alpha.c                      |   17 +-
>  gcc/config/arm/arm.c                          |   44 +-
>  gcc/config/avr/avr.c                          |    1 -
>  gcc/config/csky/csky.c                        |    1 -
>  gcc/config/i386/i386-builtins.c               |    1 -
>  gcc/config/i386/i386-expand.c                 |    1 -
>  gcc/config/i386/i386-features.c               |    1 -
>  gcc/config/i386/i386-options.c                |   35 +-
>  gcc/config/i386/i386.c                        |   27 +-
>  gcc/config/ia64/ia64.c                        |    3 +-
>  gcc/config/rs6000/rs6000-logue.c              |    5 +-
>  gcc/config/rs6000/rs6000.c                    |   56 +-
>  gcc/config/s390/s390.c                        |   80 +-
>  gcc/config/sparc/sparc.c                      |   84 +-
>  gcc/config/visium/visium.c                    |    7 +-
>  gcc/coverage.c                                |    9 +-
>  gcc/cp/name-lookup.c                          |    3 +-
>  gcc/cp/typeck.c                               |    5 +-
>  gcc/cprop.c                                   |    1 -
>  gcc/cse.c                                     |    7 +-
>  gcc/cselib.c                                  |    3 +-
>  gcc/doc/options.texi                          |    3 +
>  gcc/doc/tm.texi                               |    4 +-
>  gcc/dse.c                                     |    3 +-
>  gcc/emit-rtl.c                                |   19 +-
>  gcc/explow.c                                  |    3 +-
>  gcc/final.c                                   |    5 +-
>  gcc/flag-types.h                              |   11 +
>  gcc/fold-const.c                              |   13 +-
>  gcc/gcc.c                                     |    9 -
>  gcc/gcse.c                                    |   17 +-
>  gcc/ggc-common.c                              |    5 +-
>  gcc/ggc-page.c                                |    5 +-
>  gcc/gimple-loop-interchange.cc                |    7 +-
>  gcc/gimple-loop-jam.c                         |    9 +-
>  gcc/gimple-loop-versioning.cc                 |    5 +-
>  gcc/gimple-ssa-split-paths.c                  |    3 +-
>  gcc/gimple-ssa-sprintf.c                      |    1 -
>  gcc/gimple-ssa-store-merging.c                |    9 +-
>  gcc/gimple-ssa-strength-reduction.c           |    3 +-
>  gcc/gimple-ssa-warn-alloca.c                  |    1 -
>  gcc/gimple-ssa-warn-restrict.c                |    1 -
>  gcc/graphite-isl-ast-to-gimple.c              |    5 +-
>  gcc/graphite-optimize-isl.c                   |    5 +-
>  gcc/graphite-scop-detection.c                 |    5 +-
>  gcc/graphite-sese-to-poly.c                   |    1 -
>  gcc/graphite.c                                |    1 -
>  gcc/haifa-sched.c                             |   39 +-
>  gcc/hsa-gen.c                                 |    3 +-
>  gcc/ifcvt.c                                   |    5 +-
>  gcc/ipa-cp.c                                  |   31 +-
>  gcc/ipa-fnsummary.c                           |   21 +-
>  gcc/ipa-inline-analysis.c                     |    3 +-
>  gcc/ipa-inline.c                              |   78 +-
>  gcc/ipa-polymorphic-call.c                    |    3 +-
>  gcc/ipa-profile.c                             |    3 +-
>  gcc/ipa-prop.c                                |    7 +-
>  gcc/ipa-split.c                               |   11 +-
>  gcc/ipa-sra.c                                 |   10 +-
>  gcc/ira-build.c                               |    5 +-
>  gcc/ira-conflicts.c                           |    5 +-
>  gcc/loop-doloop.c                             |    3 +-
>  gcc/loop-invariant.c                          |    5 +-
>  gcc/loop-unroll.c                             |   27 +-
>  gcc/lra-assigns.c                             |    3 +-
>  gcc/lra-constraints.c                         |    3 +-
>  gcc/lto/lto-common.c                          |    1 -
>  gcc/lto/lto-partition.c                       |   11 +-
>  gcc/lto/lto.c                                 |   11 +-
>  gcc/modulo-sched.c                            |    7 +-
>  gcc/opt-functions.awk                         |    3 +-
>  gcc/opt-suggestions.c                         |   59 +-
>  gcc/opt-suggestions.h                         |    5 -
>  gcc/opts-common.c                             |   20 +
>  gcc/opts.c                                    |  158 +-
>  gcc/opts.h                                    |   11 +-
>  gcc/params-enum.h                             |   39 -
>  gcc/params-list.h                             |   26 -
>  gcc/params-options.h                          |   27 -
>  gcc/params.c                                  |  302 ----
>  gcc/params.def                                | 1495 -----------------
>  gcc/params.h                                  |  254 ---
>  gcc/params.opt                                |  967 +++++++++++
>  gcc/postreload-gcse.c                         |    7 +-
>  gcc/predict.c                                 |   21 +-
>  gcc/reload.c                                  |    3 +-
>  gcc/reorg.c                                   |    5 +-
>  gcc/resource.c                                |    5 +-
>  gcc/sanopt.c                                  |    5 +-
>  gcc/sched-deps.c                              |   11 +-
>  gcc/sched-ebb.c                               |    5 +-
>  gcc/sched-rgn.c                               |   19 +-
>  gcc/sel-sched-ir.c                            |    5 +-
>  gcc/sel-sched-ir.h                            |    2 +-
>  gcc/sel-sched.c                               |    5 +-
>  gcc/shrink-wrap.c                             |    3 +-
>  gcc/stmt.c                                    |    1 -
>  gcc/targhooks.c                               |   22 +-
>  gcc/testsuite/gcc.dg/completion-3.c           |   16 +-
>  gcc/testsuite/gcc.dg/pr83620.c                |    2 +-
>  gcc/testsuite/gcc.dg/spellcheck-params-2.c    |    2 +-
>  gcc/testsuite/gcc.dg/spellcheck-params.c      |    2 +-
>  gcc/testsuite/gcc.misc-tests/help.exp         |    4 +-
>  gcc/toplev.c                                  |   13 +-
>  gcc/tracer.c                                  |   13 +-
>  gcc/trans-mem.c                               |    3 +-
>  gcc/tree-chrec.c                              |    5 +-
>  gcc/tree-data-ref.c                           |    5 +-
>  gcc/tree-if-conv.c                            |    3 +-
>  gcc/tree-inline.c                             |    3 +-
>  gcc/tree-loop-distribution.c                  |    3 +-
>  gcc/tree-parloops.c                           |   20 +-
>  gcc/tree-predcom.c                            |    3 +-
>  gcc/tree-profile.c                            |    1 -
>  gcc/tree-scalar-evolution.c                   |    5 +-
>  gcc/tree-sra.c                                |   20 +-
>  gcc/tree-ssa-ccp.c                            |    3 +-
>  gcc/tree-ssa-dom.c                            |    1 -
>  gcc/tree-ssa-dse.c                            |    9 +-
>  gcc/tree-ssa-ifcombine.c                      |    5 +-
>  gcc/tree-ssa-loop-ch.c                        |    3 +-
>  gcc/tree-ssa-loop-im.c                        |    3 +-
>  gcc/tree-ssa-loop-ivcanon.c                   |   19 +-
>  gcc/tree-ssa-loop-ivopts.c                    |   11 +-
>  gcc/tree-ssa-loop-manip.c                     |    3 +-
>  gcc/tree-ssa-loop-niter.c                     |    3 +-
>  gcc/tree-ssa-loop-prefetch.c                  |   47 +-
>  gcc/tree-ssa-loop-unswitch.c                  |    7 +-
>  gcc/tree-ssa-math-opts.c                      |    7 +-
>  gcc/tree-ssa-phiopt.c                         |    9 +-
>  gcc/tree-ssa-pre.c                            |    5 +-
>  gcc/tree-ssa-reassoc.c                        |    3 +-
>  gcc/tree-ssa-sccvn.c                          |    7 +-
>  gcc/tree-ssa-scopedtables.c                   |    3 +-
>  gcc/tree-ssa-sink.c                           |    3 +-
>  gcc/tree-ssa-strlen.c                         |    9 +-
>  gcc/tree-ssa-structalias.c                    |    9 +-
>  gcc/tree-ssa-tail-merge.c                     |    5 +-
>  gcc/tree-ssa-threadbackward.c                 |   17 +-
>  gcc/tree-ssa-threadedge.c                     |    5 +-
>  gcc/tree-ssa-uninit.c                         |    3 +-
>  gcc/tree-switch-conversion.c                  |    7 +-
>  gcc/tree-switch-conversion.h                  |    4 +-
>  gcc/tree-vect-data-refs.c                     |   12 +-
>  gcc/tree-vect-loop.c                          |    7 +-
>  gcc/tree-vect-slp.c                           |    3 +-
>  gcc/tree-vectorizer.h                         |    2 +-
>  gcc/tree-vrp.c                                |    5 +-
>  gcc/tree.c                                    |   23 +-
>  gcc/value-prof.c                              |    1 -
>  gcc/var-tracking.c                            |    7 +-
>  171 files changed, 1689 insertions(+), 3243 deletions(-)
>  delete mode 100644 gcc/params-enum.h
>  delete mode 100644 gcc/params-list.h
>  delete mode 100644 gcc/params-options.h
>  delete mode 100644 gcc/params.c
>  delete mode 100644 gcc/params.def
>  delete mode 100644 gcc/params.h
>  create mode 100644 gcc/params.opt
>
> --
> 2.23.0
>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Use more SET_OPTION_IF_UNSET.

Richard Biener-2
In reply to this post by Martin Liška-2
On Mon, Nov 11, 2019 at 3:04 PM Martin Liška <[hidden email]> wrote:
>
> There's one more refactoring patch that is about more
> usage of SET_OPTION_IF_UNSET for parameters.
>
> Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
>
> Ready to be installed?

OK.

Richard.

> Thanks,
> Martin
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 3/7] Apply mechanical replacement (generated patch).

Martin Liška-2
In reply to this post by Richard Biener-2
On 11/11/19 3:36 PM, Richard Biener wrote:
> I think I've noticed at least one long line (please double-check):
>
> -             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
> INTEGER_SHARE_LIMIT)
> +             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
> param_integer_share_limit)

You are right, they were quite some GNU coding style violations.

I'm sending updated version of the patch where I fixed that.

Martin

>
> as a followup I notice that the targets *_default_params () functions should
> be merged into the default-options structs they have (did you check the
> defaults are still applied and user-overridable?)


0003-Apply-mechanical-replacement-generated-patch.patch (206K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

[PATCH 8/9] Remove option_default_params and option_validate_param hooks.

Martin Liška-2
In reply to this post by Richard Biener-2
On 11/11/19 3:36 PM, Richard Biener wrote:
> as a followup I notice that the targets *_default_params () functions should
> be merged into the default-options structs they have (did you check the
> defaults are still applied and user-overridable?)

Apparently, the *_default_params target hook is not called right now. So that
I decided to directly transform all usages of that to default-options structs.
I built all the affected cross compilers and checked --help=param -Q, where
I can see the overwritten default. Moreover, a param value can be properly
adjusted with a user option.

I'm running tests on x86_64-linux-gnu and ppc64-linux-gnu right now to check
affect of the attached patch.

Martin

0008-Remove-option_default_params-and-option_validate_par.patch (15K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 0/7] Param conversion to option machinery

Martin Liška-2
In reply to this post by Richard Biener-2
On 11/11/19 3:42 PM, Richard Biener wrote:
> I didn't go over them but maybe we can postpone this to a followup
> and for now make_none_  of them Optimization which preserves

Ok, there's updated patch w/o the Optimization keyword.

> previous behavior (I guess the optimize attribute/pragma doesn't
> accept -param either at the moment).

No, the syntax is not allowed.

Martin


0002-Include-new-generated-gcc-params.opt-file.patch (49K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 8/9] Remove option_default_params and option_validate_param hooks.

Richard Biener-2
In reply to this post by Martin Liška-2
On Tue, Nov 12, 2019 at 10:21 AM Martin Liška <[hidden email]> wrote:

>
> On 11/11/19 3:36 PM, Richard Biener wrote:
> > as a followup I notice that the targets *_default_params () functions should
> > be merged into the default-options structs they have (did you check the
> > defaults are still applied and user-overridable?)
>
> Apparently, the *_default_params target hook is not called right now. So that
> I decided to directly transform all usages of that to default-options structs.
> I built all the affected cross compilers and checked --help=param -Q, where
> I can see the overwritten default. Moreover, a param value can be properly
> adjusted with a user option.
>
> I'm running tests on x86_64-linux-gnu and ppc64-linux-gnu right now to check
> affect of the attached patch.

OK.

Thanks,
Richard.

>
> Martin
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 0/7] Param conversion to option machinery

Richard Biener-2
In reply to this post by Martin Liška-2
On Tue, Nov 12, 2019 at 10:23 AM Martin Liška <[hidden email]> wrote:
>
> On 11/11/19 3:42 PM, Richard Biener wrote:
> > I didn't go over them but maybe we can postpone this to a followup
> > and for now make_none_  of them Optimization which preserves
>
> Ok, there's updated patch w/o the Optimization keyword.

OK.

Richard.

> > previous behavior (I guess the optimize attribute/pragma doesn't
> > accept -param either at the moment).
>
> No, the syntax is not allowed.
>
> Martin
>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 3/7] Apply mechanical replacement (generated patch).

Richard Biener-2
In reply to this post by Martin Liška-2
On Tue, Nov 12, 2019 at 10:19 AM Martin Liška <[hidden email]> wrote:

>
> On 11/11/19 3:36 PM, Richard Biener wrote:
> > I think I've noticed at least one long line (please double-check):
> >
> > -             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
> > INTEGER_SHARE_LIMIT)
> > +             if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
> > param_integer_share_limit)
>
> You are right, they were quite some GNU coding style violations.
>
> I'm sending updated version of the patch where I fixed that.

OK.

Thanks,
Richard.

> Martin
>
> >
> > as a followup I notice that the targets *_default_params () functions should
> > be merged into the default-options structs they have (did you check the
> > defaults are still applied and user-overridable?)
>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 5/7] Remove last leftover usage of params* files.

Harwath, Frederik
In reply to this post by Martin Liška-2
Hi Martin,

On 06.11.19 13:40, Martin Liska wrote:

> (finalize_options_struct): Remove.

This patch has been committed by now, but it seems that a single use of finalize_options_struct has been overlooked
in gcc/tree-streamer-in.c.

Best regards,
Frederik

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 5/7] Remove last leftover usage of params* files.

Martin Liška-2
On 11/12/19 4:39 PM, Harwath, Frederik wrote:
> Hi Martin,
>
> On 06.11.19 13:40, Martin Liska wrote:
>
>> (finalize_options_struct): Remove.
>
> This patch has been committed by now, but it seems that a single use of finalize_options_struct has been overlooked
> in gcc/tree-streamer-in.c.

Thank you for heads up. I'll fix it tomorrow.

Martin

>
> Best regards,
> Frederik
>

12