diff options
author | Richard Biener <rguenther@suse.de> | 2021-11-10 12:15:20 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2021-11-11 09:19:49 +0100 |
commit | a11afa7af8ae496a403be9f6dac9e72a27d59466 (patch) | |
tree | 52bb7be98e95276ddcb557d53eb051ebe15bfca8 /gcc/c/gimple-parser.c | |
parent | a97fdde627e64202940112009d45d17f85e4cc61 (diff) | |
download | gcc-a11afa7af8ae496a403be9f6dac9e72a27d59466.zip gcc-a11afa7af8ae496a403be9f6dac9e72a27d59466.tar.gz gcc-a11afa7af8ae496a403be9f6dac9e72a27d59466.tar.bz2 |
Apply TLC to control dependence compute
This makes the control dependence compute avoid a find_edge
and optimizes allocation by embedding the bitmap head into the
vector of control dependences instead of allocating all of them.
It also uses a local bitmap obstack.
The bitmap changes make it necessary to shuffle some includes.
2021-11-10 Richard Biener <rguenther@suse.de>
* cfganal.h (control_dependences::control_dependence_map):
Embed bitmap_head.
(control_dependences::m_bitmaps): New.
* cfganal.c (control_dependences::set_control_dependence_map_bit):
Adjust.
(control_dependences::clear_control_dependence_bitmap):
Likewise.
(control_dependences::find_control_dependence): Do not
find_edge for the abnormal edge test.
(control_dependences::control_dependences): Instead do not
add abnormal edges to the edge list. Adjust.
(control_dependences::~control_dependences): Likewise.
(control_dependences::get_edges_dependent_on): Likewise.
* function-tests.c: Include bitmap.h.
gcc/analyzer/
* supergraph.cc: Include bitmap.h.
gcc/c/
* gimple-parser.c: Shuffle bitmap.h include.
Diffstat (limited to 'gcc/c/gimple-parser.c')
-rw-r--r-- | gcc/c/gimple-parser.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/c/gimple-parser.c b/gcc/c/gimple-parser.c index f3d9935..32f22db 100644 --- a/gcc/c/gimple-parser.c +++ b/gcc/c/gimple-parser.c @@ -56,13 +56,13 @@ along with GCC; see the file COPYING3. If not see #include "internal-fn.h" #include "cfg.h" #include "cfghooks.h" +#include "bitmap.h" #include "cfganal.h" #include "tree-cfg.h" #include "gimple-iterator.h" #include "cfgloop.h" #include "tree-phinodes.h" #include "tree-into-ssa.h" -#include "bitmap.h" /* GIMPLE parser state. */ |