I've pushed the following 44 patches to the git branch
"dmalcolm/gimple-classes".

This is a work-in-progress towards making the rest of the
gimple_assign_* accessors require a gassign * (or a const gassign *).

Successfully bootstrapped&regrtested the combination of the 44
patches upon the branch on x86_64-unknown-linux-gnu (Fedora 20) -
same results relative to an unpatched control bootstrap of trunk's
r216746.

David Malcolm (44):
  Use gassign * rather than gimple in various places
  Make replace_call_with_call_and_fold work on a gcall *
  gimple-low.c: Use gcall * in a few places
  Use gcall * in more places
  More gcall *
  Yet more gcall *
  Add casting variants of various gimple_assign_*_p functions
  tree-ssa-forwprop.c: Use gassign * in various places
  auto-profile.c: Use gassign
  gimplify-me.c: Use gassign
  gimple-ssa-isolate-paths.c: Use gassign
  gimple-fold.c: Use gassign
  rewrite_to_defined_overflow takes a gassign *
  gimple-match-head.c: Use gassign
  graphite-sese-to-poly.c: Use gasssign
  tree-object-size.c: Use gassign
  tree-affine.c: Use gassign
  tree-call-cdce.c: Use gassign
  tree-data-ref.c: Use gassign
  tree-if-conv.c: Use gassign
  tree-eh.c: Use gassign
  tree-nested: Use gassign
  tree-ssa-alias.c: Use gassign
  tree-ssa-ccp.c: Use gassign
  tree-ssa-coalesce.c: Use gassign
  tree-ssa-copy.c: Use gassign
  tree-ssa-dce.c: Use gassign
  tree-ssa-dom.c: Use gassign
  tree-ssa-dse.c: Use gassign
  gimple-walk.c: Use gassign
  ipa-polymorphic-call.c: Use gassign
  Fix issues with gimple_assign_single_p and gimple_assign_load_p
  Use gassign within gimple_expr_type
  build_assign and build_type_cast take const gassign *
  gimple_assign_rhs_to_tree takes a const gassign *
  cfgexpand.c: Use gassign *
  ipa-split.c: Use gassign
  ipa-inline-analysis.c: Use gassign
  ipa-prop.c: Use gassign
  ipa-icf-gimple.c: Use gassign
  omp-low.c: Use gassign
  predict.c: Use gassign
  sese.c: Use gassign
  trans-mem.c: Use gassign

 gcc/ChangeLog.gimple-classes   | 648 +++++++++++++++++++++++++++++++++++++++++
 gcc/asan.c                     |  56 ++--
 gcc/auto-profile.c             |  15 +-
 gcc/cfgexpand.c                |  32 +-
 gcc/cfgexpand.h                |   2 +-
 gcc/cgraph.c                   |   2 +-
 gcc/cgraphunit.c               |   4 +-
 gcc/config/i386/i386.c         |   2 +-
 gcc/gimple-builder.c           |  11 +-
 gcc/gimple-builder.h           |  14 +-
 gcc/gimple-fold.c              | 217 +++++++-------
 gcc/gimple-fold.h              |   2 +-
 gcc/gimple-low.c               |  36 ++-
 gcc/gimple-match-head.c        |  31 +-
 gcc/gimple-ssa-isolate-paths.c |  12 +-
 gcc/gimple-walk.c              |  82 +++---
 gcc/gimple.c                   |  24 +-
 gcc/gimple.h                   | 109 ++++---
 gcc/gimplify-me.c              |  12 +-
 gcc/gimplify.c                 |   2 +-
 gcc/graphite-sese-to-poly.c    |  41 +--
 gcc/ipa-icf-gimple.c           |   7 +-
 gcc/ipa-icf-gimple.h           |   2 +-
 gcc/ipa-inline-analysis.c      |  56 ++--
 gcc/ipa-polymorphic-call.c     |  34 ++-
 gcc/ipa-prop.c                 |  90 +++---
 gcc/ipa-split.c                |  30 +-
 gcc/omp-low.c                  |  35 +--
 gcc/predict.c                  |  15 +-
 gcc/sese.c                     |   4 +-
 gcc/trans-mem.c                |  32 +-
 gcc/tree-affine.c              |   5 +-
 gcc/tree-call-cdce.c           |  11 +-
 gcc/tree-cfg.c                 |  13 +-
 gcc/tree-cfgcleanup.c          |   6 +-
 gcc/tree-cfgcleanup.h          |   2 +-
 gcc/tree-data-ref.c            |  11 +-
 gcc/tree-eh.c                  |   8 +-
 gcc/tree-emutls.c              |   2 +-
 gcc/tree-if-conv.c             |  49 ++--
 gcc/tree-inline.c              |  15 +-
 gcc/tree-loop-distribution.c   |   2 +-
 gcc/tree-nested.c              |   6 +-
 gcc/tree-nrv.c                 |  12 +-
 gcc/tree-object-size.c         |  45 +--
 gcc/tree-parloops.c            |   8 +-
 gcc/tree-scalar-evolution.c    |   7 +-
 gcc/tree-ssa-alias.c           |  34 ++-
 gcc/tree-ssa-ccp.c             |  39 +--
 gcc/tree-ssa-coalesce.c        |  15 +-
 gcc/tree-ssa-copy.c            |  26 +-
 gcc/tree-ssa-copyrename.c      |   6 +-
 gcc/tree-ssa-dce.c             |  32 +-
 gcc/tree-ssa-dom.c             |  84 +++---
 gcc/tree-ssa-dse.c             |  13 +-
 gcc/tree-ssa-forwprop.c        | 110 +++----
 gcc/tree-ssa-loop-im.c         |  14 +-
 gcc/tree-ssa-loop-niter.c      |   4 +-
 gcc/tree-ssa-math-opts.c       |  33 ++-
 gcc/tree-ssa-phiopt.c          |   3 +-
 gcc/tree-ssa-pre.c             |   2 +-
 gcc/tree-ssa-propagate.c       |   6 +-
 gcc/tree-ssa-reassoc.c         |   5 +-
 gcc/tree-ssa-strlen.c          |  22 +-
 gcc/tree-ssa.c                 |   2 +-
 gcc/tree-switch-conversion.c   |   4 +-
 gcc/tree-vect-data-refs.c      |   8 +-
 gcc/tree-vect-generic.c        |   4 +-
 gcc/tree-vect-loop-manip.c     |   4 +-
 gcc/tree-vect-loop.c           |   8 +-
 gcc/tree-vect-patterns.c       |  15 +-
 gcc/tree-vect-slp.c            |   7 +-
 gcc/tree-vect-stmts.c          |  15 +-
 gcc/tree-vrp.c                 |   4 +-
 gcc/tsan.c                     |  10 +-
 gcc/ubsan.c                    |   2 +-
 76 files changed, 1590 insertions(+), 802 deletions(-)

-- 
1.7.11.7

Reply via email to