]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Add 'final' and 'override' to opt_pass vfunc impls
authorDavid Malcolm <dmalcolm@redhat.com>
Mon, 27 Jun 2022 21:00:33 +0000 (17:00 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Mon, 27 Jun 2022 21:00:33 +0000 (17:00 -0400)
gcc/ChangeLog:
* adjust-alignment.cc: Add "final" and "override" to opt_pass
vfunc implementations, removing redundant "virtual" as
appropriate.
* asan.cc: Likewise.
* auto-inc-dec.cc: Likewise.
* auto-profile.cc: Likewise.
* bb-reorder.cc: Likewise.
* cfgcleanup.cc: Likewise.
* cfgexpand.cc: Likewise.
* cfgrtl.cc: Likewise.
* cgraphbuild.cc: Likewise.
* combine-stack-adj.cc: Likewise.
* combine.cc: Likewise.
* compare-elim.cc: Likewise.
* config/i386/i386-features.cc: Likewise.
* coroutine-passes.cc: Likewise.
* cprop.cc: Likewise.
* cse.cc: Likewise.
* dce.cc: Likewise.
* df-core.cc: Likewise.
* dse.cc: Likewise.
* dwarf2cfi.cc: Likewise.
* early-remat.cc: Likewise.
* except.cc: Likewise.
* final.cc: Likewise.
* function.cc: Likewise.
* fwprop.cc: Likewise.
* gcse.cc: Likewise.
* gimple-harden-conditionals.cc: Likewise.
* gimple-if-to-switch.cc: Likewise.
* gimple-isel.cc: Likewise.
* gimple-laddress.cc: Likewise.
* gimple-loop-interchange.cc: Likewise.
* gimple-loop-jam.cc: Likewise.
* gimple-loop-versioning.cc: Likewise.
* gimple-low.cc: Likewise.
* gimple-ssa-backprop.cc: Likewise.
* gimple-ssa-evrp.cc: Likewise.
* gimple-ssa-isolate-paths.cc: Likewise.
* gimple-ssa-nonnull-compare.cc: Likewise.
* gimple-ssa-split-paths.cc: Likewise.
* gimple-ssa-store-merging.cc: Likewise.
* gimple-ssa-strength-reduction.cc: Likewise.
* gimple-ssa-warn-access.cc: Likewise.
* gimple-ssa-warn-alloca.cc: Likewise.
* gimple-ssa-warn-restrict.cc: Likewise.
* gimple-warn-recursion.cc: Likewise.
* graphite.cc: Likewise.
* ifcvt.cc: Likewise.
* init-regs.cc: Likewise.
* ipa-comdats.cc: Likewise.
* ipa-cp.cc: Likewise.
* ipa-devirt.cc: Likewise.
* ipa-fnsummary.cc: Likewise.
* ipa-free-lang-data.cc: Likewise.
* ipa-icf.cc: Likewise.
* ipa-inline.cc: Likewise.
* ipa-modref.cc: Likewise.
* ipa-profile.cc: Likewise.
* ipa-pure-const.cc: Likewise.
* ipa-reference.cc: Likewise.
* ipa-split.cc: Likewise.
* ipa-sra.cc: Likewise.
* ipa-visibility.cc: Likewise.
* ipa.cc: Likewise.
* ira.cc: Likewise.
* jump.cc: Likewise.
* loop-init.cc: Likewise.
* lower-subreg.cc: Likewise.
* mode-switching.cc: Likewise.
* modulo-sched.cc: Likewise.
* multiple_target.cc: Likewise.
* omp-expand.cc: Likewise.
* omp-low.cc: Likewise.
* omp-oacc-kernels-decompose.cc: Likewise.
* omp-oacc-neuter-broadcast.cc: Likewise.
* omp-offload.cc: Likewise.
* omp-simd-clone.cc: Likewise.
* passes.cc: Likewise.
* postreload-gcse.cc: Likewise.
* postreload.cc: Likewise.
* predict.cc: Likewise.
* recog.cc: Likewise.
* ree.cc: Likewise.
* reg-stack.cc: Likewise.
* regcprop.cc: Likewise.
* reginfo.cc: Likewise.
* regrename.cc: Likewise.
* reorg.cc: Likewise.
* sancov.cc: Likewise.
* sanopt.cc: Likewise.
* sched-rgn.cc: Likewise.
* stack-ptr-mod.cc: Likewise.
* store-motion.cc: Likewise.
* tracer.cc: Likewise.
* trans-mem.cc: Likewise.
* tree-call-cdce.cc: Likewise.
* tree-cfg.cc: Likewise.
* tree-cfgcleanup.cc: Likewise.
* tree-complex.cc: Likewise.
* tree-eh.cc: Likewise.
* tree-emutls.cc: Likewise.
* tree-if-conv.cc: Likewise.
* tree-into-ssa.cc: Likewise.
* tree-loop-distribution.cc: Likewise.
* tree-nrv.cc: Likewise.
* tree-object-size.cc: Likewise.
* tree-parloops.cc: Likewise.
* tree-predcom.cc: Likewise.
* tree-profile.cc: Likewise.
* tree-sra.cc: Likewise.
* tree-ssa-ccp.cc: Likewise.
* tree-ssa-copy.cc: Likewise.
* tree-ssa-dce.cc: Likewise.
* tree-ssa-dom.cc: Likewise.
* tree-ssa-dse.cc: Likewise.
* tree-ssa-forwprop.cc: Likewise.
* tree-ssa-ifcombine.cc: Likewise.
* tree-ssa-loop-ch.cc: Likewise.
* tree-ssa-loop-im.cc: Likewise.
* tree-ssa-loop-ivcanon.cc: Likewise.
* tree-ssa-loop-prefetch.cc: Likewise.
* tree-ssa-loop-split.cc: Likewise.
* tree-ssa-loop-unswitch.cc: Likewise.
* tree-ssa-loop.cc: Likewise.
* tree-ssa-math-opts.cc: Likewise.
* tree-ssa-phiopt.cc: Likewise.
* tree-ssa-phiprop.cc: Likewise.
* tree-ssa-pre.cc: Likewise.
* tree-ssa-reassoc.cc: Likewise.
* tree-ssa-sccvn.cc: Likewise.
* tree-ssa-sink.cc: Likewise.
* tree-ssa-strlen.cc: Likewise.
* tree-ssa-structalias.cc: Likewise.
* tree-ssa-uncprop.cc: Likewise.
* tree-ssa-uninit.cc: Likewise.
* tree-ssanames.cc: Likewise.
* tree-stdarg.cc: Likewise.
* tree-switch-conversion.cc: Likewise.
* tree-tailcall.cc: Likewise.
* tree-vect-generic.cc: Likewise.
* tree-vectorizer.cc: Likewise.
* tree-vrp.cc: Likewise.
* tsan.cc: Likewise.
* ubsan.cc: Likewise.
* var-tracking.cc: Likewise.
* vtable-verify.cc: Likewise.
* web.cc: Likewise.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
146 files changed:
gcc/adjust-alignment.cc
gcc/asan.cc
gcc/auto-inc-dec.cc
gcc/auto-profile.cc
gcc/bb-reorder.cc
gcc/cfgcleanup.cc
gcc/cfgexpand.cc
gcc/cfgrtl.cc
gcc/cgraphbuild.cc
gcc/combine-stack-adj.cc
gcc/combine.cc
gcc/compare-elim.cc
gcc/config/i386/i386-features.cc
gcc/coroutine-passes.cc
gcc/cprop.cc
gcc/cse.cc
gcc/dce.cc
gcc/df-core.cc
gcc/dse.cc
gcc/dwarf2cfi.cc
gcc/early-remat.cc
gcc/except.cc
gcc/final.cc
gcc/function.cc
gcc/fwprop.cc
gcc/gcse.cc
gcc/gimple-harden-conditionals.cc
gcc/gimple-if-to-switch.cc
gcc/gimple-isel.cc
gcc/gimple-laddress.cc
gcc/gimple-loop-interchange.cc
gcc/gimple-loop-jam.cc
gcc/gimple-loop-versioning.cc
gcc/gimple-low.cc
gcc/gimple-ssa-backprop.cc
gcc/gimple-ssa-evrp.cc
gcc/gimple-ssa-isolate-paths.cc
gcc/gimple-ssa-nonnull-compare.cc
gcc/gimple-ssa-split-paths.cc
gcc/gimple-ssa-store-merging.cc
gcc/gimple-ssa-strength-reduction.cc
gcc/gimple-ssa-warn-access.cc
gcc/gimple-ssa-warn-alloca.cc
gcc/gimple-ssa-warn-restrict.cc
gcc/gimple-warn-recursion.cc
gcc/graphite.cc
gcc/ifcvt.cc
gcc/init-regs.cc
gcc/ipa-comdats.cc
gcc/ipa-cp.cc
gcc/ipa-devirt.cc
gcc/ipa-fnsummary.cc
gcc/ipa-free-lang-data.cc
gcc/ipa-icf.cc
gcc/ipa-inline.cc
gcc/ipa-modref.cc
gcc/ipa-profile.cc
gcc/ipa-pure-const.cc
gcc/ipa-reference.cc
gcc/ipa-split.cc
gcc/ipa-sra.cc
gcc/ipa-visibility.cc
gcc/ipa.cc
gcc/ira.cc
gcc/jump.cc
gcc/loop-init.cc
gcc/lower-subreg.cc
gcc/mode-switching.cc
gcc/modulo-sched.cc
gcc/multiple_target.cc
gcc/omp-expand.cc
gcc/omp-low.cc
gcc/omp-oacc-kernels-decompose.cc
gcc/omp-oacc-neuter-broadcast.cc
gcc/omp-offload.cc
gcc/omp-simd-clone.cc
gcc/passes.cc
gcc/postreload-gcse.cc
gcc/postreload.cc
gcc/predict.cc
gcc/recog.cc
gcc/ree.cc
gcc/reg-stack.cc
gcc/regcprop.cc
gcc/reginfo.cc
gcc/regrename.cc
gcc/reorg.cc
gcc/sancov.cc
gcc/sanopt.cc
gcc/sched-rgn.cc
gcc/stack-ptr-mod.cc
gcc/store-motion.cc
gcc/tracer.cc
gcc/trans-mem.cc
gcc/tree-call-cdce.cc
gcc/tree-cfg.cc
gcc/tree-cfgcleanup.cc
gcc/tree-complex.cc
gcc/tree-eh.cc
gcc/tree-emutls.cc
gcc/tree-if-conv.cc
gcc/tree-into-ssa.cc
gcc/tree-loop-distribution.cc
gcc/tree-nrv.cc
gcc/tree-object-size.cc
gcc/tree-parloops.cc
gcc/tree-predcom.cc
gcc/tree-profile.cc
gcc/tree-sra.cc
gcc/tree-ssa-ccp.cc
gcc/tree-ssa-copy.cc
gcc/tree-ssa-dce.cc
gcc/tree-ssa-dom.cc
gcc/tree-ssa-dse.cc
gcc/tree-ssa-forwprop.cc
gcc/tree-ssa-ifcombine.cc
gcc/tree-ssa-loop-ch.cc
gcc/tree-ssa-loop-im.cc
gcc/tree-ssa-loop-ivcanon.cc
gcc/tree-ssa-loop-prefetch.cc
gcc/tree-ssa-loop-split.cc
gcc/tree-ssa-loop-unswitch.cc
gcc/tree-ssa-loop.cc
gcc/tree-ssa-math-opts.cc
gcc/tree-ssa-phiopt.cc
gcc/tree-ssa-phiprop.cc
gcc/tree-ssa-pre.cc
gcc/tree-ssa-reassoc.cc
gcc/tree-ssa-sccvn.cc
gcc/tree-ssa-sink.cc
gcc/tree-ssa-strlen.cc
gcc/tree-ssa-structalias.cc
gcc/tree-ssa-uncprop.cc
gcc/tree-ssa-uninit.cc
gcc/tree-ssanames.cc
gcc/tree-stdarg.cc
gcc/tree-switch-conversion.cc
gcc/tree-tailcall.cc
gcc/tree-vect-generic.cc
gcc/tree-vectorizer.cc
gcc/tree-vrp.cc
gcc/tsan.cc
gcc/ubsan.cc
gcc/var-tracking.cc
gcc/vtable-verify.cc
gcc/web.cc

index 2db41e8b4c8fc21c6864ec782b91758cd1f7d660..5c5f8f4e5c07b4f9b6f534b3c700d13abd9907a2 100644 (file)
@@ -50,7 +50,7 @@ public:
     : gimple_opt_pass (pass_data_adjust_alignment, ctxt)
   {}
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 }; // class pass_adjust_alignment
 
 } // anon namespace
