On 9/29/2021 3:20 AM, Bernhard Reutner-Fischer wrote:
On Wed, 29 Sep 2021 10:10:00 +0200
Aldy Hernandez <al...@redhat.com> wrote:
Jeff has requested we slow down changes in the threading space while
we chased down regressions.
Sure. Take your time.
That being said, thank you for your suggestion. I am putting the
attached patch in my queue for testing.
LGTM but cannot approve it.
~hybrid_threader wouldn't want to free_dominance_info() would it?
But you certainly looked for such leaks.
thanks,
Aldy
On Wed, Sep 29, 2021 at 7:43 AM Bernhard Reutner-Fischer
<rep.dot....@gmail.com> wrote:
Aldy, ping?
On 25 September 2021 21:25:44 CEST, Bernhard Reutner-Fischer
<rep.dot....@gmail.com> wrote:
On Fri, 24 Sep 2021 17:46:53 +0200
Aldy Hernandez via Gcc-patches <gcc-patches@gcc.gnu.org> wrote:
+static unsigned int
+execute_vrp_threader (function *fun)
+{
+ hybrid_threader threader;
+ threader.thread_jumps (fun);
+ threader.thread_through_all_blocks ();
+ return 0;
+}
+
+namespace {
+
+const pass_data pass_data_vrp_threader =
+{
+ GIMPLE_PASS, /* type */
+ "vrp-thread", /* name */
+ OPTGROUP_NONE, /* optinfo_flags */
+ TV_TREE_VRP, /* tv_id */
+ PROP_ssa, /* properties_required */
+ 0, /* properties_provided */
+ 0, /* properties_destroyed */
+ 0, /* todo_flags_start */
+ ( TODO_cleanup_cfg | TODO_update_ssa ), /* todo_flags_finish */
+};
So shouldn't non-jumpy or flat code avoid the cleanup_cfg or
update_ssa iff neither the function nor anything else was threaded?
thanks,
0001-Avoid-CFG-updates-in-VRP-threader-if-nothing-changed.patch
From 34877c42f4442653bdc534d135f1f44f63175ce6 Mon Sep 17 00:00:00 2001
From: Aldy Hernandez <al...@redhat.com>
Date: Wed, 29 Sep 2021 10:02:12 +0200
Subject: [PATCH] Avoid CFG updates in VRP threader if nothing changed.
There is no need to update the CFG or SSAs if nothing has changed in VRP
threading.
gcc/ChangeLog:
* tree-vrp.c (thread_through_all_blocks): Return bool.
(execute_vrp_threader): Return TODO_* flags.
(pass_data_vrp_threader): Set todo_flags_finish to 0.
OK
jeff