This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 0/3] Improvements to switch expansion code
- From: marxin <mliska at suse dot cz>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 14 Aug 2018 10:53:36 +0200
- Subject: [PATCH 0/3] Improvements to switch expansion code
- Resent-user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1
Hi.
With my rapid simplification of balanced tree emission we regressed
on number of tests needed (PR 86847). Apart from that profile info
was missing (INV) for jump tables and bit tests. That's fixed in another
2 patches. I'm explaining details of the patches in corresponding emails.
Patch can bootstrap on ppc64le-redhat-linux and survives regression tests.
marxin (3):
Fix probabilities for jump table (PR tree-optimization/86702).
Fix probability for bit-tests.
Improve switch code emission for a balanced tree (PR
tree-optimization/86847).
gcc/testsuite/gcc.dg/tree-ssa/switch-2.c | 25 ++
gcc/testsuite/gcc.dg/tree-ssa/switch-3.c | 20 ++
gcc/testsuite/gcc.dg/tree-ssa/vrp105.c | 37 ---
gcc/tree-switch-conversion.c | 329 +++++++++++++++++++----
gcc/tree-switch-conversion.h | 47 +++-
5 files changed, 366 insertions(+), 92 deletions(-)
create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/switch-2.c
create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/switch-3.c
delete mode 100644 gcc/testsuite/gcc.dg/tree-ssa/vrp105.c
--
2.18.0