index 15b2cf8a94e5cb63fb08d3a12bbf172b6b386c95..8276f12cc69438b99aa87cf318963397da344ec9 100644 (file)
@@ -4222,9 +4222,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_asan (m_ctxt); }
-  virtual bool gate (function *) { return gate_asan () || gate_hwasan (); }
-  virtual unsigned int execute (function *) { return asan_instrument (); }
+  opt_pass * clone () final override { return new pass_asan (m_ctxt); }
+  bool gate (function *) final override
+  {
+    return gate_asan () || gate_hwasan ();
+  }
+  unsigned int execute (function *) final override
+  {
+    return asan_instrument ();
+  }
 
 }; // class pass_asan
 
@@ -4259,11 +4265,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return !optimize && (gate_asan () || gate_hwasan ());
     }
-  virtual unsigned int execute (function *) { return asan_instrument (); }
+  unsigned int execute (function *) final override
+  {
+    return asan_instrument ();
+  }
 
 }; // class pass_asan_O0
 
index 85fe9d149506bac1cc3cc906bbd09362526bdde2..481e7af68956d859546929a36fd82abad86ba217 100644 (file)
@@ -1692,7 +1692,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       if (!AUTO_INC_DEC)
        return false;
@@ -1701,7 +1701,7 @@ public:
     }
 
 
-  unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_inc_dec
 
index 2b34b80b82d26ad2aa0f5f63d886b8f257c2fb8a..6533722817f6d6708041ebfdc7e9ad100affa768 100644 (file)
@@ -1752,13 +1752,13 @@ public:
   }
 
   /* opt_pass methods: */
-  virtual bool
-  gate (function *)
+  bool
+  gate (function *) final override
   {
     return flag_auto_profile;
   }
-  virtual unsigned int
-  execute (function *)
+  unsigned int
+  execute (function *) final override
   {
     return autofdo::auto_profile ();
   }
index 6600f44d4d744db09228f3d9d0a6006bc6c222b5..5cd48255f8a12ec88eafad0626fb1f0ce708c83b 100644 (file)
@@ -2633,7 +2633,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       if (targetm.cannot_modify_jumps_p ())
        return false;
@@ -2641,7 +2641,7 @@ public:
              && (flag_reorder_blocks || flag_reorder_blocks_and_partition));
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_reorder_blocks
 
@@ -2794,8 +2794,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
 }; // class pass_duplicate_computed_gotos
 
@@ -2937,8 +2937,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
 }; // class pass_partition_blocks
 
index 335af4911bb9bd154c3023acf45c9f6d7a221aa5..18047da7b2424d440acd12fc3ab0b21b476d79c6 100644 (file)
@@ -3227,7 +3227,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_jump
 
@@ -3274,11 +3274,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return flag_thread_jumps && flag_expensive_optimizations;
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_jump_after_combine
 
@@ -3322,7 +3322,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       cleanup_cfg (flag_crossjumping ? CLEANUP_CROSSJUMP : 0);
       return 0;
index bb33c1b939e054054034e47509f34ad4863988c8..1d7f6b260d04dcf6cd5831bd3df0202afa36a04d 100644 (file)
@@ -6573,7 +6573,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_expand
 
index afbdbfe3450a7400adacaaef96b95596027537af..a05c338a4c81f40403352b8f85597e41a87fa91d 100644 (file)
@@ -483,7 +483,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_free_cfg
 
@@ -3698,7 +3698,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       cfg_layout_initialize (0);
       return 0;
@@ -3737,7 +3737,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_outof_cfg_layout_mode
 
index fdd17aa5a2d97d9d834b2f88045620d9a5bba9c6..bae44591a29caa43e5dc603a96ef4df2786f99ce 100644 (file)
@@ -290,7 +290,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_build_cgraph_edges
 
@@ -484,8 +484,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_rebuild_cgraph_edges (m_ctxt); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_rebuild_cgraph_edges (m_ctxt);
+  }
+  unsigned int execute (function *) final override
   {
     return cgraph_edge::rebuild_edges ();
   }
@@ -524,10 +527,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () {
+  opt_pass * clone () final override {
     return new pass_remove_cgraph_callee_edges (m_ctxt);
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_remove_cgraph_callee_edges
 
index e8ba2717063ad9933faedd1087a3a5903b30f077..e76d60a8f7e4c11a4197ca4def77d684ca0ffdd5 100644 (file)
@@ -823,8 +823,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_stack_adjustments ();
     }
index 9a34ef847aaddfdc4c56fc4cc57616627a47c30f..a8305273e4447fa202c2d4d912682d79e6131671 100644 (file)
@@ -15015,8 +15015,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return (optimize > 0); }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return (optimize > 0); }
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_combine ();
     }
index 985c0c92182737db4676339c7a82588f189be7ac..e869d9d32498b6a3e4f0558f79ffe02401a73f69 100644 (file)
@@ -954,7 +954,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Setting this target hook value is how a backend indicates the need.  */
       if (targetm.flags_regnum == INVALID_REGNUM)
@@ -962,7 +962,7 @@ public:
       return flag_compare_elim_after_reload;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_compare_elim_after_reload ();
     }
index 8908e42d3da7702403b25a60e45ffdfa42c51640..be385869e17ba8fc2f03ddef363f041266c1dcc6 100644 (file)
@@ -1880,13 +1880,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return TARGET_AVX && TARGET_VZEROUPPER
        && flag_expensive_optimizations && !optimize_size;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_insert_vzeroupper ();
     }
@@ -1915,23 +1915,23 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return ((!timode_p || TARGET_64BIT)
              && TARGET_STV && TARGET_SSE2 && optimize > 1);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return convert_scalars_to_vector (timode_p);
     }
 
-  opt_pass *clone ()
+  opt_pass *clone () final override
     {
       return new pass_stv (m_ctxt);
     }
 
-  void set_pass_param (unsigned int n, bool param)
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       timode_p = param;
@@ -2142,14 +2142,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       need_endbr = (flag_cf_protection & CF_BRANCH) != 0;
       patchable_area_size = crtl->patch_area_size - crtl->patch_area_entry;
       return need_endbr || patchable_area_size;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       timevar_push (TV_MACH_DEP);
       rest_of_insert_endbr_and_patchable_area (need_endbr,
@@ -2406,7 +2406,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (TARGET_AVX
              && TARGET_SSE_PARTIAL_REG_DEPENDENCY
@@ -2415,7 +2415,7 @@ public:
              && optimize_function_for_speed_p (cfun));
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return remove_partial_avx_dependency ();
     }
index 7b9a97af5a292ac5221a3665e525f8a26c0963f3..21ac94698052e94a8111693f441738aad314fc86 100644 (file)
@@ -213,9 +213,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_coroutines; };
+  bool gate (function *) final override { return flag_coroutines; };
 
-  virtual unsigned int execute (function *f ATTRIBUTE_UNUSED)
+  unsigned int execute (function *f ATTRIBUTE_UNUSED) final override
   {
     return execute_lower_coro_builtins ();
   }
@@ -511,12 +511,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *f)
+  bool gate (function *f) final override
     {
       return flag_coroutines && f->coroutine_component;
     }
 
-  virtual unsigned int execute (function *f ATTRIBUTE_UNUSED)
+  unsigned int execute (function *f ATTRIBUTE_UNUSED) final override
   {
     return execute_early_expand_coro_ifns ();
   }
index cf01c2d79a90cafb69296f06a08bff144896eaa6..580f811545d6213f98d8cf5889f9dbd70bae7e9f 100644 (file)
@@ -1953,15 +1953,18 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_rtl_cprop (m_ctxt); }
-  virtual bool gate (function *fun)
+  opt_pass * clone () final override { return new pass_rtl_cprop (m_ctxt); }
+  bool gate (function *fun) final override
     {
       return optimize > 0 && flag_gcse
        && !fun->calls_setjmp
        && dbg_cnt (cprop);
     }
 
-  virtual unsigned int execute (function *) { return execute_rtl_cprop (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_rtl_cprop ();
+  }
 
 }; // class pass_rtl_cprop
 
index a18b599d32491c72685ab5a26db62ccc78d50833..b13afd4ba72eda7b771a7db1c89cfbb44ebd7e45 100644 (file)
@@ -7571,8 +7571,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize > 0; }
-  virtual unsigned int execute (function *) { return rest_of_handle_cse (); }
+  bool gate (function *) final override { return optimize > 0; }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_cse ();
+  }
 
 }; // class pass_cse
 
@@ -7642,12 +7645,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_rerun_cse_after_loop;
     }
 
-  virtual unsigned int execute (function *) { return rest_of_handle_cse2 (); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_cse2 ();
+  }
 
 }; // class pass_cse2
 
@@ -7715,12 +7721,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_rerun_cse_after_global_opts;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_cse_after_global_opts ();
     }
index 6676cbcd42917d8e79bf7b12af0287a2687bf037..64aa0aa471d620b6636b4cbc93d6e36ab90796c8 100644 (file)
@@ -849,12 +849,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 1 && flag_dce && dbg_cnt (dce_ud);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_ud_dce ();
     }
@@ -1280,12 +1280,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_dce && dbg_cnt (dce_fast);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_fast_dce ();
     }
index e3a56bf6a9ff6ef942908c7db3620060d4d26831..b53464ccfde816b14d663ea29897712d916f025b 100644 (file)
@@ -741,8 +741,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize > 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return optimize > 0; }
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_df_initialize ();
     }
@@ -781,8 +781,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize == 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return optimize == 0; }
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_df_initialize ();
     }
@@ -848,7 +848,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_df_finish ();
     }
index 994c60dc189774d01191aea6b0b4ca67394c74d3..90a4c1f22dba6a672a8b4ea8ad9fe9755084c3a3 100644 (file)
@@ -3755,12 +3755,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_dse && dbg_cnt (dse1);
     }
 
-  virtual unsigned int execute (function *) { return rest_of_handle_dse (); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_dse ();
+  }
 
 }; // class pass_rtl_dse1
 
@@ -3795,12 +3798,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_dse && dbg_cnt (dse2);
     }
 
-  virtual unsigned int execute (function *) { return rest_of_handle_dse (); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_dse ();
+  }
 
 }; // class pass_rtl_dse2
 
index ab7c5cc5b27b5fb48b0f63ee2240fda8054c7a33..bef3165e691ea93e7272ebf8adaf5cc66d04b6b7 100644 (file)
@@ -3788,8 +3788,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return execute_dwarf2_frame (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return execute_dwarf2_frame ();
+  }
 
 }; // class pass_dwarf2_frame
 
index 2738892b4e7ec9522f397eed730eaea07cf8cffd..5c368293c35eda79a56d2547167eb72b827bb400 100644 (file)
@@ -2615,12 +2615,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return optimize > 1 && NUM_POLY_INT_COEFFS > 1;
   }
 
-  virtual unsigned int execute (function *f)
+  unsigned int execute (function *f) final override
   {
     auto_sbitmap selected_modes (NUM_MACHINE_MODES);
     bitmap_clear (selected_modes);
index b94de425557c1e3a3d315bc0d3518ca10a6473ea..7d7ce40c8466cd4b146d8807ce1a85066d5262d6 100644 (file)
@@ -2047,7 +2047,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return set_nothrow_function_flags ();
     }
@@ -2722,8 +2722,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       int ret = convert_to_eh_region_ranges ();
       maybe_add_nop_after_section_switch ();
index c5427d2110d79dc11bf61fb170ac83e46be10d3b..0352786e49b140f0973e7498338bb7dd4c23578c 100644 (file)
@@ -804,7 +804,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return compute_alignments (); }
+  unsigned int execute (function *) final override
+  {
+    return compute_alignments ();
+  }
 
 }; // class pass_compute_alignments
 
@@ -4356,7 +4359,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return rest_of_handle_final (); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_final ();
+  }
 
 }; // class pass_final
 
