]> git.ipfire.org Git - thirdparty/gcc.git/commit
Remove builtin_unreachable in VRP
authorAndrew MacLeod <amacleod@redhat.com>
Mon, 31 Oct 2022 19:18:00 +0000 (15:18 -0400)
committerAndrew MacLeod <amacleod@redhat.com>
Tue, 1 Nov 2022 13:05:20 +0000 (09:05 -0400)
commit7b1cdca6d6d594a8a9d88062252212e145f2f4eb
tree9fe234c5b99e729daec61ecbc6e78199ea4f0324
parent592bbe3d7eb3cff656c731e84ad872719a4a9d16
Remove builtin_unreachable in VRP

Removal of __builtin_unreachable calls were handled in an inconsistent
way.  This removes then in the VRP pass, and sets the global range
appropriately.

* tree-vrp.cc (class remove_unreachable): New.
(remove_unreachable::maybe_register_block): New.
(remove_unreachable::remove_and_update_globals): New.
(rvrp_folder::rvrp_folder): Initialize m_unreachable.
(rvrp_folder::post_fold_bb): Maybe register unreachable block.
(rvrp_folder::m_unreachable): New member.
(execute_ranger_vrp): Add final_pass flag, remove unreachables.
gcc/tree-vrp.cc