On 05/07/2015 03:38 PM, Richard Henderson wrote:
Using proper vectors instead of lists of trees.
---
  gcc/cfgexpand.c              | 614 ++++++++++++++++++++-----------------------
  gcc/config/cris/cris.c       |  88 +++----
  gcc/config/i386/i386.c       |  24 +-
  gcc/config/mn10300/mn10300.c |  20 +-
  gcc/config/rs6000/rs6000.c   |  17 +-
  gcc/config/visium/visium.c   |  21 +-
  gcc/config/vxworks.c         |   2 +-
  gcc/doc/tm.texi              |  18 +-
  gcc/doc/tm.texi.in           |   2 +-
  gcc/gimple.c                 |   2 +-
  gcc/hooks.c                  |   8 -
  gcc/hooks.h                  |   1 -
  gcc/incpath.c                |   1 +
  gcc/mode-switching.c         |   2 +-
  gcc/system.h                 |   1 +
  gcc/target.def               |  30 ++-
  16 files changed, 401 insertions(+), 450 deletions(-)
ChangeLog and the usual testing.

One less use of TREE_LIST, is goodness.

I'm going to assume the include header order juggling/additions were all necessary.

Presumably we don't have a symbolic return value from decode_reg_name. That'd be a good cleanup for someone.


Much of the cfgexpand bits were painful to read. I did my best, things look reasonable, but that's largely from reading the comments and scanning the relevant code -- trying to match up old behaviour and new behaviour across the board was tough. I realize this mess isn't of your making :-)

With the usual testing, this is fine.

jeff

Reply via email to