@@ -4400,7 +4406,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_shorten_branches ();
     }
@@ -4575,7 +4581,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_clean_state ();
     }
index ad0096a43eff655a6734f4888998e5e7c0125400..0c3e4fffb05b7d318301a059cbb5872a0e19dcd9 100644 (file)
@@ -2029,7 +2029,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return instantiate_virtual_regs ();
     }
@@ -6516,7 +6516,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_check_leaf_regs ();
     }
@@ -6617,7 +6617,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_thread_prologue_and_epilogue ();
     }
@@ -6655,7 +6655,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_zero_call_used_regs
 
@@ -6926,7 +6926,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_match_asm_constraints
 
index d12fc2f34ac9a5a00e0bef910c7262608f326c5f..fc652ab9a1f0aa2ee7536c43b19238b8c59dd48a 100644 (file)
@@ -1029,8 +1029,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_fwprop (); }
-  virtual unsigned int execute (function *) { return fwprop (false); }
+  bool gate (function *) final override { return gate_fwprop (); }
+  unsigned int execute (function *) final override { return fwprop (false); }
 
 }; // class pass_rtl_fwprop
 
@@ -1065,8 +1065,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_fwprop (); }
-  virtual unsigned int execute (function *) { return fwprop (true); }
+  bool gate (function *) final override { return gate_fwprop (); }
+  unsigned int execute (function *) final override { return fwprop (true); }
 
 }; // class pass_rtl_fwprop_addr
 
index b67353143a21450a6068e51ad4e9257a831fe3fc..f06278a5534c3c5b9a925971b1f124e3c8985dc7 100644 (file)
@@ -4049,8 +4049,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return execute_rtl_pre (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *)  final override
+  {
+    return execute_rtl_pre ();
+  }
 
 }; // class pass_rtl_pre
 
@@ -4099,8 +4102,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return execute_rtl_hoist (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return execute_rtl_hoist ();
+  }
 
 }; // class pass_rtl_hoist
 
index 79c0a5784baf837a83051465f2d4ec064ab522da..4ca6776fca71dd5125e740c8d59df646c4c139c6 100644 (file)
@@ -71,11 +71,15 @@ public:
   pass_harden_compares (gcc::context *ctxt)
     : gimple_opt_pass (pass_data_harden_compares, ctxt)
   {}
-  opt_pass *clone () { return new pass_harden_compares (m_ctxt); }
-  virtual bool gate (function *) {
+  opt_pass *clone ()  final override
+  {
+    return new pass_harden_compares (m_ctxt);
+  }
+  bool gate (function *) final override
+  {
     return flag_harden_compares;
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 };
 
 /* Define a pass to harden conditionals in branches.  This pass must
@@ -102,11 +106,15 @@ public:
   pass_harden_conditional_branches (gcc::context *ctxt)
     : gimple_opt_pass (pass_data_harden_conditional_branches, ctxt)
   {}
-  opt_pass *clone () { return new pass_harden_conditional_branches (m_ctxt); }
-  virtual bool gate (function *) {
+  opt_pass *clone () final override
+  {
+    return new pass_harden_conditional_branches (m_ctxt);
+  }
+  bool gate (function *) final override
+  {
     return flag_harden_conditional_branches;
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 };
 
 }
index ca276d790c322f62619437588b93f81106ce420c..70daae2003c65c94e8cdf6c652beca44017fabf2 100644 (file)
@@ -480,13 +480,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return (jump_table_cluster::is_enabled ()
            || bit_test_cluster::is_enabled ());
   }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_if_to_switch
 
index 44d086d8b289527d47cbc0f4252490c8558e785e..aa9c12907356e7df275fba69e794bf242ab2431a 100644 (file)
@@ -355,12 +355,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return true;
     }
 
-  virtual unsigned int execute (function *fun)
+  unsigned int execute (function *fun) final override
     {
       return gimple_expand_vec_exprs (fun);
     }
index 13c7858e16163a9c6f9057a5b90b2d868a174c60..11754dac5c38d7edbc8afb10795d6dca158840b0 100644 (file)
@@ -66,9 +66,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_laddress (m_ctxt); }
-  virtual bool gate (function *) { return optimize != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_laddress (m_ctxt); }
+  bool gate (function *) final override { return optimize != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_laddress
 
index d5d690b240719389413d9983cad4abb9e067f2d7..71772b6d149edb2555ffd1bd1b35e9c8cede8f04 100644 (file)
@@ -1705,9 +1705,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_linterchange (m_ctxt); }
-  virtual bool gate (function *) { return flag_loop_interchange; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_linterchange (m_ctxt); }
+  bool gate (function *) final override { return flag_loop_interchange; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_linterchange
 
index e33dd9091df32a9078e152a609eece174ce938a0..9b18b52a54ce66ed03a993be81141bc6614f6428 100644 (file)
@@ -641,8 +641,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_unroll_jam != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_unroll_jam != 0; }
+  unsigned int execute (function *) final override;
 
 };
 
index ab02bdd4b153063f43b223ed807e0787f1d41de9..6bcf6eba691bb15def3477a02cc971080e52f8c7 100644 (file)
@@ -1782,8 +1782,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_version_loops_for_strides; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override
+  {
+    return flag_version_loops_for_strides;
+  }
+  unsigned int execute (function *) final override;
 };
 
 unsigned int
index 2ec19d5657d2a207c2691d194b8bb1ac11ca41eb..4cd27dd19b05ac67c65b6a935422a3abb53646c4 100644 (file)
@@ -192,7 +192,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return lower_function_body (); }
+  unsigned int execute (function *) final override
+  {
+    return lower_function_body ();
+  }
 
 }; // class pass_lower_cf
 
index 74f981112567ed03042d5513d7067bdb033775c3..55986ddbfe3f53f534832b80763dfea99873d7b7 100644 (file)
@@ -945,9 +945,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_backprop (m_ctxt); }
-  virtual bool gate (function *) { return flag_ssa_backprop; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_backprop (m_ctxt); }
+  bool gate (function *) final override { return flag_ssa_backprop; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_backprop
 
index 20388ed5431fb927a71fe05838e82a0b5ef5d0e8..793a3ea1f1928ac0dc00e47b61791322edcb9eb0 100644 (file)
@@ -377,12 +377,12 @@ public:
     {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_early_vrp (m_ctxt); }
-  virtual bool gate (function *)
+  opt_pass * clone () final override { return new pass_early_vrp (m_ctxt); }
+  bool gate (function *) final override
     {
       return flag_tree_vrp != 0;
     }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     { return execute_early_vrp (); }
 
 }; // class pass_vrp
index cc0ed9760a0388fea8f6af732a1d414deab8fa34..87ecd19ef4a49c8e907dcb444c58ae7d78afb54a 100644 (file)
@@ -969,8 +969,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_isolate_erroneous_paths (m_ctxt); }
-  virtual bool gate (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_isolate_erroneous_paths (m_ctxt);
+  }
+  bool gate (function *) final override
     {
       /* If we do not have a suitable builtin function for the trap statement,
         then do not perform the optimization.  */
@@ -979,7 +982,7 @@ public:
              || warn_null_dereference);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return gimple_ssa_isolate_erroneous_paths ();
     }
index cc52b91425871c7764a006699c55f0a60a651f91..f9ce8c7a0834c35bbe0fdf52db9ba0f991f4ace7 100644 (file)
@@ -126,9 +126,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return warn_nonnull_compare; }
+  bool gate (function *) final override { return warn_nonnull_compare; }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_warn_nonnull_compare
 
index 6abe1d514002b53e2382f328f2611a0ac88f220d..f2e43e52c952424d28462d74ca08c58ba002fe2c 100644 (file)
@@ -579,9 +579,12 @@ class pass_split_paths : public gimple_opt_pass
       : gimple_opt_pass (pass_data_split_paths, ctxt)
     {}
    /* opt_pass methods: */
-   opt_pass * clone () { return new pass_split_paths (m_ctxt); }
-   virtual bool gate (function *) { return gate_split_paths (); }
-   virtual unsigned int execute (function *) { return execute_split_paths (); }
+  opt_pass * clone () final override { return new pass_split_paths (m_ctxt); }
+  bool gate (function *) final override { return gate_split_paths (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_split_paths ();
+  }
 
 }; // class pass_split_paths
 
index b952ce57917e69821fbcc998ef4c58e4b0314257..0640168bcc4570c3bc14cadcb65665a1ab942a36 100644 (file)
@@ -1037,12 +1037,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return flag_expensive_optimizations && optimize && BITS_PER_UNIT == 8;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_optimize_bswap
 
@@ -2433,8 +2433,8 @@ public:
   /* Pass not supported for PDP-endian, nor for insane hosts or
      target character sizes where native_{encode,interpret}_expr
      doesn't work properly.  */
-  virtual bool
-  gate (function *)
+  bool
+  gate (function *) final override
   {
     return flag_store_merging
           && BYTES_BIG_ENDIAN == WORDS_BIG_ENDIAN
@@ -2442,7 +2442,7 @@ public:
           && BITS_PER_UNIT == 8;
   }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 private:
   hash_map<tree_operand_hash, class imm_store_chain_info *> m_stores;
index dad73d31874a3f5e2d6ee53a0a1f3d11295522ed..2b559e96fc832518f27ef6c8ebb5346f3560d681 100644 (file)
@@ -4002,8 +4002,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_slsr; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_tree_slsr; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_strength_reduction
 
index eb9297a2bb268ea828ef75bb24af75554d1a4b91..04aa849a4b12a090da31670f830f7e07d57619e1 100644 (file)
@@ -2075,13 +2075,13 @@ class pass_waccess : public gimple_opt_pass
 
   ~pass_waccess ();
 
-  opt_pass *clone ();
+  opt_pass *clone () final override;
 
-  virtual bool gate (function *);
+  bool gate (function *) final override;
 
-  void set_pass_param (unsigned, bool);
+  void set_pass_param (unsigned, bool) final override;
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 private:
   /* Not copyable or assignable.  */
index 273b88ec141aebe05c224875b4f454263f8712d9..83a241a3a4ba6be4b3def32983826f24e234c705 100644 (file)
@@ -58,8 +58,8 @@ public:
   pass_walloca (gcc::context *ctxt)
     : gimple_opt_pass(pass_data_walloca, ctxt), xlimit_certain_p (false)
   {}
-  opt_pass *clone () { return new pass_walloca (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass *clone () final override { return new pass_walloca (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       // Set to true to enable only warnings for alloca calls that
@@ -69,8 +69,8 @@ public:
       // the "may be too large" kind.
       xlimit_certain_p = param;
     }
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
  private:
   // Set to TRUE the first time we run this pass on a function.
index 734cdd7f5b478588143068b6d0e125e6de1dc531..6b6097a3d4c3710fa8d08d830ec6288c644a5594 100644 (file)
@@ -64,8 +64,8 @@ class pass_wrestrict : public gimple_opt_pass
  public:
   pass_wrestrict (gcc::context *);
 
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
   void check_call (gimple *);
 
index 91a3cdbacd4cf14d1abf11e2a31102ec1c91c91c..9b04899cf787de9b33e48a735bf2adede8ae07e0 100644 (file)
@@ -52,9 +52,9 @@ public:
   pass_warn_recursion (gcc::context *);
 
 private:
-  virtual bool gate (function *) { return warn_infinite_recursion; }
+  bool gate (function *) final override { return warn_infinite_recursion; }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
   bool find_function_exit (basic_block);
 
index ab8683b5b4190717fb7d9255801ff07286639476..a88b13c021988c1253d081081b4fba3fdb87240f 100644 (file)
@@ -574,7 +574,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_graphite_transforms (); }
+  bool gate (function *) final override { return gate_graphite_transforms (); }
 
 }; // class pass_graphite
 
@@ -609,8 +609,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_graphite_transforms (); }
-  virtual unsigned int execute (function *fun) { return graphite_transforms (fun); }
+  bool gate (function *) final override { return gate_graphite_transforms (); }
+  unsigned int execute (function *fun) final override
+  {
+    return graphite_transforms (fun);
+  }
 
 }; // class pass_graphite_transforms
 
index e007b17b793e7905b9ad7651e2dabdc867ea8e67..25aff38189e5206ea96f770b533ec4d4cde741c2 100644 (file)
@@ -5934,12 +5934,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize > 0) && dbg_cnt (if_conversion);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_if_conversion ();
     }
@@ -5981,13 +5981,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_if_conversion
        && dbg_cnt (if_after_combine);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       if_convert (true);
       return 0;
@@ -6027,13 +6027,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return optimize > 0 && flag_if_conversion2
        && dbg_cnt (if_after_reload);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       if_convert (true);
       return 0;
index 220ef705997e1e3aefdd7233b6de77f50653a948..652befefdaa6540ec6c6eb3c403f5a466ed00a18 100644 (file)
@@ -153,8 +153,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize > 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return optimize > 0; }
+  unsigned int execute (function *) final override
     {
       initialize_uninitialized_regs ();
       return 0;
index 566faf3cc1fe4b33f61818a61c1b4a105f373907..da792065ed3e5e9ea7e18eed3601dddfb9f7456d 100644 (file)
@@ -420,8 +420,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return ipa_comdats (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override { return ipa_comdats (); }
 
 }; // class pass_ipa_comdats
 
index f26bfcc4ee09684f9de7c692a526df85f821bcd3..18d2559e5a307f2e692bc3f61ba3d73d7c7d9507 100644 (file)
@@ -6657,14 +6657,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* FIXME: We should remove the optimize check after we ensure we never run
         IPA passes when not optimizing.  */
       return (flag_ipa_cp && optimize) || in_lto_p;
     }
 
-  virtual unsigned int execute (function *) { return ipcp_driver (); }
+  unsigned int execute (function *) final override { return ipcp_driver (); }
 
 }; // class pass_ipa_cp
 
index 9f1442dc3cc198d9d117d20bd0c603e42c2d00d6..412ca14f66b231ea1f15f6acd844a3feb420bcb9 100644 (file)
@@ -3969,7 +3969,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* In LTO, always run the IPA passes and decide on function basis if the
         pass is enabled.  */
@@ -3982,7 +3982,7 @@ public:
              && optimize);
     }
 
-  virtual unsigned int execute (function *) { return ipa_devirt (); }
+  unsigned int execute (function *) final override { return ipa_devirt (); }
 
 }; // class pass_ipa_devirt
 
@@ -4361,12 +4361,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (in_lto_p || flag_lto);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return 0;
     }
index c9564451f266e43a93c4f65769c85572af55ec16..e2a86680a21ee20dbbcf1456b81382a6aca41675 100644 (file)
@@ -4846,8 +4846,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_local_fn_summary (m_ctxt); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_local_fn_summary (m_ctxt);
+  }
+  unsigned int execute (function *) final override
     {
       return compute_fn_summary_for_current ();
     }
@@ -4889,14 +4892,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass *clone () { return new pass_ipa_free_fn_summary (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass *clone () final override
+  {
+    return new pass_ipa_free_fn_summary (m_ctxt);
+  }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       small_p = param;
     }
-  virtual bool gate (function *) { return true; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return true; }
+  unsigned int execute (function *) final override
     {
       ipa_free_fn_summary ();
       /* Free ipa-prop structures if they are no longer needed.  */
@@ -4950,7 +4956,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return 0; }
+  unsigned int execute (function *) final override { return 0; }
 
 }; // class pass_ipa_fn_summary
 
index f99f7be1c587b5523d29904474df58cef1b06402..ccdbf849c25cad65229bbc95cb4c8f48f3cb5c0a 100644 (file)
@@ -1173,7 +1173,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return free_lang_data (); }
+  unsigned int execute (function *) final override { return free_lang_data (); }
 
 }; // class pass_ipa_free_lang_data
 
index 6528a7a10b26f423fe03ac15d6bf2b2a3f1dc59a..65baa84c01162ffc2a3ff7f43e13f0625e44734e 100644 (file)
@@ -3638,12 +3638,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return in_lto_p || flag_ipa_icf_variables || flag_ipa_icf_functions;
   }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
   {
     return ipa_icf_driver();
   }
index 22a009b7435b5b1d1cc599a6ac840e3da42e818d..14969198cde1c675f8058043144c72bfa7b37c31 100644 (file)
@@ -3100,7 +3100,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_early_inline
 
@@ -3150,7 +3150,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return ipa_inline (); }
+  unsigned int execute (function *) final override { return ipa_inline (); }
 
 }; // class pass_ipa_inline
 
index c053f8b36d431c39f81a8de2657c7a3e2d79a15b..0d9abacf0a6b93f3ad5ad68b4b4937aeaec030c9 100644 (file)
@@ -3508,15 +3508,15 @@ class pass_modref : public gimple_opt_pass
        : gimple_opt_pass (pass_data_modref, ctxt) {}
 
     /* opt_pass methods: */
-    opt_pass *clone ()
+    opt_pass *clone () final override
     {
       return new pass_modref (m_ctxt);
     }
-    virtual bool gate (function *)
+    bool gate (function *) final override
     {
       return flag_ipa_modref;
     }
-    virtual unsigned int execute (function *);
+    unsigned int execute (function *) final override;
 };
 
 /* Encode TT to the output block OB using the summary streaming API.  */
@@ -4170,12 +4170,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass *clone () { return new pass_ipa_modref (m_ctxt); }
-  virtual bool gate (function *)
+  opt_pass *clone () final override { return new pass_ipa_modref (m_ctxt); }
+  bool gate (function *) final override
   {
     return true;
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 };
 
index 8763b389605821b178ba21ba85a5e5fe5a9f1375..e0acc5d018897e581a6f44ebc103eb2d4f64e6b4 100644 (file)
@@ -1053,8 +1053,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_ipa_profile || in_lto_p; }
-  virtual unsigned int execute (function *) { return ipa_profile (); }
+  bool gate (function *) final override { return flag_ipa_profile || in_lto_p; }
+  unsigned int execute (function *) final override { return ipa_profile (); }
 
 }; // class pass_ipa_profile
 
index 6f8006a8efc5575854fd5e765bca076e122f97ac..572a6da274ffce6bf6e14823a07f405e487c3597 100644 (file)
@@ -168,8 +168,8 @@ public:
   pass_ipa_pure_const(gcc::context *ctxt);
 
   /* opt_pass methods: */
-  bool gate (function *) { return gate_pure_const (); }
-  unsigned int execute (function *fun);
+  bool gate (function *) final override { return gate_pure_const (); }
+  unsigned int execute (function *fun) final override;
 
   void register_hooks (void);
 
@@ -2154,9 +2154,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_local_pure_const (m_ctxt); }
-  virtual bool gate (function *) { return gate_pure_const (); }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override
+  {
+    return new pass_local_pure_const (m_ctxt);
+  }
+  bool gate (function *) final override { return gate_pure_const (); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_local_pure_const
 
@@ -2270,8 +2273,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return warn_suggest_attribute_noreturn; }
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override
+  {
+    return warn_suggest_attribute_noreturn;
+  }
+  unsigned int execute (function *fun) final override
     {
       if (!TREE_THIS_VOLATILE (current_function_decl)
          && EDGE_COUNT (EXIT_BLOCK_PTR_FOR_FN (fun)->preds) == 0)
@@ -2316,9 +2322,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_nothrow (m_ctxt); }
-  virtual bool gate (function *) { return optimize; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_nothrow (m_ctxt); }
+  bool gate (function *) final override { return optimize; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_nothrow
 
index 40b0209e28e4e38677f60da98535fb80a15083f0..bd6ee0d8c575418ae0c371b2e59378e41a8568b0 100644 (file)
@@ -1299,14 +1299,14 @@ public:
     {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return ((in_lto_p || flag_ipa_reference)
              /* Don't bother doing anything if the program has errors.  */
              && !seen_error ());
     }
 
-  virtual unsigned int execute (function *) { return propagate (); }
+  unsigned int execute (function *) final override { return propagate (); }
 
 }; // class pass_ipa_reference
 
index 60021bad13c6e5d2a49f50bac7d08841b9dd6e6b..16734617d0381d0dbb5f0c3cf588c3ba9729a19d 100644 (file)
@@ -1915,8 +1915,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return execute_split_functions ();
     }
@@ -1974,8 +1974,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return execute_feedback_split_functions ();
     }
index 96b020fb2ddc0f8f45c7907ced823cd68c2a4b20..2237ac6d92f2f37fe6a77d09069ab434fe40d389 100644 (file)
@@ -4049,14 +4049,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* TODO: We should remove the optimize check after we ensure we never run
         IPA passes when not optimizing.  */
       return (flag_ipa_sra && optimize);
     }
 
-  virtual unsigned int execute (function *) { return ipa_sra_analysis (); }
+  unsigned int execute (function *)  final override
+  {
+    return ipa_sra_analysis ();
+  }
 
 }; // class pass_ipa_sra
 
index e95a0dd252f582f9f5706e91a0d542e526c942de..8a27e7bcdfd12772765af584e5ef576d90d2d8b7 100644 (file)
@@ -959,12 +959,12 @@ public:
 
   /* opt_pass methods: */
 
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Do not re-run on ltrans stage.  */
       return !flag_ltrans;
     }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return whole_program_function_and_variable_visibility ();
     }
@@ -988,7 +988,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return function_and_variable_visibility (flag_whole_program && !flag_lto);
     }
index 4d5729f83703e15fd0cc122c5cbc5ac5acca23eb..d17aa86aebb5360936ce0bf733f0d8ecd421f760 100644 (file)
@@ -1342,8 +1342,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return ipa_cdtor_merge (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return ipa_cdtor_merge ();
+  }
 
 }; // class pass_ipa_cdtor_merge
 
@@ -1565,7 +1568,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return ipa_single_use (); }
+  unsigned int execute (function *) final override { return ipa_single_use (); }
 
 }; // class pass_ipa_single_use
 
index e3b3c549120ea3e913d83347404ace23474e3843..42c9cead9f8e087c47b510f8fdf6aab217f162db 100644 (file)
@@ -6074,11 +6074,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return !targetm.no_register_allocation;
     }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       ira (dump_file);
       return 0;
@@ -6117,11 +6117,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return !targetm.no_register_allocation;
     }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       do_reload ();
       return 0;
index 332f86878e17445996696f53735dee17c21883bb..e6207169be08122b86970109cc4655b077741179 100644 (file)
@@ -182,7 +182,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return cleanup_barriers (); }
+  unsigned int execute (function *) final override
+  {
+    return cleanup_barriers ();
+  }
 
 }; // class pass_cleanup_barriers
 
index 1e4f6cfd7fb441f4aadc10f503d3f38dc2285ff5..648aa290916b8455fd79528108a242e5918ed61c 100644 (file)
@@ -357,7 +357,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
+  bool gate (function *) final override;
 
 }; // class pass_loop2
 
@@ -429,7 +429,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return rtl_loop_init (); }
+  unsigned int execute (function *) final override { return rtl_loop_init (); }
 
 }; // class pass_rtl_loop_init
 
@@ -467,7 +467,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_rtl_loop_done
 
@@ -523,8 +523,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_move_loop_invariants; }
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override { return flag_move_loop_invariants; }
+  unsigned int execute (function *fun) final override
     {
       if (number_of_loops (fun) > 1)
        move_loop_invariants ();
@@ -565,12 +565,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (flag_unroll_loops || flag_unroll_all_loops || cfun->has_unroll);
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_rtl_unroll_loops
 
@@ -625,8 +625,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
 }; // class pass_rtl_doloop
 
index d30bbeeabdab102ffd638c49730852c53e123caa..03e9326c663bd29308f4c88872fc07133757ca5a 100644 (file)
@@ -1769,8 +1769,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_split_wide_types != 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_split_wide_types != 0; }
+  unsigned int execute (function *) final override
     {
       decompose_multiword_subregs (false);
       return 0;
@@ -1811,9 +1811,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_split_wide_types
-                                         && flag_split_wide_types_early; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override
+  {
+    return flag_split_wide_types && flag_split_wide_types_early;
+  }
+  unsigned int execute (function *) final override
     {
       decompose_multiword_subregs (true);
       return 0;
@@ -1854,8 +1856,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_split_wide_types; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_split_wide_types; }
+  unsigned int execute (function *) final override
     {
       decompose_multiword_subregs (true);
       return 0;
index 6e3f1dc65e2126c2687c93dfa24bd92fc11e31cd..b0f6e7cedd429043838b93cb099f578a39d3c977 100644 (file)
@@ -893,8 +893,8 @@ public:
   /* opt_pass methods: */
   /* The epiphany backend creates a second instance of this pass, so we need
      a clone method.  */
-  opt_pass * clone () { return new pass_mode_switching (m_ctxt); }
-  virtual bool gate (function *)
+  opt_pass * clone () final override { return new pass_mode_switching (m_ctxt); }
+  bool gate (function *) final override
     {
 #ifdef OPTIMIZE_MODE_SWITCHING
       return true;
@@ -903,7 +903,7 @@ public:
 #endif
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
 #ifdef OPTIMIZE_MODE_SWITCHING
       optimize_mode_switching ();
index 2c95c0995ee3ed6aa10a45bc41625e435f08c7b1..162de199da684b687359c92401e154ac1f25fcd1 100644 (file)
@@ -3338,12 +3338,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
 {
   return (optimize > 0 && flag_modulo_sched);
 }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_sms
 
index 7fe02fb55c8be476e8e635487a6808b47fe2a199..3e2d26882c8e9f449025f9399ee238564565b2e8 100644 (file)
@@ -526,8 +526,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return ipa_target_clone (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return ipa_target_clone ();
+  }
 };
 
 bool
index 2572957f72e22b6a508e217103b7751709b2718d..1023c56fc3deae2337fe00dec067916f878fd5be 100644 (file)
@@ -10625,7 +10625,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       bool gate = ((flag_openacc != 0 || flag_openmp != 0
                    || flag_openmp_simd != 0)
@@ -10672,12 +10672,18 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       return !(fun->curr_properties & PROP_gimple_eomp);
     }
-  virtual unsigned int execute (function *) { return execute_expand_omp (); }
-  opt_pass * clone () { return new pass_expand_omp_ssa (m_ctxt); }
+  unsigned int execute (function *) final override
+  {
+    return execute_expand_omp ();
+  }
+  opt_pass * clone () final override
+  {
+    return new pass_expand_omp_ssa (m_ctxt);
+  }
 
 }; // class pass_expand_omp_ssa
 
index f976e3a1549c2f2057bd1c4ca719afbf8628eb0b..b9d5529f212773379e7de430ff0dfb60d6398416 100644 (file)
@@ -14697,7 +14697,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return execute_lower_omp (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_lower_omp ();
+  }
 
 }; // class pass_lower_omp
 
@@ -15005,11 +15008,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return flag_openacc || flag_openmp || flag_openmp_simd;
   }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return diagnose_omp_structured_block_errors ();
     }
index ec9b0faab0a0e5d40e7c77ae7d9bd8eda0efa95d..524060e2fca2841ae9f9cdc804499b4dacdd7a4f 100644 (file)
@@ -1615,12 +1615,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return (flag_openacc
            && param_openacc_kernels == OPENACC_KERNELS_DECOMPOSE);
   }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
   {
     return omp_oacc_kernels_decompose ();
   }
index 81e3223a94ca88ea766bb3e0e539c052781ef175..b6177794cde78b91953ed5e293cf8978c0516541 100644 (file)
@@ -1945,7 +1945,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
   {
     if (!flag_openacc)
       return false;
@@ -1961,7 +1961,7 @@ public:
     return true;
   }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_omp_oacc_neuter_broadcast ();
     }
index fcbe6cf83d8cad3348eaeb28fd805be08dc5c331..3a89119371ca66913d5155e97edfe72b00b3cc55 100644 (file)
@@ -2450,9 +2450,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_openacc; };
+  bool gate (function *) final override { return flag_openacc; };
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_oacc_loop_designation ();
     }
@@ -2480,9 +2480,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_openacc; };
+  bool gate (function *) final override { return flag_openacc; };
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_oacc_device_lower ();
     }
@@ -2714,13 +2714,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       return (!(fun->curr_properties & PROP_gimple_lomp_dev)
              || (flag_openmp
                  && cgraph_node::get (fun->decl)->calls_declare_variant_alt));
     }
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_omp_device_lower ();
     }
@@ -2760,7 +2760,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
 #ifdef ACCEL_COMPILER
       return offloading_function_p (fun->decl);
@@ -2770,7 +2770,7 @@ public:
 #endif
     }
 
-  virtual unsigned execute (function *);
+  unsigned execute (function *) final override;
 };
 
 /* Callback for walk_gimple_stmt used to scan for link var operands.  */
index 04fe03cde5faae9a378d9738b24f6d51f264b070..32649bc3f9a127781e3933cecbcc51f04fee5301 100644 (file)
@@ -1819,8 +1819,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return ipa_omp_simd_clone (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return ipa_omp_simd_clone ();
+  }
 };
 
 bool
index 36e5b4ac45fd8a17aa064b01d46ef8618d3fae20..78a07f8691a2dc9bd2f5232b85efdd1705194982 100644 (file)
@@ -417,13 +417,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Don't bother doing anything if the program has errors.  */
       return (!seen_error () && !in_lto_p);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_build_ssa_passes ();
     }
@@ -451,7 +451,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Don't bother doing anything if the program has errors.  */
       return (!seen_error () && !in_lto_p);
@@ -480,7 +480,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Don't bother doing anything if the program has errors.  */
       return (!seen_error () && !in_lto_p);
@@ -531,7 +531,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize >= 1
              /* Don't bother doing anything if the program has errors.  */
@@ -571,7 +571,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize >= 1 && !optimize_debug; }
+  bool gate (function *) final override
+  {
+    return optimize >= 1 && !optimize_debug;
+  }
 
 }; // class pass_all_optimizations
 
@@ -606,7 +609,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize >= 1 && optimize_debug; }
+  bool gate (function *) final override
+  {
+    return optimize >= 1 && optimize_debug;
+  }
 
 }; // class pass_all_optimizations_g
 
@@ -641,7 +647,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Early return if there were errors.  We can run afoul of our
         consistency checks, and there's not really much point in fixing them.  */
@@ -681,7 +687,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return reload_completed; }
+  bool gate (function *) final override { return reload_completed; }
 
 }; // class pass_postreload
 
@@ -716,7 +722,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return reload_completed || targetm.no_register_allocation;
   }
@@ -756,15 +762,15 @@ public:
   {
   }
 
-  virtual bool
-  gate (function *fun)
+  bool
+  gate (function *fun) final override
   {
     return flag_tree_slp_vectorize
           && (fun->pending_TODOs & PENDING_TODO_force_next_scalar_cleanup);
   }
 
-  virtual unsigned int
-  execute (function *fun)
+  unsigned int
+  execute (function *fun) final override
   {
     fun->pending_TODOs &= ~PENDING_TODO_force_next_scalar_cleanup;
     return 0;
index fc63f0b5c7708bf5a0fd529cb2a99a5d152184ee..1c795b43ca36b1f486950adbe9ad97b390b0b75f 100644 (file)
@@ -1447,13 +1447,16 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       return (optimize > 0 && flag_gcse_after_reload
              && optimize_function_for_speed_p (fun));
     }
 
-  virtual unsigned int execute (function *) { return rest_of_handle_gcse2 (); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_gcse2 ();
+  }
 
 }; // class pass_gcse2
 
index 4a67d0d437a2b968a6177f1352e6f0a607d9eb8c..d1c99fe6dc9b21b191cd3d5fb0ac5ee059b3642e 100644 (file)
@@ -2339,9 +2339,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return (optimize > 0 && reload_completed); }
+  bool gate (function *) final override
+  {
+    return (optimize > 0 && reload_completed);
+  }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_postreload_cse
 
index 62da149e2b6939c6c8cbbff97bd390ecd3598de9..b36caa3ae82b38211b0f134275fa7d7cc098f09b 100644 (file)
@@ -4078,8 +4078,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_guess_branch_prob; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_guess_branch_prob; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_profile
 
@@ -4232,14 +4232,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_strip_predict_hints (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override
+  {
+    return new pass_strip_predict_hints (m_ctxt);
+  }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       early_p = param;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 private:
   bool early_p;
index cd2410ab2ae81082fccf537e835ee6b99b96824f..dac172bc7c001d3a09682913970d7c627b7a00d1 100644 (file)
@@ -4358,9 +4358,12 @@ public:
   /* opt_pass methods: */
   /* The epiphany backend creates a second instance of this pass, so we need
      a clone method.  */
-  opt_pass * clone () { return new pass_peephole2 (m_ctxt); }
-  virtual bool gate (function *) { return (optimize > 0 && flag_peephole2); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override { return new pass_peephole2 (m_ctxt); }
+  bool gate (function *) final override
+  {
+    return (optimize > 0 && flag_peephole2);
+  }
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_peephole2 ();
     }
@@ -4400,8 +4403,11 @@ public:
   /* opt_pass methods: */
   /* The epiphany backend creates a second instance of this pass, so
      we need a clone method.  */
-  opt_pass * clone () { return new pass_split_all_insns (m_ctxt); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_split_all_insns (m_ctxt);
+  }
+  unsigned int execute (function *) final override
     {
       split_all_insns ();
       return 0;
@@ -4440,13 +4446,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* If optimizing, then go ahead and split insns now.  */
       return optimize > 0;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       split_all_insns ();
       return 0;
@@ -4495,12 +4501,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return enable_split_before_sched2 ();
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       split_all_insns ();
       return 0;
@@ -4539,8 +4545,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       split_all_insns ();
       return 0;
@@ -4598,7 +4604,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* The placement of the splitting that we do for shorten_branches
         depends on whether regstack is used by the target or not.  */
@@ -4609,7 +4615,7 @@ public:
 #endif
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return split_all_insns_noflow ();
     }
index de4f18e8a4d4ce618a33c5e1d13a1bba4483d496..da64ef679b7f0d754a6e5765d7fab0a28ce8788d 100644 (file)
@@ -1403,8 +1403,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return (optimize > 0 && flag_ree); }
-  virtual unsigned int execute (function *) { return rest_of_handle_ree (); }
+  bool gate (function *) final override { return (optimize > 0 && flag_ree); }
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_ree ();
+  }
 
 }; // class pass_ree
 
index 5afeadf8c4986e0a7da4a7b03aff3576547a09c6..fd032501ad9c9c0e48e0aa06051a5fb660a5ded1 100644 (file)
@@ -3413,7 +3413,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
 #ifdef STACK_REGS
       return true;
@@ -3468,7 +3468,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_stack_regs ();
     }
index eacc59feb3807996c7cedfae2b90f2511db54ceb..ce9d32a4fb74e0599a56ac9b91074a2b7e4bf05b 100644 (file)
@@ -1293,12 +1293,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize > 0 && (flag_cprop_registers));
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_cprop_hardreg
 
index 2ab7bbb73532f4b820974def9b0c80ac27e40b77..705779d5c1822d6e8d69b1b256d88a99c46f296c 100644 (file)
@@ -953,7 +953,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return reginfo_init (); }
+  unsigned int execute (function *) final override { return reginfo_init (); }
 
 }; // class pass_reginfo_init
 
index f65135151d8ed9fa5a94f45e1768592951317b05..b15eb80f022953dbf6af0c5f7107571df2b665db 100644 (file)
@@ -2012,12 +2012,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize > 0 && (flag_rename_registers));
     }
 
-  virtual unsigned int execute (function *) { return regrename_optimize (); }
+  unsigned int execute (function *) final override
+  {
+    return regrename_optimize ();
+  }
 
 }; // class pass_regrename
 
index 7624f5149068c363a71b50fc226b61eb205a66b1..07b2045986cdf4d92674901f0995ae92dad895b7 100644 (file)
@@ -3866,8 +3866,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_delay_slots ();
     }
@@ -3917,12 +3917,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return targetm.machine_dependent_reorg != 0;
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       targetm.machine_dependent_reorg ();
       return 0;
index 9c1025200b4a5b2a51839cde175629ab4f856e6c..052fa4ef881ed25109ffb51f1736690aae9ae429 100644 (file)
@@ -308,17 +308,17 @@ public:
 
   static const pass_data data;
   opt_pass *
-  clone ()
+  clone () final override
   {
     return new pass_sancov<O0> (m_ctxt);
   }
-  virtual bool
-  gate (function *fun)
+  bool
+  gate (function *fun) final override
   {
     return sanitize_coverage_p (fun->decl) && (!O0 || !optimize);
   }
-  virtual unsigned int
-  execute (function *fun)
+  unsigned int
+  execute (function *fun) final override
   {
     return sancov_pass (fun);
   }
index 2b05553baeb23f62dd6585a7be35269cad0c404a..e9d188d78891436ccdc05305dbd60705fe24b002 100644 (file)
@@ -942,7 +942,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     /* SANITIZE_RETURN is handled in the front-end.  When trapping,
        SANITIZE_UNREACHABLE is handled by builtin_decl_unreachable.  */
@@ -951,7 +951,7 @@ public:
       mask |= SANITIZE_UNREACHABLE;
     return flag_sanitize & ~mask;
   }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_sanopt
 
index a0dfdb7881ff72a6532ec4dfe29605d9eb3f7dd1..0dc2a8f28516eddb92d0a81ab88169feef9f31c4 100644 (file)
@@ -3779,7 +3779,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
 #ifdef INSN_SCHEDULING
       return flag_live_range_shrinkage;
@@ -3788,7 +3788,7 @@ public:
 #endif
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_live_range_shrinkage ();
     }
@@ -3826,8 +3826,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return rest_of_handle_sched (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
+  {
+    return rest_of_handle_sched ();
+  }
 
 }; // class pass_sched
 
@@ -3872,8 +3875,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_sched2 ();
     }
@@ -3922,8 +3925,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return rest_of_handle_sched_fusion ();
     }
index b14bef98c4946bfe1d7e2a598365c2424a20efc6..4ccbb1cace32c80076181bbc67215023809e0ce5 100644 (file)
@@ -71,7 +71,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_stack_ptr_mod
 
index 0f708700a14a1f41bea57cd09b44e9e2227f7e74..b61c06868447fb4873fa02e834105cfe5c507fd9 100644 (file)
@@ -1243,8 +1243,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override
     {
       return execute_rtl_store_motion ();
     }
index 4d054fe8fc800a09dd679792de7c0b587f2bc4d3..64517846dc444dd63c41844c13d4502b3c4100df 100644 (file)
@@ -424,12 +424,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize > 0 && flag_tracer && flag_reorder_blocks);
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_tracer
 
index ae2921f808e5f22303cfeaf7657ce34364d82f19..131dce05476ac1fde16ad61a27623b4a81c3ff3f 100644 (file)
@@ -864,8 +864,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tm; }
-  virtual unsigned int execute (function *) { return diagnose_tm_blocks (); }
+  bool gate (function *) final override { return flag_tm; }
+  unsigned int execute (function *) final override
+  {
+    return diagnose_tm_blocks ();
+  }
 
 }; // class pass_diagnose_tm_blocks
 
@@ -1850,8 +1853,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tm; }
-  virtual unsigned int execute (function *) { return execute_lower_tm (); }
+  bool gate (function *) final override { return flag_tm; }
+  unsigned int execute (function *) final override
+  {
+    return execute_lower_tm ();
+  }
 
 }; // class pass_lower_tm
 
@@ -2144,7 +2150,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_tm_init (); }
+  bool gate (function *) final override { return gate_tm_init (); }
 
 }; // class pass_tm_init
 
@@ -3162,7 +3168,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return execute_tm_mark (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_tm_mark ();
+  }
 
 }; // class pass_tm_mark
 
@@ -3324,7 +3333,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_tm_edges
 
@@ -4085,8 +4094,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tm && optimize > 0; }
-  virtual unsigned int execute (function *) { return execute_tm_memopt (); }
+  bool gate (function *) final override { return flag_tm && optimize > 0; }
+  unsigned int execute (function *) final override
+  {
+    return execute_tm_memopt ();
+  }
 
 }; // class pass_tm_memopt
 
@@ -5667,8 +5679,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tm; }
-  virtual unsigned int execute (function *) { return ipa_tm_execute (); }
+  bool gate (function *) final override { return flag_tm; }
+  unsigned int execute (function *) final override { return ipa_tm_execute (); }
 
 }; // class pass_ipa_tm
 
index 83991fe373e2126bc647a0294a314148d901755d..feb61f362cf78c6a7c5de5e816434413781e272f 100644 (file)
@@ -1171,7 +1171,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* The limit constants used in the implementation
         assume IEEE floating point format.  Other formats
@@ -1179,7 +1179,7 @@ public:
       return flag_tree_builtin_call_dce != 0;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_call_cdce
 
index 734fdddbf976e0ac5343065ac10f8a19cff8104c..bfcb1425f7e2e46e3d525808adda11560041dd68 100644 (file)
@@ -407,7 +407,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return execute_build_cfg (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_build_cfg ();
+  }
 
 }; // class pass_build_cfg
 
@@ -9209,9 +9212,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return split_critical_edges (); }
+  unsigned int execute (function *)  final override
+  {
+    return split_critical_edges ();
+  }
 
-  opt_pass * clone () { return new pass_split_crit_edges (m_ctxt); }
+  opt_pass * clone () final override
+  {
+    return new pass_split_crit_edges (m_ctxt);
+  }
 }; // class pass_split_crit_edges
 
 } // anon namespace
@@ -9468,7 +9477,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_warn_function_return
 
@@ -9674,8 +9683,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_warn_unused_result; }
-  virtual unsigned int execute (function *)
+  bool gate (function *)  final override { return flag_warn_unused_result; }
+  unsigned int execute (function *) final override
     {
       do_warn_unused_result (gimple_body (current_function_decl));
       return 0;
@@ -9884,8 +9893,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_fixup_cfg (m_ctxt); }
-  virtual unsigned int execute (function *) { return execute_fixup_cfg (); }
+  opt_pass * clone () final override { return new pass_fixup_cfg (m_ctxt); }
+  unsigned int execute (function *) final override
+  {
+    return execute_fixup_cfg ();
+  }
 
 }; // class pass_fixup_cfg
 
index 893619eaaa43b3c055f79721ee0c65250a3854c1..a6d0bf2c40ae8e741b63349ad86e538e1369275c 100644 (file)
@@ -1406,8 +1406,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_merge_phi (m_ctxt); }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_merge_phi (m_ctxt); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_merge_phi
 
@@ -1584,7 +1584,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return execute_cleanup_cfg_post_optimizing ();
     }
index f722057bfec26ec5e11e7516e5581741bb8b13b7..61950a0f0991a52cd915bd797f88cf40c43208a8 100644 (file)
@@ -1915,8 +1915,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_lower_complex (m_ctxt); }
-  virtual unsigned int execute (function *) { return tree_lower_complex (); }
+  opt_pass * clone () final override { return new pass_lower_complex (m_ctxt); }
+  unsigned int execute (function *) final override
+  {
+    return tree_lower_complex ();
+  }
 
 }; // class pass_lower_complex
 
@@ -1952,14 +1955,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       /* With errors, normal optimization passes are not run.  If we don't
         lower complex operations at all, rtl expansion will abort.  */
       return !(fun->curr_properties & PROP_gimple_lcx);
     }
 
-  virtual unsigned int execute (function *) { return tree_lower_complex (); }
+  unsigned int execute (function *) final override
+  {
+    return tree_lower_complex ();
+  }
 
 }; // class pass_lower_complex_O0
 
index c37a584534370cbecf5f40cbde1fa6220c954663..076ecd3ec9ab728b7366a0e13b50e60bf56fcf34 100644 (file)
@@ -2176,7 +2176,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_lower_eh
 
@@ -3295,8 +3295,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_exceptions != 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_exceptions != 0; }
+  unsigned int execute (function *) final override
     {
       refactor_eh_r (gimple_body (current_function_decl));
       return 0;
@@ -3497,8 +3497,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_exceptions != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_exceptions != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_lower_resx
 
@@ -3922,8 +3922,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun) { return fun->eh->region_tree != NULL; }
-  virtual unsigned int execute (function *);
+  bool gate (function *fun) final override
+  {
+    return fun->eh->region_tree != NULL;
+  }
+  unsigned int execute (function *) final override;
 
 }; // class pass_lower_eh_dispatch
 
@@ -4859,13 +4862,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_cleanup_eh (m_ctxt); }
-  virtual bool gate (function *fun)
+  opt_pass * clone () final override { return new pass_cleanup_eh (m_ctxt); }
+  bool gate (function *fun) final override
     {
       return fun->eh != NULL && fun->eh->region_tree != NULL;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_cleanup_eh
 
index 5f68703822c2694cd2125dc8c834d4ca86acf761..b5aa307f60d64dc3b6f32d8c1669ede9fc3db4b1 100644 (file)
@@ -838,13 +838,16 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* If the target supports TLS natively, we need do nothing here.  */
       return !targetm.have_tls;
     }
 
-  virtual unsigned int execute (function *) { return ipa_lower_emutls (); }
+  unsigned int execute (function *) final override
+  {
+    return ipa_lower_emutls ();
+  }
 
 }; // class pass_ipa_lower_emutls
 
index 2245b6bfd7c22d7743937e84f65c99bcc6852718..3c659f6b5a7fd110d89b361b1b9f33aee0b174ea 100644 (file)
@@ -3424,8 +3424,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override;
 
 }; // class pass_if_conversion
 
index 22c2e5b79822d64e1de314bc4a120b6c0307241b..46df57ae0e1a66a401f9be3fdd070f86706287af 100644 (file)
@@ -2403,13 +2403,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       /* Do nothing for funcions that was produced already in SSA form.  */
       return !(fun->curr_properties & PROP_ssa);
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_build_ssa
 
index 086b59ca2bee629eeb24e375f9466b539b6c7cf4..18b97fc3801a81f28c6f6bdb0e3cc9f099bb88e7 100644 (file)
@@ -3897,13 +3897,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return flag_tree_loop_distribution
        || flag_tree_loop_distribute_patterns;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_loop_distribution
 
index b96d5b86f27475180fb54f22998285a769109645..1faa481a8c92196f7219f2233d7965f8d8966913 100644 (file)
@@ -125,9 +125,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize > 0; }
+  bool gate (function *) final override { return optimize > 0; }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_nrv
 
@@ -344,7 +344,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_return_slot
 
index 12bc0868b7749cc05cdf3ca460a1b146f68aec04..4eb454a4a33b01c86826110191a90e069d799c5e 100644 (file)
@@ -2124,8 +2124,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_object_sizes (m_ctxt); }
-  virtual unsigned int execute (function *fun)
+  opt_pass * clone () final override { return new pass_object_sizes (m_ctxt); }
+  unsigned int execute (function *fun) final override
   {
     return object_sizes_execute (fun, false);
   }
@@ -2164,7 +2164,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *fun)
+  unsigned int execute (function *fun) final override
   {
     return object_sizes_execute (fun, true);
   }
index da1069683a3edd1c435074fb170668c6547eeb1d..2c3ef436ab77bcedbe0d3433708435203cf7c401 100644 (file)
@@ -4173,16 +4173,19 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     if (oacc_kernels_p)
       return flag_openacc;
     else
       return flag_tree_parallelize_loops > 1;
   }
-  virtual unsigned int execute (function *);
-  opt_pass * clone () { return new pass_parallelize_loops (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  unsigned int execute (function *) final override;
+  opt_pass * clone () final override
+  {
+    return new pass_parallelize_loops (m_ctxt);
+  }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       oacc_kernels_p = param;
index fb457250bbd36dca0171e39505046e0a5aca5063..5d923fba17094852f952e136fa5e2e171abafc02 100644 (file)
@@ -3514,8 +3514,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool
-  gate (function *)
+  bool
+  gate (function *) final override
   {
     if (flag_predictive_commoning != 0)
       return true;
@@ -3529,8 +3529,8 @@ public:
     return false;
   }
 
-  virtual unsigned int
-  execute (function *fun)
+  unsigned int
+  execute (function *fun) final override
   {
     bool allow_unroll_p = flag_predictive_commoning != 0;
     return run_tree_predictive_commoning (fun, allow_unroll_p);
index 97aab8801d0bc943d7512f08f23c76f270f4dae9..2beb49241f29ec88638e16678686b3a787b99672 100644 (file)
@@ -884,8 +884,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *) { return tree_profiling (); }
+  bool gate (function *) final override;
+  unsigned int execute (function *) final override { return tree_profiling (); }
 
 }; // class pass_ipa_tree_profile
 
index 081c51b58a4d6bf771bce94a9910bcb53f15d213..461c8e0b0f4055a043473cf3d7790d61de1077d0 100644 (file)
@@ -4743,8 +4743,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_intra_sra (); }
-  virtual unsigned int execute (function *) { return early_intra_sra (); }
+  bool gate (function *) final override { return gate_intra_sra (); }
+  unsigned int execute (function *) final override
+  {
+    return early_intra_sra ();
+  }
 
 }; // class pass_sra_early
 
@@ -4779,8 +4782,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_intra_sra (); }
-  virtual unsigned int execute (function *) { return late_intra_sra (); }
+  bool gate (function *) final override { return gate_intra_sra (); }
+  unsigned int execute (function *) final override { return late_intra_sra (); }
 
 }; // class pass_sra
 
index 58e0face2e7773e88c3b6d53f2209ea193b615a7..85c046078249ccffa9de11ffc298708a3e0c29c5 100644 (file)
@@ -2994,14 +2994,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_ccp (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override { return new pass_ccp (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       nonzero_p = param;
     }
-  virtual bool gate (function *) { return flag_tree_ccp != 0; }
-  virtual unsigned int execute (function *) { return do_ssa_ccp (nonzero_p); }
+  bool gate (function *) final override { return flag_tree_ccp != 0; }
+  unsigned int execute (function *) final override
+  {
+    return do_ssa_ccp (nonzero_p);
+  }
 
  private:
   /* Determines whether the pass instance records nonzero bits.  */
@@ -4202,8 +4205,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_fold_builtins (m_ctxt); }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_fold_builtins (m_ctxt); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_fold_builtins
 
@@ -4553,9 +4556,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_post_ipa_warn (m_ctxt); }
-  virtual bool gate (function *) { return warn_nonnull != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_post_ipa_warn (m_ctxt); }
+  bool gate (function *) final override { return warn_nonnull != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_fold_builtins
 
index 050a6d11434fd4fdcee6b3a7f063e742403d6a62..782ceb500cc25f943a4e60082a9ad2a48577da09 100644 (file)
@@ -642,9 +642,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_copy_prop (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_copy_prop != 0; }
-  virtual unsigned int execute (function *) { return execute_copy_prop (); }
+  opt_pass * clone () final override { return new pass_copy_prop (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_copy_prop != 0; }
+  unsigned int execute (function *) final override
+  {
+    return execute_copy_prop ();
+  }
 
 }; // class pass_copy_prop
 
index a6b284018d4e2f6b7af27367784e8e2bb83e45a5..5df64922594a74024e95c5921f232723db741ebb 100644 (file)
@@ -1974,9 +1974,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_dce (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_dce != 0; }
-  virtual unsigned int execute (function *) { return tree_ssa_dce (); }
+  opt_pass * clone () final override { return new pass_dce (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_dce != 0; }
+  unsigned int execute (function *) final override { return tree_ssa_dce (); }
 
 }; // class pass_dce
 
@@ -2011,14 +2011,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_cd_dce (m_ctxt); }
-  void set_pass_param (unsigned n, bool param)
+  opt_pass * clone () final override { return new pass_cd_dce (m_ctxt); }
+  void set_pass_param (unsigned n, bool param) final override
     {
       gcc_assert (n == 0);
       update_address_taken_p = param;
     }
-  virtual bool gate (function *) { return flag_tree_dce != 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_tree_dce != 0; }
+  unsigned int execute (function *) final override
     {
       return (tree_ssa_cd_dce ()
              | (update_address_taken_p ? TODO_update_address_taken : 0));
index 208b0a0705009a9f858f573b6dc567d533973e96..e282123b2d97ff85793a4b547ee9e88078ca5718 100644 (file)
@@ -728,14 +728,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_dominator (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override { return new pass_dominator (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       may_peel_loop_headers_p = param;
     }
-  virtual bool gate (function *) { return flag_tree_dom != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_tree_dom != 0; }
+  unsigned int execute (function *) final override;
 
  private:
   /* This flag is used to prevent loops from being peeled repeatedly in jump
index ea50de789b1ebe0917e1b3f4d44d7550c0c5dbcd..62efafe384debaceedb2f539c288f28bf17d555c 100644 (file)
@@ -1491,9 +1491,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_dse (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_dse != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_dse (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_dse != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_dse
 
index c387e84ad5965bc9b56d569eba7926711604df16..69567ab3275939e084a7ae2e6e73d72b824b9762 100644 (file)
@@ -3266,9 +3266,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_forwprop (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_forwprop; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_forwprop (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_forwprop; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_forwprop
 
index 88a9f062dcdf5f2806340df413fa269e3b9b9471..80c41c454890fb0243ab225bad113198fa4af8b7 100644 (file)
@@ -829,7 +829,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_tree_ifcombine
 
index 26d96c0c21ade565a9e90667745c8ad811ad9156..843a436f8c8ea42dd0b98ebabbf3503500f90b89 100644 (file)
@@ -311,12 +311,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_ch != 0; }
+  bool gate (function *) final override { return flag_tree_ch != 0; }
   
   /* Initialize and finalize loop structures, copying headers inbetween.  */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
-  opt_pass * clone () { return new pass_ch (m_ctxt); }
+  opt_pass * clone () final override { return new pass_ch (m_ctxt); }
 
 protected:
   /* ch_base method: */
@@ -347,14 +347,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
   {
     return flag_tree_ch != 0
           && (flag_tree_loop_vectorize != 0 || fun->has_force_vectorize_loops);
   }
   
   /* Just copy headers, no initialization/finalization of loop structures.  */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 protected:
   /* ch_base method: */
index bfd6126a4a583b165058ab99a92821b2b276025c..2ea815050d18b93422bc2add54bf7d6c4d85f9b1 100644 (file)
@@ -3600,9 +3600,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_lim (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_loop_im != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_lim (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_loop_im != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_lim
 
index 6a38b77ab7ac24e20e86c1517f49af4f73ee3b8c..766bffa0274898f313934044f3549a1b46d7383e 100644 (file)
@@ -1538,8 +1538,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_loop_ivcanon != 0; }
-  virtual unsigned int execute (function *fun);
+  bool gate (function *) final override { return flag_tree_loop_ivcanon != 0; }
+  unsigned int execute (function *fun) final override;
 
 }; // class pass_iv_canon
 
@@ -1585,7 +1585,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_complete_unroll
 
@@ -1643,8 +1643,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize >= 2; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return optimize >= 2; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_complete_unrolli
 
index aebd7c9206f02123e602ef6264e74c46c2fb64bc..8f190ae469bbbc71397f63727563efc72edb9bb6 100644 (file)
@@ -2069,8 +2069,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_prefetch_loop_arrays > 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override
+  {
+    return flag_prefetch_loop_arrays > 0;
+  }
+  unsigned int execute (function *) final override;
 
 }; // class pass_loop_prefetch
 
index b93ee4c87697b118f96ed63a121ecdadad908519..d61bad5ba47bbbabb6461b3b3b16a4f5c59853ba 100644 (file)
@@ -1724,8 +1724,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_split_loops != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_split_loops != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_loop_split
 
index 50b66c13038bf07bd42ff1662e84ff5267378992..afae9825eda56e289aa5216cc85c1c26f54bb3eb 100644 (file)
@@ -1614,8 +1614,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_unswitch_loops != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_unswitch_loops != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_tree_unswitch
 
index 73aa46627b42d4c647397de8e70b588d70314e30..1c058b08c2f3ed7b72b495e3681244fef17ea2f9 100644 (file)
@@ -67,9 +67,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_loop_optimize; }
+  bool gate (function *) final override { return flag_tree_loop_optimize; }
 
-  virtual unsigned int execute (function *fn);
+  unsigned int execute (function *fn) final override;
 }; // class pass_fix_loops
 
 unsigned int
@@ -134,7 +134,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fn) { return gate_loop (fn); }
+  bool gate (function *fn) final override { return gate_loop (fn); }
 
 }; // class pass_tree_loop
 
@@ -189,7 +189,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fn) { return gate_oacc_kernels (fn); }
+  bool gate (function *fn) final override { return gate_oacc_kernels (fn); }
 
 }; // class pass_oacc_kernels
 
@@ -226,7 +226,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
   {
     return (optimize
            && flag_openacc
@@ -303,7 +303,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fn) { return !gate_loop (fn); }
+  bool gate (function *fn) final override { return !gate_loop (fn); }
 
 }; // class pass_tree_no_loop
 
@@ -341,7 +341,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_tree_loop_init
 
@@ -395,8 +395,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_scev_cprop; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_tree_scev_cprop; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_scev_cprop
 
@@ -446,8 +446,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_ivopts != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_ivopts != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_iv_optimize
 
@@ -503,7 +503,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *) { return tree_ssa_loop_done (); }
+  unsigned int execute (function *) final override
+  {
+    return tree_ssa_loop_done ();
+  }
 
 }; // class pass_tree_loop_done
 
index ce1df01f629afa044fb7666ca73a9331ce268b51..fe9f37b4cd4ee9a2cb5f680820dac35aec0eb303 100644 (file)
@@ -920,8 +920,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return optimize && flag_reciprocal_math; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override
+  {
+    return optimize && flag_reciprocal_math;
+  }
+  unsigned int execute (function *) final override;
 
 }; // class pass_cse_reciprocals
 
@@ -2249,14 +2252,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* We no longer require either sincos or cexp, since powi expansion
         piggybacks on this pass.  */
       return optimize;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_cse_sincos
 
@@ -4892,12 +4895,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return flag_expensive_optimizations && optimize;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_optimize_widening_mul
 
index e61d9736937573d773acdf3e43a7c76074bfb2c7..7efcc0791bf5a5bd13e48db12a684f2e75b63db0 100644 (file)
@@ -3960,14 +3960,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_phiopt (m_ctxt); }
-  void set_pass_param (unsigned n, bool param)
+  opt_pass * clone () final override { return new pass_phiopt (m_ctxt); }
+  void set_pass_param (unsigned n, bool param) final override
     {
       gcc_assert (n == 0);
       early_p = param;
     }
-  virtual bool gate (function *) { return flag_ssa_phiopt; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_ssa_phiopt; }
+  unsigned int execute (function *) final override
     {
       return tree_ssa_phiopt_worker (false,
                                     !early_p ? gate_hoist_loads () : false,
@@ -4009,8 +4009,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_cselim; }
-  virtual unsigned int execute (function *) { return tree_ssa_cs_elim (); }
+  bool gate (function *) final override { return flag_tree_cselim; }
+  unsigned int execute (function *) final override
+  {
+    return tree_ssa_cs_elim ();
+  }
 
 }; // class pass_cselim
 
index 7bbfc8c002a765865d7490d3fc8fc69c97a923f0..965f1d1c4ebd727253c985f3bedca33f44863e89 100644 (file)
@@ -476,8 +476,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_phiprop; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return flag_tree_phiprop; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_phiprop
 
index 09a5e2055cab5d945f2dd9e43d88ada0ad906e9f..e029bd36da3e7981986b38393beac42d7bf3bc05 100644 (file)
@@ -4339,9 +4339,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     { return flag_tree_pre != 0 || flag_code_hoisting != 0; }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_pre
 
index 406523b5d2f808f07db656aac8779ec0f9e3d7a1..e13e2cb308d4b23e8a65a9c2dcc368d47f102749 100644 (file)
@@ -7132,15 +7132,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_reassoc (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override { return new pass_reassoc (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       insert_powi_p = param;
       bias_loop_carried_phi_ranks_p = !param;
     }
-  virtual bool gate (function *) { return flag_tree_reassoc != 0; }
-  virtual unsigned int execute (function *)
+  bool gate (function *) final override { return flag_tree_reassoc != 0; }
+  unsigned int execute (function *) final override
   {
     return execute_reassoc (insert_powi_p, bias_loop_carried_phi_ranks_p);
   }
index 776dccbbf5a08c5a292961bd5a80134e1edcd870..ee5b95c7af06f8b46e7898d25f9de90ddc17abd2 100644 (file)
@@ -8295,17 +8295,17 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_fre (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override { return new pass_fre (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       may_iterate = param;
     }
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return flag_tree_fre != 0 && (may_iterate || optimize > 1);
     }
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 private:
   bool may_iterate;
index bb50cbc8380b30dbad99d0ffa0c272004136bad1..2e744d6ae507d7c52f8c3671534be8040045e132 100644 (file)
@@ -828,10 +828,10 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_sink != 0; }
-  virtual unsigned int execute (function *);
-  opt_pass *clone (void) { return new pass_sink_code (m_ctxt); }
-  void set_pass_param (unsigned n, bool param)
+  bool gate (function *) final override { return flag_tree_sink != 0; }
+  unsigned int execute (function *) final override;
+  opt_pass *clone (void) final override { return new pass_sink_code (m_ctxt); }
+  void set_pass_param (unsigned n, bool param) final override
     {
       gcc_assert (n == 0);
       unsplit_edges = param;
index 1d4c0f78fbf7d0f27d27f39f395a0a36afeaf6f5..2cceba6f7afaf1abfa33e3da51764262dd1ac49f 100644 (file)
@@ -5962,8 +5962,8 @@ public:
     : gimple_opt_pass (pass_data_warn_printf, ctxt)
   {}
 
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override;
+  unsigned int execute (function *fun) final override
   {
     return printf_strlen_execute (fun, true);
   }
@@ -5999,10 +5999,10 @@ public:
     : gimple_opt_pass (pass_data_strlen, ctxt)
   {}
 
-  opt_pass * clone () { return new pass_strlen (m_ctxt); }
+  opt_pass * clone () final override { return new pass_strlen (m_ctxt); }
 
-  virtual bool gate (function *);
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override;
+  unsigned int execute (function *fun) final override
   {
     return printf_strlen_execute (fun, false);
   }
index 581bdcf565243a010ae12b750c196b72ab0cc4e3..dcf13d939bde40fedd17ce72b528773640bc789f 100644 (file)
@@ -8085,7 +8085,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_pta; }
+  bool gate (function *) final override { return flag_tree_pta; }
 
 }; // class pass_build_alias
 
@@ -8123,7 +8123,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_pta; }
+  bool gate (function *) final override { return flag_tree_pta; }
 
 }; // class pass_build_ealias
 
@@ -8737,7 +8737,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (optimize
              && flag_ipa_pta
@@ -8745,9 +8745,12 @@ public:
              && !seen_error ());
     }
 
-  opt_pass * clone () { return new pass_ipa_pta (m_ctxt); }
+  opt_pass * clone () final override { return new pass_ipa_pta (m_ctxt); }
 
-  virtual unsigned int execute (function *) { return ipa_pta_execute (); }
+  unsigned int execute (function *) final override
+  {
+    return ipa_pta_execute ();
+  }
 
 }; // class pass_ipa_pta
 
index aea7d69584f623f428a8c142b17ff624eb09119e..510f8319d8c78007229a7a02b8f8bf098d3ea7c8 100644 (file)
@@ -453,9 +453,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_uncprop (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_dom != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_uncprop (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_dom != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_uncprop
 
index f326f1775c0ab62b8d6ab38d5f696633a320a7ab..06a19821e1836214343c75fb99a96d7fa1c41742 100644 (file)
@@ -1320,9 +1320,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass *clone () { return new pass_late_warn_uninitialized (m_ctxt); }
-  virtual bool gate (function *) { return gate_warn_uninitialized (); }
-  virtual unsigned int execute (function *);
+  opt_pass *clone () final override
+  {
+    return new pass_late_warn_uninitialized (m_ctxt);
+  }
+  bool gate (function *) final override { return gate_warn_uninitialized (); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_late_warn_uninitialized
 
@@ -1462,8 +1465,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_warn_uninitialized (); }
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override { return gate_warn_uninitialized (); }
+  unsigned int execute (function *fun) final override
   {
     return execute_early_warn_uninitialized (fun);
   }
index 05536cd2f74bbdf0ea854488f9e9c5cd0b11bfc8..bc22ece636a119793adc051bfaa03e2ae9b26316 100644 (file)
@@ -920,7 +920,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_release_ssa_names
 
index 9038cd43aaa38bcb470a447b3c94a1d6a1d8a7c1..ed4c8d8c77584f385d667e8538e9363ca71b37f9 100644 (file)
@@ -1126,7 +1126,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       /* Always run this pass, in order to expand va_arg internal_fns.  We
         also need to do that if fun->stdarg == 0, because a va_arg may also
@@ -1135,7 +1135,7 @@ public:
       return true;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_stdarg
 
@@ -1185,12 +1185,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (cfun->curr_properties & PROP_gimple_lva) == 0;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_lower_vaarg
 
index 990f5e1c6d058e532f9bba508fd8cb064011b8fa..5291fb806b5854df7ef47e22461efe22fc206648 100644 (file)
@@ -2427,8 +2427,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return flag_tree_switch_conversion != 0; }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override
+  {
+    return flag_tree_switch_conversion != 0;
+  }
+  unsigned int execute (function *) final override;
 
 }; // class pass_convert_switch
 
@@ -2506,18 +2509,18 @@ public:
 
   static const pass_data data;
   opt_pass *
-  clone ()
+  clone () final override
   {
     return new pass_lower_switch<O0> (m_ctxt);
   }
 
-  virtual bool
-  gate (function *)
+  bool
+  gate (function *) final override
   {
     return !O0 || !optimize;
   }
 
-  virtual unsigned int execute (function *fun);
+  unsigned int execute (function *fun) final override;
 }; // class pass_lower_switch
 
 template <bool O0>
index 5a3466e5d53a4c95f6f954d24a664d6b9bde50ca..6745d57580b6e9815c3bbe398eedafc85e5ff13c 100644 (file)
@@ -1261,9 +1261,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_tail_recursion (m_ctxt); }
-  virtual bool gate (function *) { return gate_tail_calls (); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_tail_recursion (m_ctxt);
+  }
+  bool gate (function *) final override { return gate_tail_calls (); }
+  unsigned int execute (function *) final override
     {
       return tree_optimize_tail_calls_1 (false);
     }
@@ -1301,8 +1304,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return gate_tail_calls (); }
-  virtual unsigned int execute (function *) { return execute_tail_calls (); }
+  bool gate (function *) final override { return gate_tail_calls (); }
+  unsigned int execute (function *) final override
+  {
+    return execute_tail_calls ();
+  }
 
 }; // class pass_tail_calls
 
index 92aba5d4af61dd478ec3f1b94854e4ad84166774..350129555a0c71c0896c4f1003163f3b3557c11b 100644 (file)
@@ -2418,12 +2418,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       return !(fun->curr_properties & PROP_gimple_lvec);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return expand_vector_operations ();
     }
@@ -2462,8 +2462,11 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_lower_vector_ssa (m_ctxt); }
-  virtual unsigned int execute (function *)
+  opt_pass * clone () final override
+  {
+    return new pass_lower_vector_ssa (m_ctxt);
+  }
+  unsigned int execute (function *) final override
     {
       return expand_vector_operations ();
     }
index a63fa391273923c351c78d65e0e1fed6030fb510..53dc4520963094dc3d192faa5e28db87c5cc7a44 100644 (file)
@@ -1193,12 +1193,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *fun)
+  bool gate (function *fun) final override
     {
       return flag_tree_loop_vectorize || fun->has_force_vectorize_loops;
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_vectorize
 
@@ -1405,9 +1405,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_simduid_cleanup (m_ctxt); }
-  virtual bool gate (function *fun) { return fun->has_simduid_loops; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override
+  {
+    return new pass_simduid_cleanup (m_ctxt);
+  }
+  bool gate (function *fun) final override { return fun->has_simduid_loops; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_simduid_cleanup
 
@@ -1463,9 +1466,9 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_slp_vectorize (m_ctxt); }
-  virtual bool gate (function *) { return flag_tree_slp_vectorize != 0; }
-  virtual unsigned int execute (function *);
+  opt_pass * clone () final override { return new pass_slp_vectorize (m_ctxt); }
+  bool gate (function *) final override { return flag_tree_slp_vectorize != 0; }
+  unsigned int execute (function *) final override;
 
 }; // class pass_slp_vectorize
 
@@ -1696,12 +1699,15 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return flag_section_anchors && flag_tree_loop_vectorize;
     }
 
-  virtual unsigned int execute (function *) { return increase_alignment (); }
+  unsigned int execute (function *) final override
+  {
+    return increase_alignment ();
+  }
 
 }; // class pass_ipa_increase_alignment
 
index 30022dac1080f0f03549fdd5dbc2a018d5f9c6f4..ef7978da234a273f7ada181ad69b9ee13c147729 100644 (file)
@@ -4398,14 +4398,14 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_vrp (m_ctxt); }
-  void set_pass_param (unsigned int n, bool param)
+  opt_pass * clone () final override { return new pass_vrp (m_ctxt); }
+  void set_pass_param (unsigned int n, bool param) final override
     {
       gcc_assert (n == 0);
       warn_array_bounds_p = param;
     }
-  virtual bool gate (function *) { return flag_tree_vrp != 0; }
-  virtual unsigned int execute (function *fun)
+  bool gate (function *) final override { return flag_tree_vrp != 0; }
+  unsigned int execute (function *fun) final override
     {
       if ((my_pass == 1 && param_vrp1_mode == VRP_MODE_RANGER)
          || (my_pass == 2 && param_vrp2_mode == VRP_MODE_RANGER))
index 02e8ac7cf79c50ceda4203de1d47ae745ab30646..79d4582acd17f7552547c26604e841eba327fa83 100644 (file)
@@ -909,13 +909,13 @@ public:
   {}
 
   /* opt_pass methods: */
-  opt_pass * clone () { return new pass_tsan (m_ctxt); }
-  virtual bool gate (function *)
+  opt_pass * clone () final override { return new pass_tsan (m_ctxt); }
+  bool gate (function *) final override
 {
   return sanitize_flags_p (SANITIZE_THREAD);
 }
 
-  virtual unsigned int execute (function *) { return tsan_pass (); }
+  unsigned int execute (function *) final override { return tsan_pass (); }
 
 }; // class pass_tsan
 
@@ -950,12 +950,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (sanitize_flags_p (SANITIZE_THREAD) && !optimize);
     }
 
-  virtual unsigned int execute (function *) { return tsan_pass (); }
+  unsigned int execute (function *) final override { return tsan_pass (); }
 
 }; // class pass_tsan_O0
 
index b6c4301dfaf036f6f4a03a8df198c76a3c702b2d..e51d1e41bab04e075c65606ab6fc42b146cb4c51 100644 (file)
@@ -2348,7 +2348,7 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return sanitize_flags_p ((SANITIZE_NULL | SANITIZE_SI_OVERFLOW
                                | SANITIZE_BOOL | SANITIZE_ENUM
@@ -2360,7 +2360,7 @@ public:
                                | SANITIZE_BUILTIN));
     }
 
-  virtual unsigned int execute (function *);
+  unsigned int execute (function *) final override;
 
 }; // class pass_ubsan
 
index 7c3ad0a55bd54acefdb40026894df126c58197f3..235981d100f6fdef817412bf050b1befc1810075 100644 (file)
@@ -10592,12 +10592,12 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *)
+  bool gate (function *) final override
     {
       return (flag_var_tracking && !targetm.delay_vartrack);
     }
 
-  virtual unsigned int execute (function *)
+  unsigned int execute (function *) final override
     {
       return variable_tracking_main ();
     }
index 48f9987082eb2b230ce069d3d00fe33cf73ee75e..24894e7f10825c8e6a029b4f4f672da0f90ec68b 100644 (file)
@@ -818,8 +818,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return (flag_vtable_verify); }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return (flag_vtable_verify); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_vtable_verify
 
index a5874a98825c4db392afc86b31ec4f35e65bd89b..bd0ec94f1f47984a809a8eed4e2b1c0cc45da327 100644 (file)
@@ -323,8 +323,8 @@ public:
   {}
 
   /* opt_pass methods: */
-  virtual bool gate (function *) { return (optimize > 0 && flag_web); }
-  virtual unsigned int execute (function *);
+  bool gate (function *) final override { return (optimize > 0 && flag_web); }
+  unsigned int execute (function *) final override;
 
 }; // class pass_web