summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-22 15:58:51 +0000
committeramacleod <amacleod@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-22 15:58:51 +0000
commitbc61cadb126ed366943812ee46f1e417a5952b5c (patch)
treec1a06f7be593807eca40bda5a923b1b7bb805648
parent61fa8ff2ca750c2447eddcb32a5e0e974aecc3a2 (diff)
downloadgcc-bc61cadb126ed366943812ee46f1e417a5952b5c.tar.gz
* gimple.h: Remove all includes.
(recalculate_side_effects): Move prototype to gimplify.h. * Makefile.in (PLUGIN_HEADERS): Add flattened gimple.h includes. * gengtype.c (open_base_files): Add gimple.h include list. * gimplify.h (recalculate_side_effects): Relocate prototype here. * gimple.c: Adjust include list. (recalculate_side_effects): Move to gimplify.c. * gimplify.c: Adjust include list. (recalculate_side_effects): Relocate from gimple.c. * alias.c: Add required include files removed from gimple.h. * asan.c: Likewise. * builtins.c: Likewise. * calls.c: Likewise. * cfgexpand.c: Likewise. * cfgloop.c: Likewise. * cfgloopmanip.c: Likewise. * cgraphbuild.c: Likewise. * cgraph.c: Likewise. * cgraphclones.c: Likewise. * cgraphunit.c: Likewise. * cilk-common.c: Likewise. * data-streamer.c: Likewise. * data-streamer-in.c: Likewise. * data-streamer-out.c: Likewise. * dse.c: Likewise. * dwarf2out.c: Likewise. * emit-rtl.c: Likewise. * except.c: Likewise. * expr.c: Likewise. * fold-const.c: Likewise. * function.c: Likewise. * gimple-builder.c: Likewise. * gimple-expr.c: Likewise. * gimple-fold.c: Likewise. * gimple-iterator.c: Likewise. * gimple-low.c: Likewise. * gimple-pretty-print.c: Likewise. * gimple-ssa-isolate-paths.c: Likewise. * gimple-ssa-strength-reduction.c: Likewise. * gimple-streamer-in.c: Likewise. * gimple-streamer-out.c: Likewise. * gimple-walk.c: Likewise. * gimplify-me.c: Likewise. * graphite-blocking.c: Likewise. * graphite.c: Likewise. * graphite-clast-to-gimple.c: Likewise. * graphite-dependences.c: Likewise. * graphite-interchange.c: Likewise. * graphite-optimize-isl.c: Likewise. * graphite-poly.c: Likewise. * graphite-scop-detection.c: Likewise. * graphite-sese-to-poly.c: Likewise. * internal-fn.c: Likewise. * ipa.c: Likewise. * ipa-cp.c: Likewise. * ipa-devirt.c: Likewise. * ipa-inline-analysis.c: Likewise. * ipa-inline.c: Likewise. * ipa-profile.c: Likewise. * ipa-prop.c: Likewise. * ipa-pure-const.c: Likewise. * ipa-reference.c: Likewise. * ipa-split.c: Likewise. * ipa-utils.c: Likewise. * langhooks.c: Likewise. * lto-cgraph.c: Likewise. * lto-compress.c: Likewise. * lto-opts.c: Likewise. * lto-section-in.c: Likewise. * lto-section-out.c: Likewise. * lto-streamer.c: Likewise. * lto-streamer-in.c: Likewise. * lto-streamer-out.c: Likewise. * omp-low.c: Likewise. * opts-global.c: Likewise. * passes.c: Likewise. * predict.c: Likewise. * profile.c: Likewise. * sese.c: Likewise. * stmt.c: Likewise. * stor-layout.c: Likewise. * symtab.c: Likewise. * targhooks.c: Likewise. * toplev.c: Likewise. * tracer.c: Likewise. * trans-mem.c: Likewise. * tree-affine.c: Likewise. * tree.c: Likewise. * tree-call-cdce.c: Likewise. * tree-cfg.c: Likewise. * tree-cfgcleanup.c: Likewise. * tree-chrec.c: Likewise. * tree-complex.c: Likewise. * tree-data-ref.c: Likewise. * tree-dfa.c: Likewise. * tree-eh.c: Likewise. * tree-emutls.c: Likewise. * tree-if-conv.c: Likewise. * tree-inline.c: Likewise. * tree-into-ssa.c: Likewise. * tree-loop-distribution.c: Likewise. * tree-nested.c: Likewise. * tree-nrv.c: Likewise. * tree-object-size.c: Likewise. * tree-outof-ssa.c: Likewise. * tree-parloops.c: Likewise. * tree-phinodes.c: Likewise. * tree-predcom.c: Likewise. * tree-pretty-print.c: Likewise. * tree-profile.c: Likewise. * tree-scalar-evolution.c: Likewise. * tree-sra.c: Likewise. * tree-ssa-address.c: Likewise. * tree-ssa-alias.c: Likewise. * tree-ssa.c: Likewise. * tree-ssa-ccp.c: Likewise. * tree-ssa-coalesce.c: Likewise. * tree-ssa-copy.c: Likewise. * tree-ssa-copyrename.c: Likewise. * tree-ssa-dce.c: Likewise. * tree-ssa-dom.c: Likewise. * tree-ssa-dse.c: Likewise. * tree-ssa-forwprop.c: Likewise. * tree-ssa-ifcombine.c: Likewise. * tree-ssa-live.c: Likewise. * tree-ssa-loop.c: Likewise. * tree-ssa-loop-ch.c: Likewise. * tree-ssa-loop-im.c: Likewise. * tree-ssa-loop-ivcanon.c: Likewise. * tree-ssa-loop-ivopts.c: Likewise. * tree-ssa-loop-manip.c: Likewise. * tree-ssa-loop-niter.c: Likewise. * tree-ssa-loop-prefetch.c: Likewise. * tree-ssa-loop-unswitch.c: Likewise. * tree-ssa-math-opts.c: Likewise. * tree-ssanames.c: Likewise. * tree-ssa-operands.c: Likewise. * tree-ssa-phiopt.c: Likewise. * tree-ssa-phiprop.c: Likewise. * tree-ssa-pre.c: Likewise. * tree-ssa-propagate.c: Likewise. * tree-ssa-reassoc.c: Likewise. * tree-ssa-sccvn.c: Likewise. * tree-ssa-sink.c: Likewise. * tree-ssa-strlen.c: Likewise. * tree-ssa-structalias.c: Likewise. * tree-ssa-tail-merge.c: Likewise. * tree-ssa-ter.c: Likewise. * tree-ssa-threadedge.c: Likewise. * tree-ssa-threadupdate.c: Likewise. * tree-ssa-uncprop.c: Likewise. * tree-ssa-uninit.c: Likewise. * tree-stdarg.c: Likewise. * tree-streamer.c: Likewise. * tree-streamer-in.c: Likewise. * tree-streamer-out.c: Likewise. * tree-switch-conversion.c: Likewise. * tree-tailcall.c: Likewise. * tree-vect-data-refs.c: Likewise. * tree-vect-generic.c: Likewise. * tree-vect-loop.c: Likewise. * tree-vect-loop-manip.c: Likewise. * tree-vectorizer.c: Likewise. * tree-vect-patterns.c: Likewise. * tree-vect-slp.c: Likewise. * tree-vect-stmts.c: Likewise. * tree-vrp.c: Likewise. * tsan.c: Likewise. * ubsan.c: Likewise. * value-prof.c: Likewise. * varpool.c: Likewise. * var-tracking.c: Likewise. * vtable-verify.c: Likewise. * ada/gcc-interface/trans.c: Add required include files from gimple.h. * c/c-typeck.c: Add required include files from gimple.h. * c-family/c-common.c: Add required include files from gimple.h. * c-family/c-gimplify.c: Likewise * c-family/cilk.c: Likewise * cp/class.c: Add required include files from gimple.h. * cp/cp-gimplify.c: Likewise * cp/decl2.c: Likewise * cp/init.c: Likewise * cp/optimize.c: Likewise * cp/pt.c: Likewise * cp/semantics.c: Likewise * cp/tree.c: Likewise * cp/typeck.c: Likewise * cp/vtable-class-hierarchy.c: Likewise * fortran/trans.c: Add required include files from gimple.h. * fortran/trans-expr.c: Likewise * fortran/trans-openmp.c: Likewise * go/gofrontend/expressions.cc: Add required include files from gimple.h. * go/gofrontend/gogo-tree.cc: Likewise * go/gofrontend/types.cc: Likewise * go/go-gcc.cc: Likewise * go/go-lang.c: Likewise * java/java-gimplify.c: Add required include files from gimple.h. * lto/lto.c: Add required include files from gimple.h. * lto/lto-lang.c: Likewise * lto/lto-object.c: Likewise * lto/lto-partition.c: Likewise * lto/lto-symtab.c: Likewise * objc/objc-act.c: Add required include files from gimple.h. * config/darwin.c: Add required include files removed from gimple.h. * config/aarch64/aarch64-builtins.c: Likewise. * config/aarch64/aarch64.c: Likewise. * config/alpha/alpha.c: Likewise. * config/i386/i386.c: Likewise. * config/i386/winnt.c: Likewise. * config/ia64/ia64.c: Likewise. * config/m32c/m32c.c: Likewise. * config/mep/mep.c: Likewise. * config/mips/mips.c: Likewise. * config/rs6000/rs6000.c: Likewise. * config/s390/s390.c: Likewise. * config/sh/sh.c: Likewise. * config/sparc/sparc.c: Likewise. * config/spu/spu.c: Likewise. * config/stormy16/stormy16.c: Likewise. * config/tilegx/tilegx.c: Likewise. * config/tilepro/tilepro.c: Likewise. * config/xtensa/xtensa.c: Likewise. * testsuite/gcc.dg/plugin/finish_unit_plugin.c: Add required include files removed from gimple.h. * testsuite/gcc.dg/plugin/ggcplug.c: Likewise. * testsuite/gcc.dg/plugin/one_time_plugin.c: Likewise. * testsuite/gcc.dg/plugin/selfassign.c: Likewise. * testsuite/gcc.dg/plugin/start_unit_plugin.c: Likewise. * testsuite/g++.dg/plugin/selfassign.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205272 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog195
-rw-r--r--gcc/Makefile.in4
-rw-r--r--gcc/ada/ChangeLog4
-rw-r--r--gcc/ada/gcc-interface/trans.c5
-rw-r--r--gcc/alias.c5
-rw-r--r--gcc/asan.c7
-rw-r--r--gcc/builtins.c6
-rw-r--r--gcc/c-family/ChangeLog6
-rw-r--r--gcc/c-family/c-common.c2
-rw-r--r--gcc/c-family/c-gimplify.c5
-rw-r--r--gcc/c-family/cilk.c3
-rw-r--r--gcc/c/ChangeLog4
-rw-r--r--gcc/c/c-typeck.c4
-rw-r--r--gcc/calls.c5
-rw-r--r--gcc/cfgexpand.c6
-rw-r--r--gcc/cfgloop.c7
-rw-r--r--gcc/cfgloopmanip.c4
-rw-r--r--gcc/cgraph.c6
-rw-r--r--gcc/cgraphbuild.c8
-rw-r--r--gcc/cgraphclones.c8
-rw-r--r--gcc/cgraphunit.c8
-rw-r--r--gcc/cilk-common.c1
-rw-r--r--gcc/config/aarch64/aarch64-builtins.c11
-rw-r--r--gcc/config/aarch64/aarch64.c10
-rw-r--r--gcc/config/alpha/alpha.c10
-rw-r--r--gcc/config/darwin.c10
-rw-r--r--gcc/config/i386/i386.c10
-rw-r--r--gcc/config/i386/winnt.c10
-rw-r--r--gcc/config/ia64/ia64.c9
-rw-r--r--gcc/config/m32c/m32c.c10
-rw-r--r--gcc/config/mep/mep.c10
-rw-r--r--gcc/config/mips/mips.c9
-rw-r--r--gcc/config/rs6000/rs6000.c10
-rw-r--r--gcc/config/s390/s390.c10
-rw-r--r--gcc/config/sh/sh.c8
-rw-r--r--gcc/config/sparc/sparc.c10
-rw-r--r--gcc/config/spu/spu.c8
-rw-r--r--gcc/config/stormy16/stormy16.c12
-rw-r--r--gcc/config/tilegx/tilegx.c11
-rw-r--r--gcc/config/tilepro/tilepro.c11
-rw-r--r--gcc/config/xtensa/xtensa.c8
-rw-r--r--gcc/cp/ChangeLog13
-rw-r--r--gcc/cp/class.c6
-rw-r--r--gcc/cp/cp-gimplify.c7
-rw-r--r--gcc/cp/decl2.c3
-rw-r--r--gcc/cp/init.c1
-rw-r--r--gcc/cp/optimize.c2
-rw-r--r--gcc/cp/pt.c1
-rw-r--r--gcc/cp/semantics.c5
-rw-r--r--gcc/cp/tree.c4
-rw-r--r--gcc/cp/typeck.c1
-rw-r--r--gcc/cp/vtable-class-hierarchy.c1
-rw-r--r--gcc/data-streamer-in.c5
-rw-r--r--gcc/data-streamer-out.c5
-rw-r--r--gcc/data-streamer.c5
-rw-r--r--gcc/dse.c5
-rw-r--r--gcc/dwarf2out.c4
-rw-r--r--gcc/emit-rtl.c6
-rw-r--r--gcc/except.c4
-rw-r--r--gcc/expr.c5
-rw-r--r--gcc/fold-const.c8
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/trans-expr.c1
-rw-r--r--gcc/fortran/trans-openmp.c2
-rw-r--r--gcc/fortran/trans.c1
-rw-r--r--gcc/function.c4
-rw-r--r--gcc/gengtype.c3
-rw-r--r--gcc/gimple-builder.c5
-rw-r--r--gcc/gimple-expr.c7
-rw-r--r--gcc/gimple-fold.c6
-rw-r--r--gcc/gimple-iterator.c6
-rw-r--r--gcc/gimple-low.c5
-rw-r--r--gcc/gimple-pretty-print.c6
-rw-r--r--gcc/gimple-ssa-isolate-paths.c4
-rw-r--r--gcc/gimple-ssa-strength-reduction.c10
-rw-r--r--gcc/gimple-streamer-in.c6
-rw-r--r--gcc/gimple-streamer-out.c6
-rw-r--r--gcc/gimple-walk.c5
-rw-r--r--gcc/gimple.c57
-rw-r--r--gcc/gimple.h13
-rw-r--r--gcc/gimplify-me.c6
-rw-r--r--gcc/gimplify.c60
-rw-r--r--gcc/gimplify.h1
-rw-r--r--gcc/go/ChangeLog5
-rw-r--r--gcc/go/go-gcc.cc3
-rw-r--r--gcc/go/go-lang.c4
-rw-r--r--gcc/graphite-blocking.c5
-rw-r--r--gcc/graphite-clast-to-gimple.c5
-rw-r--r--gcc/graphite-dependences.c5
-rw-r--r--gcc/graphite-interchange.c5
-rw-r--r--gcc/graphite-optimize-isl.c5
-rw-r--r--gcc/graphite-poly.c5
-rw-r--r--gcc/graphite-scop-detection.c5
-rw-r--r--gcc/graphite-sese-to-poly.c5
-rw-r--r--gcc/graphite.c5
-rw-r--r--gcc/internal-fn.c5
-rw-r--r--gcc/ipa-cp.c3
-rw-r--r--gcc/ipa-devirt.c5
-rw-r--r--gcc/ipa-inline-analysis.c6
-rw-r--r--gcc/ipa-inline.c6
-rw-r--r--gcc/ipa-profile.c5
-rw-r--r--gcc/ipa-prop.c8
-rw-r--r--gcc/ipa-pure-const.c8
-rw-r--r--gcc/ipa-reference.c7
-rw-r--r--gcc/ipa-split.c5
-rw-r--r--gcc/ipa-utils.c7
-rw-r--r--gcc/ipa.c5
-rw-r--r--gcc/java/ChangeLog4
-rw-r--r--gcc/java/java-gimplify.c5
-rw-r--r--gcc/langhooks.c2
-rw-r--r--gcc/lto-cgraph.c9
-rw-r--r--gcc/lto-compress.c5
-rw-r--r--gcc/lto-opts.c7
-rw-r--r--gcc/lto-section-in.c9
-rw-r--r--gcc/lto-section-out.c9
-rw-r--r--gcc/lto-streamer-in.c6
-rw-r--r--gcc/lto-streamer-out.c6
-rw-r--r--gcc/lto-streamer.c6
-rw-r--r--gcc/lto/ChangeLog8
-rw-r--r--gcc/lto/lto-lang.c6
-rw-r--r--gcc/lto/lto-object.c5
-rw-r--r--gcc/lto/lto-partition.c5
-rw-r--r--gcc/lto/lto-symtab.c6
-rw-r--r--gcc/lto/lto.c7
-rw-r--r--gcc/objc/ChangeLog4
-rw-r--r--gcc/objc/objc-act.c3
-rw-r--r--gcc/omp-low.c8
-rw-r--r--gcc/opts-global.c6
-rw-r--r--gcc/passes.c6
-rw-r--r--gcc/predict.c7
-rw-r--r--gcc/profile.c4
-rw-r--r--gcc/sese.c7
-rw-r--r--gcc/stmt.c8
-rw-r--r--gcc/stor-layout.c2
-rw-r--r--gcc/symtab.c6
-rw-r--r--gcc/targhooks.c5
-rw-r--r--gcc/testsuite/g++.dg/plugin/selfassign.c11
-rw-r--r--gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.c11
-rw-r--r--gcc/testsuite/gcc.dg/plugin/ggcplug.c11
-rw-r--r--gcc/testsuite/gcc.dg/plugin/one_time_plugin.c11
-rw-r--r--gcc/testsuite/gcc.dg/plugin/selfassign.c11
-rw-r--r--gcc/testsuite/gcc.dg/plugin/start_unit_plugin.c11
-rw-r--r--gcc/toplev.c6
-rw-r--r--gcc/tracer.c4
-rw-r--r--gcc/trans-mem.c6
-rw-r--r--gcc/tree-affine.c5
-rw-r--r--gcc/tree-call-cdce.c4
-rw-r--r--gcc/tree-cfg.c9
-rw-r--r--gcc/tree-cfgcleanup.c6
-rw-r--r--gcc/tree-chrec.c3
-rw-r--r--gcc/tree-complex.c6
-rw-r--r--gcc/tree-data-ref.c5
-rw-r--r--gcc/tree-dfa.c6
-rw-r--r--gcc/tree-eh.c7
-rw-r--r--gcc/tree-emutls.c5
-rw-r--r--gcc/tree-if-conv.c5
-rw-r--r--gcc/tree-inline.c8
-rw-r--r--gcc/tree-into-ssa.c6
-rw-r--r--gcc/tree-loop-distribution.c5
-rw-r--r--gcc/tree-nested.c7
-rw-r--r--gcc/tree-nrv.c4
-rw-r--r--gcc/tree-object-size.c6
-rw-r--r--gcc/tree-outof-ssa.c6
-rw-r--r--gcc/tree-parloops.c5
-rw-r--r--gcc/tree-phinodes.c5
-rw-r--r--gcc/tree-predcom.c7
-rw-r--r--gcc/tree-pretty-print.c3
-rw-r--r--gcc/tree-profile.c4
-rw-r--r--gcc/tree-scalar-evolution.c6
-rw-r--r--gcc/tree-sra.c7
-rw-r--r--gcc/tree-ssa-address.c5
-rw-r--r--gcc/tree-ssa-alias.c8
-rw-r--r--gcc/tree-ssa-ccp.c8
-rw-r--r--gcc/tree-ssa-coalesce.c7
-rw-r--r--gcc/tree-ssa-copy.c4
-rw-r--r--gcc/tree-ssa-copyrename.c6
-rw-r--r--gcc/tree-ssa-dce.c5
-rw-r--r--gcc/tree-ssa-dom.c6
-rw-r--r--gcc/tree-ssa-dse.c5
-rw-r--r--gcc/tree-ssa-forwprop.c6
-rw-r--r--gcc/tree-ssa-ifcombine.c5
-rw-r--r--gcc/tree-ssa-live.c5
-rw-r--r--gcc/tree-ssa-loop-ch.c4
-rw-r--r--gcc/tree-ssa-loop-im.c9
-rw-r--r--gcc/tree-ssa-loop-ivcanon.c6
-rw-r--r--gcc/tree-ssa-loop-ivopts.c10
-rw-r--r--gcc/tree-ssa-loop-manip.c4
-rw-r--r--gcc/tree-ssa-loop-niter.c6
-rw-r--r--gcc/tree-ssa-loop-prefetch.c4
-rw-r--r--gcc/tree-ssa-loop-unswitch.c4
-rw-r--r--gcc/tree-ssa-loop.c4
-rw-r--r--gcc/tree-ssa-math-opts.c7
-rw-r--r--gcc/tree-ssa-operands.c6
-rw-r--r--gcc/tree-ssa-phiopt.c7
-rw-r--r--gcc/tree-ssa-phiprop.c5
-rw-r--r--gcc/tree-ssa-pre.c8
-rw-r--r--gcc/tree-ssa-propagate.c7
-rw-r--r--gcc/tree-ssa-reassoc.c9
-rw-r--r--gcc/tree-ssa-sccvn.c8
-rw-r--r--gcc/tree-ssa-sink.c4
-rw-r--r--gcc/tree-ssa-strlen.c7
-rw-r--r--gcc/tree-ssa-structalias.c9
-rw-r--r--gcc/tree-ssa-tail-merge.c8
-rw-r--r--gcc/tree-ssa-ter.c5
-rw-r--r--gcc/tree-ssa-threadedge.c5
-rw-r--r--gcc/tree-ssa-threadupdate.c6
-rw-r--r--gcc/tree-ssa-uncprop.c5
-rw-r--r--gcc/tree-ssa-uninit.c4
-rw-r--r--gcc/tree-ssa.c6
-rw-r--r--gcc/tree-ssanames.c5
-rw-r--r--gcc/tree-stdarg.c5
-rw-r--r--gcc/tree-streamer-in.c5
-rw-r--r--gcc/tree-streamer-out.c5
-rw-r--r--gcc/tree-streamer.c5
-rw-r--r--gcc/tree-switch-conversion.c4
-rw-r--r--gcc/tree-tailcall.c4
-rw-r--r--gcc/tree-vect-data-refs.c6
-rw-r--r--gcc/tree-vect-generic.c7
-rw-r--r--gcc/tree-vect-loop-manip.c5
-rw-r--r--gcc/tree-vect-loop.c5
-rw-r--r--gcc/tree-vect-patterns.c6
-rw-r--r--gcc/tree-vect-slp.c5
-rw-r--r--gcc/tree-vect-stmts.c6
-rw-r--r--gcc/tree-vectorizer.c7
-rw-r--r--gcc/tree-vrp.c7
-rw-r--r--gcc/tree.c7
-rw-r--r--gcc/tsan.c4
-rw-r--r--gcc/ubsan.c4
-rw-r--r--gcc/value-prof.c7
-rw-r--r--gcc/var-tracking.c7
-rw-r--r--gcc/varpool.c3
-rw-r--r--gcc/vtable-verify.c4
232 files changed, 1425 insertions, 256 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c1320a5807b..cd1fbc52dbb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,198 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * gimple.h: Remove all includes.
+ (recalculate_side_effects): Move prototype to gimplify.h.
+ * Makefile.in (PLUGIN_HEADERS): Add flattened gimple.h includes.
+ * gengtype.c (open_base_files): Add gimple.h include list.
+ * gimplify.h (recalculate_side_effects): Relocate prototype here.
+ * gimple.c: Adjust include list.
+ (recalculate_side_effects): Move to gimplify.c.
+ * gimplify.c: Adjust include list.
+ (recalculate_side_effects): Relocate from gimple.c.
+ * alias.c: Add required include files removed from gimple.h.
+ * asan.c: Likewise.
+ * builtins.c: Likewise.
+ * calls.c: Likewise.
+ * cfgexpand.c: Likewise.
+ * cfgloop.c: Likewise.
+ * cfgloopmanip.c: Likewise.
+ * cgraphbuild.c: Likewise.
+ * cgraph.c: Likewise.
+ * cgraphclones.c: Likewise.
+ * cgraphunit.c: Likewise.
+ * cilk-common.c: Likewise.
+ * data-streamer.c: Likewise.
+ * data-streamer-in.c: Likewise.
+ * data-streamer-out.c: Likewise.
+ * dse.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * except.c: Likewise.
+ * expr.c: Likewise.
+ * fold-const.c: Likewise.
+ * function.c: Likewise.
+ * gimple-builder.c: Likewise.
+ * gimple-expr.c: Likewise.
+ * gimple-fold.c: Likewise.
+ * gimple-iterator.c: Likewise.
+ * gimple-low.c: Likewise.
+ * gimple-pretty-print.c: Likewise.
+ * gimple-ssa-isolate-paths.c: Likewise.
+ * gimple-ssa-strength-reduction.c: Likewise.
+ * gimple-streamer-in.c: Likewise.
+ * gimple-streamer-out.c: Likewise.
+ * gimple-walk.c: Likewise.
+ * gimplify-me.c: Likewise.
+ * graphite-blocking.c: Likewise.
+ * graphite.c: Likewise.
+ * graphite-clast-to-gimple.c: Likewise.
+ * graphite-dependences.c: Likewise.
+ * graphite-interchange.c: Likewise.
+ * graphite-optimize-isl.c: Likewise.
+ * graphite-poly.c: Likewise.
+ * graphite-scop-detection.c: Likewise.
+ * graphite-sese-to-poly.c: Likewise.
+ * internal-fn.c: Likewise.
+ * ipa.c: Likewise.
+ * ipa-cp.c: Likewise.
+ * ipa-devirt.c: Likewise.
+ * ipa-inline-analysis.c: Likewise.
+ * ipa-inline.c: Likewise.
+ * ipa-profile.c: Likewise.
+ * ipa-prop.c: Likewise.
+ * ipa-pure-const.c: Likewise.
+ * ipa-reference.c: Likewise.
+ * ipa-split.c: Likewise.
+ * ipa-utils.c: Likewise.
+ * langhooks.c: Likewise.
+ * lto-cgraph.c: Likewise.
+ * lto-compress.c: Likewise.
+ * lto-opts.c: Likewise.
+ * lto-section-in.c: Likewise.
+ * lto-section-out.c: Likewise.
+ * lto-streamer.c: Likewise.
+ * lto-streamer-in.c: Likewise.
+ * lto-streamer-out.c: Likewise.
+ * omp-low.c: Likewise.
+ * opts-global.c: Likewise.
+ * passes.c: Likewise.
+ * predict.c: Likewise.
+ * profile.c: Likewise.
+ * sese.c: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * symtab.c: Likewise.
+ * targhooks.c: Likewise.
+ * toplev.c: Likewise.
+ * tracer.c: Likewise.
+ * trans-mem.c: Likewise.
+ * tree-affine.c: Likewise.
+ * tree.c: Likewise.
+ * tree-call-cdce.c: Likewise.
+ * tree-cfg.c: Likewise.
+ * tree-cfgcleanup.c: Likewise.
+ * tree-chrec.c: Likewise.
+ * tree-complex.c: Likewise.
+ * tree-data-ref.c: Likewise.
+ * tree-dfa.c: Likewise.
+ * tree-eh.c: Likewise.
+ * tree-emutls.c: Likewise.
+ * tree-if-conv.c: Likewise.
+ * tree-inline.c: Likewise.
+ * tree-into-ssa.c: Likewise.
+ * tree-loop-distribution.c: Likewise.
+ * tree-nested.c: Likewise.
+ * tree-nrv.c: Likewise.
+ * tree-object-size.c: Likewise.
+ * tree-outof-ssa.c: Likewise.
+ * tree-parloops.c: Likewise.
+ * tree-phinodes.c: Likewise.
+ * tree-predcom.c: Likewise.
+ * tree-pretty-print.c: Likewise.
+ * tree-profile.c: Likewise.
+ * tree-scalar-evolution.c: Likewise.
+ * tree-sra.c: Likewise.
+ * tree-ssa-address.c: Likewise.
+ * tree-ssa-alias.c: Likewise.
+ * tree-ssa.c: Likewise.
+ * tree-ssa-ccp.c: Likewise.
+ * tree-ssa-coalesce.c: Likewise.
+ * tree-ssa-copy.c: Likewise.
+ * tree-ssa-copyrename.c: Likewise.
+ * tree-ssa-dce.c: Likewise.
+ * tree-ssa-dom.c: Likewise.
+ * tree-ssa-dse.c: Likewise.
+ * tree-ssa-forwprop.c: Likewise.
+ * tree-ssa-ifcombine.c: Likewise.
+ * tree-ssa-live.c: Likewise.
+ * tree-ssa-loop.c: Likewise.
+ * tree-ssa-loop-ch.c: Likewise.
+ * tree-ssa-loop-im.c: Likewise.
+ * tree-ssa-loop-ivcanon.c: Likewise.
+ * tree-ssa-loop-ivopts.c: Likewise.
+ * tree-ssa-loop-manip.c: Likewise.
+ * tree-ssa-loop-niter.c: Likewise.
+ * tree-ssa-loop-prefetch.c: Likewise.
+ * tree-ssa-loop-unswitch.c: Likewise.
+ * tree-ssa-math-opts.c: Likewise.
+ * tree-ssanames.c: Likewise.
+ * tree-ssa-operands.c: Likewise.
+ * tree-ssa-phiopt.c: Likewise.
+ * tree-ssa-phiprop.c: Likewise.
+ * tree-ssa-pre.c: Likewise.
+ * tree-ssa-propagate.c: Likewise.
+ * tree-ssa-reassoc.c: Likewise.
+ * tree-ssa-sccvn.c: Likewise.
+ * tree-ssa-sink.c: Likewise.
+ * tree-ssa-strlen.c: Likewise.
+ * tree-ssa-structalias.c: Likewise.
+ * tree-ssa-tail-merge.c: Likewise.
+ * tree-ssa-ter.c: Likewise.
+ * tree-ssa-threadedge.c: Likewise.
+ * tree-ssa-threadupdate.c: Likewise.
+ * tree-ssa-uncprop.c: Likewise.
+ * tree-ssa-uninit.c: Likewise.
+ * tree-stdarg.c: Likewise.
+ * tree-streamer.c: Likewise.
+ * tree-streamer-in.c: Likewise.
+ * tree-streamer-out.c: Likewise.
+ * tree-switch-conversion.c: Likewise.
+ * tree-tailcall.c: Likewise.
+ * tree-vect-data-refs.c: Likewise.
+ * tree-vect-generic.c: Likewise.
+ * tree-vect-loop.c: Likewise.
+ * tree-vect-loop-manip.c: Likewise.
+ * tree-vectorizer.c: Likewise.
+ * tree-vect-patterns.c: Likewise.
+ * tree-vect-slp.c: Likewise.
+ * tree-vect-stmts.c: Likewise.
+ * tree-vrp.c: Likewise.
+ * tsan.c: Likewise.
+ * ubsan.c: Likewise.
+ * value-prof.c: Likewise.
+ * varpool.c: Likewise.
+ * var-tracking.c: Likewise.
+ * vtable-verify.c: Likewise.
+ * config/darwin.c: Likewise.
+ * config/aarch64/aarch64-builtins.c: Likewise.
+ * config/aarch64/aarch64.c: Likewise.
+ * config/alpha/alpha.c: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/ia64/ia64.c: Likewise.
+ * config/m32c/m32c.c: Likewise.
+ * config/mep/mep.c: Likewise.
+ * config/mips/mips.c: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/s390/s390.c: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/spu/spu.c: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/tilegx/tilegx.c: Likewise.
+ * config/tilepro/tilepro.c: Likewise.
+ * config/xtensa/xtensa.c: Likewise.
+
2013-11-22 Richard Earnshaw <rearnsha@arm.com>
PR target/59216
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 34e07a0d075..4d683a0749c 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -3103,7 +3103,9 @@ installdirs:
$(mkinstalldirs) $(DESTDIR)$(man7dir)
PLUGIN_HEADERS = $(TREE_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- toplev.h $(DIAGNOSTIC_CORE_H) $(BASIC_BLOCK_H) $(GIMPLE_H) $(TREE_PASS_H) $(GCC_PLUGIN_H) \
+ toplev.h $(DIAGNOSTIC_CORE_H) $(BASIC_BLOCK_H) pointer-set.h $(HASH_TABLE_H) \
+ tree-ssa-alias.h $(INTERNAL_FN_H) gimple-fold.h tree-eh.h gimple-expr.h \
+ gimple.h is-a.h $(TREE_PASS_H) $(GCC_PLUGIN_H) \
$(GGC_H) $(TREE_DUMP_H) $(PRETTY_PRINT_H) $(OPTS_H) $(PARAMS_H) \
$(tm_file_list) $(tm_include_list) $(tm_p_file_list) $(tm_p_include_list) \
$(host_xm_file_list) $(host_xm_include_list) $(xm_include_list) \
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 41b129c6be2..12737c9431f 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * gcc-interface/trans.c: Add required include files from gimple.h.
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* gcc-interface/utils2.c (build_call_raise): Remove use of
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index 53e66780f84..2266a5b119b 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -33,13 +33,12 @@
#include "stmt.h"
#include "varasm.h"
#include "flags.h"
-#include "ggc.h"
#include "output.h"
#include "libfuncs.h" /* For set_stack_check_libfunc. */
#include "tree-iterator.h"
-#include "gimple.h"
-#include "gimplify.h"
#include "pointer-set.h"
+#include "gimple-expr.h"
+#include "gimplify.h"
#include "bitmap.h"
#include "cgraph.h"
#include "diagnostic.h"
diff --git a/gcc/alias.c b/gcc/alias.c
index daa667c49d9..6a73b0945ae 100644
--- a/gcc/alias.c
+++ b/gcc/alias.c
@@ -32,12 +32,10 @@ along with GCC; see the file COPYING3. If not see
#include "emit-rtl.h"
#include "regs.h"
#include "hard-reg-set.h"
-#include "basic-block.h"
#include "flags.h"
#include "diagnostic-core.h"
#include "cselib.h"
#include "splay-tree.h"
-#include "ggc.h"
#include "langhooks.h"
#include "timevar.h"
#include "dumpfile.h"
@@ -45,6 +43,9 @@ along with GCC; see the file COPYING3. If not see
#include "df.h"
#include "tree-ssa-alias.h"
#include "pointer-set.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
diff --git a/gcc/asan.c b/gcc/asan.c
index d44aa636c55..f68b17302bd 100644
--- a/gcc/asan.c
+++ b/gcc/asan.c
@@ -23,6 +23,12 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "hash-table.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -42,7 +48,6 @@ along with GCC; see the file COPYING3. If not see
#include "output.h"
#include "tm_p.h"
#include "langhooks.h"
-#include "hash-table.h"
#include "alloc-pool.h"
#include "cfgloop.h"
#include "gimple-builder.h"
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 280387f38d0..5f657aed1d4 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -30,6 +30,11 @@ along with GCC; see the file COPYING3. If not see
#include "varasm.h"
#include "tree-object-size.h"
#include "realmpfr.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "flags.h"
#include "regs.h"
@@ -47,7 +52,6 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "target.h"
#include "langhooks.h"
-#include "basic-block.h"
#include "tree-ssanames.h"
#include "tree-dfa.h"
#include "value-prof.h"
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 40415847d87..358ab47f785 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,9 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * c-common.c: Add required include files from gimple.h.
+ * c-gimplify.c: Likewise
+ * cilk.c: Likewise
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* c-common.c (unsafe_conversion_p): Remove use of
diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c
index 1ceaeb51d7d..60b069cdb69 100644
--- a/gcc/c-family/c-common.c
+++ b/gcc/c-family/c-common.c
@@ -32,7 +32,6 @@ along with GCC; see the file COPYING3. If not see
#include "trans-mem.h"
#include "flags.h"
#include "c-pragma.h"
-#include "ggc.h"
#include "c-common.h"
#include "c-objc.h"
#include "tm_p.h"
@@ -49,7 +48,6 @@ along with GCC; see the file COPYING3. If not see
#include "opts.h"
#include "cgraph.h"
#include "target-def.h"
-#include "gimple.h"
#include "gimplify.h"
cpp_reader *parse_in; /* Declared in c-pragma.h. */
diff --git a/gcc/c-family/c-gimplify.c b/gcc/c-family/c-gimplify.c
index d3c304e1137..d047c65b4ee 100644
--- a/gcc/c-family/c-gimplify.c
+++ b/gcc/c-family/c-gimplify.c
@@ -29,6 +29,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "c-common.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "tree-inline.h"
diff --git a/gcc/c-family/cilk.c b/gcc/c-family/cilk.c
index 894a35270c5..c85b5f2a7c9 100644
--- a/gcc/c-family/cilk.c
+++ b/gcc/c-family/cilk.c
@@ -27,7 +27,8 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "calls.h"
#include "langhooks.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "gimple-expr.h"
#include "gimplify.h"
#include "tree-iterator.h"
#include "tree-inline.h"
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 7dab092f310..333aa11d7f2 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * c-typeck.c: Add required include files from gimple.h.
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* c-decl.c (define_label, shadow_tag_warned)
diff --git a/gcc/c/c-typeck.c b/gcc/c/c-typeck.c
index 1ae75fb998d..0c9c8c855b2 100644
--- a/gcc/c/c-typeck.c
+++ b/gcc/c/c-typeck.c
@@ -40,7 +40,9 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "tree-iterator.h"
#include "bitmap.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "gimple-expr.h"
#include "gimplify.h"
#include "tree-inline.h"
#include "omp-low.h"
diff --git a/gcc/calls.c b/gcc/calls.c
index 726ba23c3fc..aaba8b983a7 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -27,6 +27,11 @@ along with GCC; see the file COPYING3. If not see
#include "varasm.h"
#include "stringpool.h"
#include "attribs.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "flags.h"
#include "expr.h"
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index d431c8dea5e..207f8767573 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -35,6 +35,12 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "langhooks.h"
#include "bitmap.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/cfgloop.c b/gcc/cfgloop.c
index 09029c9ac85..0b12e73810b 100644
--- a/gcc/cfgloop.c
+++ b/gcc/cfgloop.c
@@ -28,11 +28,14 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "flags.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
-#include "pointer-set.h"
-#include "ggc.h"
#include "dumpfile.h"
static void flow_loops_cfg_dump (FILE *);
diff --git a/gcc/cfgloopmanip.c b/gcc/cfgloopmanip.c
index 6baa15afade..7a6b20172f4 100644
--- a/gcc/cfgloopmanip.c
+++ b/gcc/cfgloopmanip.c
@@ -25,6 +25,10 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "cfgloop.h"
#include "tree.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 009a165cdfa..1b1e25a1077 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -36,12 +36,14 @@ along with GCC; see the file COPYING3. If not see
#include "hashtab.h"
#include "toplev.h"
#include "flags.h"
-#include "ggc.h"
#include "debug.h"
#include "target.h"
-#include "basic-block.h"
#include "cgraph.h"
#include "intl.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "timevar.h"
diff --git a/gcc/cgraphbuild.c b/gcc/cgraphbuild.c
index 21f6ebe8d09..b6cafffac8d 100644
--- a/gcc/cgraphbuild.c
+++ b/gcc/cgraphbuild.c
@@ -23,11 +23,17 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "intl.h"
#include "tree-pass.h"
#include "ipa-utils.h"
diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c
index 795a321ae57..90ef90183b4 100644
--- a/gcc/cgraphclones.c
+++ b/gcc/cgraphclones.c
@@ -73,15 +73,19 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "function.h"
#include "emit-rtl.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "bitmap.h"
#include "tree-cfg.h"
#include "tree-inline.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "toplev.h"
#include "flags.h"
-#include "ggc.h"
#include "debug.h"
#include "target.h"
#include "diagnostic.h"
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index b10d75531b0..2cbed673212 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -167,6 +167,12 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "output.h"
#include "rtl.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -177,10 +183,8 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa.h"
#include "tree-inline.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "toplev.h"
#include "flags.h"
-#include "ggc.h"
#include "debug.h"
#include "target.h"
#include "diagnostic.h"
diff --git a/gcc/cilk-common.c b/gcc/cilk-common.c
index bdea617a2e8..54096676343 100644
--- a/gcc/cilk-common.c
+++ b/gcc/cilk-common.c
@@ -31,7 +31,6 @@ along with GCC; see the file COPYING3. If not see
#include "optabs.h"
#include "recog.h"
#include "tree-iterator.h"
-#include "gimple.h"
#include "gimplify.h"
#include "cilk.h"
diff --git a/gcc/config/aarch64/aarch64-builtins.c b/gcc/config/aarch64/aarch64-builtins.c
index fec7b222529..f4d23e713a6 100644
--- a/gcc/config/aarch64/aarch64-builtins.c
+++ b/gcc/config/aarch64/aarch64-builtins.c
@@ -33,6 +33,17 @@
#include "langhooks.h"
#include "diagnostic-core.h"
#include "optabs.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index aad9a298761..c85947a6cd8 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -46,6 +46,16 @@
#include "recog.h"
#include "langhooks.h"
#include "diagnostic-core.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "optabs.h"
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index c55835e7fe1..4c55c16197b 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -51,6 +51,16 @@ along with GCC; see the file COPYING3. If not see
#include "debug.h"
#include "langhooks.h"
#include "splay-tree.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-ssa.h"
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index 761576df565..ea056a9ab9d 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -48,6 +48,16 @@ along with GCC; see the file COPYING3. If not see
#include "df.h"
#include "debug.h"
#include "obstack.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "lto-streamer.h"
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 459281ea7a2..3f967e58efe 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -52,6 +52,16 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "reload.h"
#include "cgraph.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "dwarf2.h"
diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c
index 2c1677eec88..11dfea2e8e8 100644
--- a/gcc/config/i386/winnt.c
+++ b/gcc/config/i386/winnt.c
@@ -37,6 +37,16 @@ along with GCC; see the file COPYING3. If not see
#include "ggc.h"
#include "target.h"
#include "except.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "lto-streamer.h"
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 71bc666b685..df4a4b02d4c 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -53,6 +53,15 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "hash-table.h"
#include "langhooks.h"
+#include "pointer-set.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "intl.h"
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index ec30b8d7f9b..a75b43fd3e6 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -48,6 +48,16 @@
#include "target-def.h"
#include "tm_p.h"
#include "langhooks.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "df.h"
#include "tm-constrs.h"
diff --git a/gcc/config/mep/mep.c b/gcc/config/mep/mep.c
index 6ce6c530077..22a093e6ab7 100644
--- a/gcc/config/mep/mep.c
+++ b/gcc/config/mep/mep.c
@@ -51,6 +51,16 @@ along with GCC; see the file COPYING3. If not see
#include "target-def.h"
#include "langhooks.h"
#include "df.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "opts.h"
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 0aeb35aa6d6..36ba6df7a4c 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -54,6 +54,15 @@ along with GCC; see the file COPYING3. If not see
#include "common/common-target.h"
#include "langhooks.h"
#include "sched-int.h"
+#include "pointer-set.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "bitmap.h"
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index add91c9f055..98f771b1e5d 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -56,6 +56,16 @@
#include "reload.h"
#include "cfgloop.h"
#include "sched-int.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 62d162ab087..a435b2dcbdc 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -52,6 +52,16 @@ along with GCC; see the file COPYING3. If not see
#include "debug.h"
#include "langhooks.h"
#include "optabs.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "df.h"
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 6981ab6229a..2d011899edf 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -52,6 +52,14 @@ along with GCC; see the file COPYING3. If not see
#include "sched-int.h"
#include "params.h"
#include "ggc.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "cfgloop.h"
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index 8bdc9bb6bc6..983f2fab726 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -50,6 +50,16 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "target-def.h"
#include "common/common-target.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "langhooks.h"
diff --git a/gcc/config/spu/spu.c b/gcc/config/spu/spu.c
index 315f1b3617f..5b8aef179c8 100644
--- a/gcc/config/spu/spu.c
+++ b/gcc/config/spu/spu.c
@@ -49,6 +49,14 @@
#include "sched-int.h"
#include "params.h"
#include "machmode.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "tm-constrs.h"
diff --git a/gcc/config/stormy16/stormy16.c b/gcc/config/stormy16/stormy16.c
index d5a1fc6ad86..941595e1cca 100644
--- a/gcc/config/stormy16/stormy16.c
+++ b/gcc/config/stormy16/stormy16.c
@@ -47,11 +47,21 @@
#include "target-def.h"
#include "tm_p.h"
#include "langhooks.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "df.h"
#include "reload.h"
-#include "ggc.h"
static rtx emit_addhi3_postreload (rtx, rtx, rtx);
static void xstormy16_asm_out_constructor (rtx, int);
diff --git a/gcc/config/tilegx/tilegx.c b/gcc/config/tilegx/tilegx.c
index 809beefa305..c2f9e070a29 100644
--- a/gcc/config/tilegx/tilegx.c
+++ b/gcc/config/tilegx/tilegx.c
@@ -40,6 +40,17 @@
#include "dwarf2.h"
#include "timevar.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "stringpool.h"
#include "stor-layout.h"
diff --git a/gcc/config/tilepro/tilepro.c b/gcc/config/tilepro/tilepro.c
index 9fe1b104f57..31bc4908965 100644
--- a/gcc/config/tilepro/tilepro.c
+++ b/gcc/config/tilepro/tilepro.c
@@ -41,6 +41,17 @@
#include "dwarf2.h"
#include "timevar.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "stringpool.h"
#include "stor-layout.h"
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index 9e6bb23818f..4564290acb2 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -50,6 +50,14 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "target-def.h"
#include "langhooks.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "df.h"
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index ebff99b1e09..0a6ae93d801 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,16 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * class.c: Add required include files from gimple.h.
+ * cp-gimplify.c: Likewise
+ * decl2.c: Likewise
+ * init.c: Likewise
+ * optimize.c: Likewise
+ * pt.c: Likewise
+ * semantics.c: Likewise
+ * tree.c: Likewise
+ * typeck.c: Likewise
+ * vtable-class-hierarchy.c: Likewise
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* call.c (build_integral_nontype_arg_conv): Remove use of
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 00fec27a3d5..842b11c66c1 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -29,7 +29,8 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "stor-layout.h"
#include "attribs.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "hash-table.h"
#include "cp-tree.h"
#include "flags.h"
#include "toplev.h"
@@ -38,9 +39,6 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "dumpfile.h"
#include "splay-tree.h"
-#include "pointer-set.h"
-#include "hash-table.h"
-#include "gimple.h"
#include "gimplify.h"
/* The number of nested classes being processed. If we are not in the
diff --git a/gcc/cp/cp-gimplify.c b/gcc/cp/cp-gimplify.c
index e2629464dd9..176dbc36aaa 100644
--- a/gcc/cp/cp-gimplify.c
+++ b/gcc/cp/cp-gimplify.c
@@ -28,10 +28,15 @@ along with GCC; see the file COPYING3. If not see
#include "cp-tree.h"
#include "c-family/c-common.h"
#include "tree-iterator.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "hashtab.h"
-#include "pointer-set.h"
#include "flags.h"
#include "splay-tree.h"
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 93c75cbf4d6..06c32f3c034 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -36,7 +36,7 @@ along with GCC; see the file COPYING3. If not see
#include "attribs.h"
#include "stor-layout.h"
#include "calls.h"
-#include "gimple.h"
+#include "pointer-set.h"
#include "flags.h"
#include "cp-tree.h"
#include "decl.h"
@@ -51,7 +51,6 @@ along with GCC; see the file COPYING3. If not see
#include "c-family/c-pragma.h"
#include "dumpfile.h"
#include "intl.h"
-#include "pointer-set.h"
#include "splay-tree.h"
#include "langhooks.h"
#include "c-family/c-ada-spec.h"
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index 29ed2a9a9bf..d67a38969f6 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -30,7 +30,6 @@ along with GCC; see the file COPYING3. If not see
#include "cp-tree.h"
#include "flags.h"
#include "target.h"
-#include "gimple.h"
#include "gimplify.h"
static bool begin_init_stmts (tree *, tree *);
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c
index b8df1347c33..f1b09bfd55e 100644
--- a/gcc/cp/optimize.c
+++ b/gcc/cp/optimize.c
@@ -35,7 +35,7 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "diagnostic-core.h"
#include "dumpfile.h"
-#include "gimple.h"
+#include "pointer-set.h"
#include "tree-iterator.h"
#include "cgraph.h"
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 96343edecda..b05294bda1b 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -46,7 +46,6 @@ along with GCC; see the file COPYING3. If not see
#include "timevar.h"
#include "tree-iterator.h"
#include "type-utils.h"
-#include "gimple.h"
#include "gimplify.h"
/* The type of functions taking a tree, and some additional data, and
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 83f23a6480c..316834c1e7c 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -43,12 +43,11 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "cgraph.h"
#include "tree-iterator.h"
-#include "vec.h"
#include "target.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "hash-table.h"
#include "gimplify.h"
#include "bitmap.h"
-#include "hash-table.h"
#include "omp-low.h"
static bool verify_constant (tree, bool, bool *, bool *);
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index a990a79bbb3..cb05633b24d 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -33,9 +33,9 @@ along with GCC; see the file COPYING3. If not see
#include "convert.h"
#include "cgraph.h"
#include "splay-tree.h"
-#include "gimple.h"
-#include "gimplify.h"
#include "hash-table.h"
+#include "gimple-expr.h"
+#include "gimplify.h"
static tree bot_manip (tree *, int *, void *);
static tree bot_replace (tree *, int *, void *);
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index 493453bef8e..a4da037db33 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -31,7 +31,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "stor-layout.h"
#include "varasm.h"
-#include "gimple.h"
#include "cp-tree.h"
#include "flags.h"
#include "diagnostic.h"
diff --git a/gcc/cp/vtable-class-hierarchy.c b/gcc/cp/vtable-class-hierarchy.c
index 32f9541e43d..b6637248951 100644
--- a/gcc/cp/vtable-class-hierarchy.c
+++ b/gcc/cp/vtable-class-hierarchy.c
@@ -118,7 +118,6 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "tree-iterator.h"
#include "vtable-verify.h"
-#include "gimple.h"
#include "gimplify.h"
#include "stringpool.h"
#include "stor-layout.h"
diff --git a/gcc/data-streamer-in.c b/gcc/data-streamer-in.c
index 84242486941..39ae5010a39 100644
--- a/gcc/data-streamer-in.c
+++ b/gcc/data-streamer-in.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "data-streamer.h"
diff --git a/gcc/data-streamer-out.c b/gcc/data-streamer-out.c
index fbbe0db2759..01fb36a88ae 100644
--- a/gcc/data-streamer-out.c
+++ b/gcc/data-streamer-out.c
@@ -24,6 +24,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "data-streamer.h"
diff --git a/gcc/data-streamer.c b/gcc/data-streamer.c
index 675b5093314..3b697e5b280 100644
--- a/gcc/data-streamer.c
+++ b/gcc/data-streamer.c
@@ -23,6 +23,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "data-streamer.h"
diff --git a/gcc/dse.c b/gcc/dse.c
index 6584ea35bbe..2d8ce1e4d78 100644
--- a/gcc/dse.c
+++ b/gcc/dse.c
@@ -47,6 +47,11 @@ along with GCC; see the file COPYING3. If not see
#include "dbgcnt.h"
#include "target.h"
#include "params.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index bd372b733a7..3448ec4a98c 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -66,7 +66,7 @@ along with GCC; see the file COPYING3. If not see
#include "varasm.h"
#include "function.h"
#include "emit-rtl.h"
-#include "gimple.h"
+#include "hash-table.h"
#include "version.h"
#include "flags.h"
#include "hard-reg-set.h"
@@ -81,7 +81,6 @@ along with GCC; see the file COPYING3. If not see
#include "dwarf2out.h"
#include "dwarf2asm.h"
#include "toplev.h"
-#include "ggc.h"
#include "md5.h"
#include "tm_p.h"
#include "diagnostic.h"
@@ -90,7 +89,6 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "common/common-target.h"
#include "langhooks.h"
-#include "hash-table.h"
#include "cgraph.h"
#include "input.h"
#include "ira.h"
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 24e3c92151b..d7fa3a5e0dc 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -39,7 +39,8 @@ along with GCC; see the file COPYING3. If not see
#include "rtl.h"
#include "tree.h"
#include "varasm.h"
-#include "gimple.h"
+#include "basic-block.h"
+#include "tree-eh.h"
#include "tm_p.h"
#include "flags.h"
#include "function.h"
@@ -51,14 +52,11 @@ along with GCC; see the file COPYING3. If not see
#include "insn-config.h"
#include "recog.h"
#include "bitmap.h"
-#include "basic-block.h"
-#include "ggc.h"
#include "debug.h"
#include "langhooks.h"
#include "df.h"
#include "params.h"
#include "target.h"
-#include "tree-eh.h"
struct target_rtl default_target_rtl;
#if SWITCHABLE_TARGET
diff --git a/gcc/except.c b/gcc/except.c
index f7dc193ce47..e4b8cad06af 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -124,7 +124,6 @@ along with GCC; see the file COPYING3. If not see
#include "insn-config.h"
#include "except.h"
#include "hard-reg-set.h"
-#include "basic-block.h"
#include "output.h"
#include "dwarf2asm.h"
#include "dwarf2out.h"
@@ -132,7 +131,6 @@ along with GCC; see the file COPYING3. If not see
#include "toplev.h"
#include "hash-table.h"
#include "intl.h"
-#include "ggc.h"
#include "tm_p.h"
#include "target.h"
#include "common/common-target.h"
@@ -141,7 +139,7 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "tree-pretty-print.h"
#include "tree-pass.h"
-#include "gimple.h"
+#include "pointer-set.h"
#include "cfgloop.h"
/* Provide defaults for stuff that may not be defined when using
diff --git a/gcc/expr.c b/gcc/expr.c
index 6cbd7a95bbc..df1c1e88f6f 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -47,6 +47,11 @@ along with GCC; see the file COPYING3. If not see
#include "intl.h"
#include "tm_p.h"
#include "tree-iterator.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "cgraph.h"
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index f41ea383424..f91673d3e5b 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -56,10 +56,14 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "diagnostic-core.h"
#include "intl.h"
-#include "ggc.h"
-#include "hash-table.h"
#include "langhooks.h"
#include "md5.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "tree-dfa.h"
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 5625c97bd4b..5b66a7b7e46 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * trans.c: Add required include files from gimple.h.
+ * trans-expr.c: Likewise
+ * trans-openmp.c: Likewise
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* trans.c (trans_runtime_error_vararg): Remove use of input_line
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index 41b2f94679a..62ba93203cd 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -39,7 +39,6 @@ along with GCC; see the file COPYING3. If not see
/* Only for gfc_trans_assign and gfc_trans_pointer_assign. */
#include "trans-stmt.h"
#include "dependency.h"
-#include "gimple.h"
#include "gimplify.h"
diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c
index d23af17d81e..e0c992e35f7 100644
--- a/gcc/fortran/trans-openmp.c
+++ b/gcc/fortran/trans-openmp.c
@@ -23,7 +23,7 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
-#include "gimple.h"
+#include "gimple-expr.h"
#include "gimplify.h" /* For create_tmp_var_raw. */
#include "stringpool.h"
#include "diagnostic-core.h" /* For internal_error. */
diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c
index 7805b57bc9b..9e57058d56e 100644
--- a/gcc/fortran/trans.c
+++ b/gcc/fortran/trans.c
@@ -23,7 +23,6 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tree.h"
#include "gimple-expr.h" /* For create_tmp_var_raw. */
-#include "gimple.h"
#include "stringpool.h"
#include "tree-iterator.h"
#include "diagnostic-core.h" /* For internal_error. */
diff --git a/gcc/function.c b/gcc/function.c
index 3789352a7dc..00c372f2bc0 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -51,14 +51,12 @@ along with GCC; see the file COPYING3. If not see
#include "insn-config.h"
#include "recog.h"
#include "output.h"
-#include "basic-block.h"
#include "hashtab.h"
-#include "ggc.h"
#include "tm_p.h"
#include "langhooks.h"
#include "target.h"
#include "common/common-target.h"
-#include "gimple.h"
+#include "gimple-expr.h"
#include "gimplify.h"
#include "tree-pass.h"
#include "predict.h"
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index 86e9ca22006..e7f98f956b6 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -1769,6 +1769,9 @@ open_base_files (void)
"tree.h", "rtl.h", "function.h", "insn-config.h", "expr.h",
"hard-reg-set.h", "basic-block.h", "cselib.h", "insn-addr.h",
"optabs.h", "libfuncs.h", "debug.h", "ggc.h", "cgraph.h",
+ "pointer-set.h", "hash-table.h", "vec.h", "ggc.h", "basic-block.h",
+ "tree-ssa-alias.h", "internal-fn.h", "gimple-fold.h", "tree-eh.h",
+ "gimple-expr.h", "is-a.h",
"gimple.h", "gimple-iterator.h", "gimple-ssa.h", "tree-cfg.h",
"tree-phinodes.h", "ssa-iterators.h", "stringpool.h", "tree-ssanames.h",
"tree-ssa-loop.h", "tree-ssa-loop-ivopts.h", "tree-ssa-loop-manip.h",
diff --git a/gcc/gimple-builder.c b/gcc/gimple-builder.c
index 17cd2e1b887..a670c7ec505 100644
--- a/gcc/gimple-builder.c
+++ b/gcc/gimple-builder.c
@@ -22,6 +22,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tree.h"
#include "stringpool.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-ssanames.h"
diff --git a/gcc/gimple-expr.c b/gcc/gimple-expr.c
index 77660a34c6d..45fe5c27d69 100644
--- a/gcc/gimple-expr.c
+++ b/gcc/gimple-expr.c
@@ -24,6 +24,13 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "stringpool.h"
#include "gimplify.h"
diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c
index 91214bc90a2..2902e6966b8 100644
--- a/gcc/gimple-fold.c
+++ b/gcc/gimple-fold.c
@@ -31,6 +31,12 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "dumpfile.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/gimple-iterator.c b/gcc/gimple-iterator.c
index a3e74fe5012..9f51e6cf07a 100644
--- a/gcc/gimple-iterator.c
+++ b/gcc/gimple-iterator.c
@@ -23,6 +23,12 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/gimple-low.c b/gcc/gimple-low.c
index 71f8dfec3f8..19f2ef8c63f 100644
--- a/gcc/gimple-low.c
+++ b/gcc/gimple-low.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tree-nested.h"
#include "calls.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-iterator.h"
diff --git a/gcc/gimple-pretty-print.c b/gcc/gimple-pretty-print.c
index 4529e79205e..c4962e12f07 100644
--- a/gcc/gimple-pretty-print.c
+++ b/gcc/gimple-pretty-print.c
@@ -29,6 +29,12 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-pretty-print.h"
#include "hashtab.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/gimple-ssa-isolate-paths.c b/gcc/gimple-ssa-isolate-paths.c
index 1b7e3ff7d76..440d2ed86d9 100644
--- a/gcc/gimple-ssa-isolate-paths.c
+++ b/gcc/gimple-ssa-isolate-paths.c
@@ -26,6 +26,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "flags.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/gimple-ssa-strength-reduction.c b/gcc/gimple-ssa-strength-reduction.c
index 3ac9e4d3347..bc2484b5b13 100644
--- a/gcc/gimple-ssa-strength-reduction.c
+++ b/gcc/gimple-ssa-strength-reduction.c
@@ -37,12 +37,18 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
#include "stor-layout.h"
#include "expr.h"
-#include "basic-block.h"
#include "tree-pass.h"
#include "cfgloop.h"
#include "gimple-pretty-print.h"
@@ -53,10 +59,8 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "tree-ssanames.h"
#include "domwalk.h"
-#include "pointer-set.h"
#include "expmed.h"
#include "params.h"
-#include "hash-table.h"
#include "tree-ssa-address.h"
/* Information about a strength reduction candidate. Each statement
diff --git a/gcc/gimple-streamer-in.c b/gcc/gimple-streamer-in.c
index a5c8dd8fd39..57b0d871a5a 100644
--- a/gcc/gimple-streamer-in.c
+++ b/gcc/gimple-streamer-in.c
@@ -24,6 +24,12 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/gimple-streamer-out.c b/gcc/gimple-streamer-out.c
index 0d6b6a6ae95..0520eb20f0a 100644
--- a/gcc/gimple-streamer-out.c
+++ b/gcc/gimple-streamer-out.c
@@ -23,6 +23,12 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/gimple-walk.c b/gcc/gimple-walk.c
index 22f4584a673..4d59ae078c3 100644
--- a/gcc/gimple-walk.c
+++ b/gcc/gimple-walk.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "stmt.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/gimple.c b/gcc/gimple.c
index 67730bc6dbd..d3451ac9a47 100644
--- a/gcc/gimple.c
+++ b/gcc/gimple.c
@@ -28,9 +28,13 @@ along with GCC; see the file COPYING3. If not see
#include "calls.h"
#include "stmt.h"
#include "stor-layout.h"
-#include "ggc.h"
#include "hard-reg-set.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
@@ -1950,57 +1954,6 @@ const unsigned char gimple_rhs_class_table[] = {
#undef DEFTREECODE
#undef END_OF_BASE_TREE_CODES
-void
-recalculate_side_effects (tree t)
-{
- enum tree_code code = TREE_CODE (t);
- int len = TREE_OPERAND_LENGTH (t);
- int i;
-
- switch (TREE_CODE_CLASS (code))
- {
- case tcc_expression:
- switch (code)
- {
- case INIT_EXPR:
- case MODIFY_EXPR:
- case VA_ARG_EXPR:
- case PREDECREMENT_EXPR:
- case PREINCREMENT_EXPR:
- case POSTDECREMENT_EXPR:
- case POSTINCREMENT_EXPR:
- /* All of these have side-effects, no matter what their
- operands are. */
- return;
-
- default:
- break;
- }
- /* Fall through. */
-
- case tcc_comparison: /* a comparison expression */
- case tcc_unary: /* a unary arithmetic expression */
- case tcc_binary: /* a binary arithmetic expression */
- case tcc_reference: /* a reference */
- case tcc_vl_exp: /* a function call */
- TREE_SIDE_EFFECTS (t) = TREE_THIS_VOLATILE (t);
- for (i = 0; i < len; ++i)
- {
- tree op = TREE_OPERAND (t, i);
- if (op && TREE_SIDE_EFFECTS (op))
- TREE_SIDE_EFFECTS (t) = 1;
- }
- break;
-
- case tcc_constant:
- /* No side-effects. */
- return;
-
- default:
- gcc_unreachable ();
- }
-}
-
/* Canonicalize a tree T for use in a COND_EXPR as conditional. Returns
a canonicalized tree that is valid for a COND_EXPR or NULL_TREE, if
we failed to create one. */
diff --git a/gcc/gimple.h b/gcc/gimple.h
index 0eb23fc39e8..c9977329e4f 100644
--- a/gcc/gimple.h
+++ b/gcc/gimple.h
@@ -22,18 +22,6 @@ along with GCC; see the file COPYING3. If not see
#ifndef GCC_GIMPLE_H
#define GCC_GIMPLE_H
-#include "pointer-set.h"
-#include "hash-table.h"
-#include "vec.h"
-#include "ggc.h"
-#include "basic-block.h"
-#include "tree-ssa-alias.h"
-#include "internal-fn.h"
-#include "gimple-fold.h"
-#include "tree-eh.h"
-#include "gimple-expr.h"
-#include "is-a.h"
-
typedef gimple gimple_seq_node;
/* For each block, the PHI nodes that need to be rewritten are stored into
@@ -1112,7 +1100,6 @@ bool gimple_could_trap_p (gimple);
bool gimple_assign_rhs_could_trap_p (gimple);
extern void dump_gimple_statistics (void);
unsigned get_gimple_rhs_num_ops (enum tree_code);
-extern void recalculate_side_effects (tree);
extern tree canonicalize_cond_expr_cond (tree);
gimple gimple_call_copy_skip_args (gimple, bitmap);
extern bool gimple_compare_field_offset (tree, tree);
diff --git a/gcc/gimplify-me.c b/gcc/gimplify-me.c
index 92542a9a2e9..9dce585ee61 100644
--- a/gcc/gimplify-me.c
+++ b/gcc/gimplify-me.c
@@ -27,6 +27,12 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "stmt.h"
#include "stor-layout.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify.h"
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index fa09d8c58f8..b3608c3171d 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -25,6 +25,15 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tree.h"
#include "expr.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -1748,6 +1757,57 @@ gimplify_var_or_parm_decl (tree *expr_p)
return GS_ALL_DONE;
}
+void
+recalculate_side_effects (tree t)
+{
+ enum tree_code code = TREE_CODE (t);
+ int len = TREE_OPERAND_LENGTH (t);
+ int i;
+
+ switch (TREE_CODE_CLASS (code))
+ {
+ case tcc_expression:
+ switch (code)
+ {
+ case INIT_EXPR:
+ case MODIFY_EXPR:
+ case VA_ARG_EXPR:
+ case PREDECREMENT_EXPR:
+ case PREINCREMENT_EXPR:
+ case POSTDECREMENT_EXPR:
+ case POSTINCREMENT_EXPR:
+ /* All of these have side-effects, no matter what their
+ operands are. */
+ return;
+
+ default:
+ break;
+ }
+ /* Fall through. */
+
+ case tcc_comparison: /* a comparison expression */
+ case tcc_unary: /* a unary arithmetic expression */
+ case tcc_binary: /* a binary arithmetic expression */
+ case tcc_reference: /* a reference */
+ case tcc_vl_exp: /* a function call */
+ TREE_SIDE_EFFECTS (t) = TREE_THIS_VOLATILE (t);
+ for (i = 0; i < len; ++i)
+ {
+ tree op = TREE_OPERAND (t, i);
+ if (op && TREE_SIDE_EFFECTS (op))
+ TREE_SIDE_EFFECTS (t) = 1;
+ }
+ break;
+
+ case tcc_constant:
+ /* No side-effects. */
+ return;
+
+ default:
+ gcc_unreachable ();
+ }
+}
+
/* Gimplify the COMPONENT_REF, ARRAY_REF, REALPART_EXPR or IMAGPART_EXPR
node *EXPR_P.
diff --git a/gcc/gimplify.h b/gcc/gimplify.h
index 91000d1e6b7..049f80dd0a8 100644
--- a/gcc/gimplify.h
+++ b/gcc/gimplify.h
@@ -64,6 +64,7 @@ extern tree unshare_expr (tree);
extern tree unshare_expr_without_location (tree);
extern tree voidify_wrapper_expr (tree, tree);
extern tree build_and_jump (tree *);
+extern void recalculate_side_effects (tree);
extern enum gimplify_status gimplify_self_mod_expr (tree *, gimple_seq *,
gimple_seq *, bool, tree);
extern tree gimple_boolify (tree);
diff --git a/gcc/go/ChangeLog b/gcc/go/ChangeLog
index 918862ef8fe..d2e35737cbc 100644
--- a/gcc/go/ChangeLog
+++ b/gcc/go/ChangeLog
@@ -1,3 +1,8 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * go-gcc.cc: Add required include files from gimple.h.
+ * go-lang.c: Likewise
+
2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
* gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
diff --git a/gcc/go/go-gcc.cc b/gcc/go/go-gcc.cc
index 83f91d5daf5..50e31fff91f 100644
--- a/gcc/go/go-gcc.cc
+++ b/gcc/go/go-gcc.cc
@@ -29,7 +29,8 @@
#include "stor-layout.h"
#include "varasm.h"
#include "tree-iterator.h"
-#include "gimple.h"
+#include "basic-block.h"
+#include "gimple-expr.h"
#include "toplev.h"
#include "output.h"
#include "real.h"
diff --git a/gcc/go/go-lang.c b/gcc/go/go-lang.c
index 93a0446efe6..580b1b802dc 100644
--- a/gcc/go/go-lang.c
+++ b/gcc/go/go-lang.c
@@ -23,10 +23,10 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "opts.h"
#include "tree.h"
-#include "gimple.h"
+#include "basic-block.h"
+#include "gimple-expr.h"
#include "gimplify.h"
#include "stor-layout.h"
-#include "ggc.h"
#include "toplev.h"
#include "debug.h"
#include "options.h"
diff --git a/gcc/graphite-blocking.c b/gcc/graphite-blocking.c
index da457d20da1..38e610d6d86 100644
--- a/gcc/graphite-blocking.c
+++ b/gcc/graphite-blocking.c
@@ -35,6 +35,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop.h"
diff --git a/gcc/graphite-clast-to-gimple.c b/gcc/graphite-clast-to-gimple.c
index ad3e1dc4ede..038c4f2abb2 100644
--- a/gcc/graphite-clast-to-gimple.c
+++ b/gcc/graphite-clast-to-gimple.c
@@ -36,6 +36,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic-core.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
diff --git a/gcc/graphite-dependences.c b/gcc/graphite-dependences.c
index f9f7004cb1d..c0d769c7dd6 100644
--- a/gcc/graphite-dependences.c
+++ b/gcc/graphite-dependences.c
@@ -34,6 +34,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop.h"
diff --git a/gcc/graphite-interchange.c b/gcc/graphite-interchange.c
index 8690313da35..8ec021bf52b 100644
--- a/gcc/graphite-interchange.c
+++ b/gcc/graphite-interchange.c
@@ -36,6 +36,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop.h"
diff --git a/gcc/graphite-optimize-isl.c b/gcc/graphite-optimize-isl.c
index 2260c507f86..19f8bd1b48a 100644
--- a/gcc/graphite-optimize-isl.c
+++ b/gcc/graphite-optimize-isl.c
@@ -33,6 +33,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop.h"
diff --git a/gcc/graphite-poly.c b/gcc/graphite-poly.c
index d75359e8537..6b3cd67042f 100644
--- a/gcc/graphite-poly.c
+++ b/gcc/graphite-poly.c
@@ -36,6 +36,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic-core.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop.h"
diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
index 15c4c0f99ea..a8db98d2706 100644
--- a/gcc/graphite-scop-detection.c
+++ b/gcc/graphite-scop-detection.c
@@ -32,6 +32,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
index 544ea93265e..71af6133e4a 100644
--- a/gcc/graphite-sese-to-poly.c
+++ b/gcc/graphite-sese-to-poly.c
@@ -34,6 +34,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify.h"
diff --git a/gcc/graphite.c b/gcc/graphite.c
index f87aede8420..e46710ca939 100644
--- a/gcc/graphite.c
+++ b/gcc/graphite.c
@@ -48,6 +48,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic-core.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-cfg.h"
diff --git a/gcc/internal-fn.c b/gcc/internal-fn.c
index 867747041ae..9ae917ba0ac 100644
--- a/gcc/internal-fn.c
+++ b/gcc/internal-fn.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "stor-layout.h"
#include "expr.h"
#include "optabs.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
/* The names of each internal function, indexed by function number. */
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index d0fa8db55d9..c1634a3c69c 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -104,7 +104,8 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
-#include "gimple.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
#include "target.h"
#include "ipa-prop.h"
#include "bitmap.h"
diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c
index 38cf378d2d4..4c4e7a504e9 100644
--- a/gcc/ipa-devirt.c
+++ b/gcc/ipa-devirt.c
@@ -115,12 +115,15 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "expr.h"
#include "tree-pass.h"
-#include "ggc.h"
#include "pointer-set.h"
#include "target.h"
#include "hash-table.h"
#include "tree-pretty-print.h"
#include "ipa-utils.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
#include "gimple.h"
#include "ipa-inline.h"
#include "diagnostic.h"
diff --git a/gcc/ipa-inline-analysis.c b/gcc/ipa-inline-analysis.c
index 3d95de144f9..a570883bebc 100644
--- a/gcc/ipa-inline-analysis.c
+++ b/gcc/ipa-inline-analysis.c
@@ -80,7 +80,11 @@ along with GCC; see the file COPYING3. If not see
#include "params.h"
#include "tree-pass.h"
#include "coverage.h"
-#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 54ec74ee191..0b7da7a4af1 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -106,9 +106,13 @@ along with GCC; see the file COPYING3. If not see
#include "intl.h"
#include "tree-pass.h"
#include "coverage.h"
-#include "ggc.h"
#include "rtl.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "ipa-prop.h"
diff --git a/gcc/ipa-profile.c b/gcc/ipa-profile.c
index 7ae001cc5e2..ef9e2422492 100644
--- a/gcc/ipa-profile.c
+++ b/gcc/ipa-profile.c
@@ -51,14 +51,15 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "cgraph.h"
#include "tree-pass.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
#include "gimple.h"
#include "gimple-iterator.h"
-#include "ggc.h"
#include "flags.h"
#include "target.h"
#include "tree-iterator.h"
#include "ipa-utils.h"
-#include "hash-table.h"
#include "profile.h"
#include "params.h"
#include "value-prof.h"
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c
index d122dd55539..5e217f250a7 100644
--- a/gcc/ipa-prop.c
+++ b/gcc/ipa-prop.c
@@ -21,6 +21,13 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "expr.h"
#include "stor-layout.h"
@@ -30,7 +37,6 @@ along with GCC; see the file COPYING3. If not see
#include "gimplify-me.h"
#include "gimple-walk.h"
#include "langhooks.h"
-#include "ggc.h"
#include "target.h"
#include "ipa-prop.h"
#include "bitmap.h"
diff --git a/gcc/ipa-pure-const.c b/gcc/ipa-pure-const.c
index ed96c3c21ff..d84b35fd716 100644
--- a/gcc/ipa-pure-const.c
+++ b/gcc/ipa-pure-const.c
@@ -38,6 +38,12 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "print-tree.h"
#include "calls.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
@@ -46,8 +52,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-inline.h"
#include "tree-pass.h"
#include "langhooks.h"
-#include "pointer-set.h"
-#include "ggc.h"
#include "ipa-utils.h"
#include "flags.h"
#include "diagnostic.h"
diff --git a/gcc/ipa-reference.c b/gcc/ipa-reference.c
index 27208deb519..9e4eb0022fc 100644
--- a/gcc/ipa-reference.c
+++ b/gcc/ipa-reference.c
@@ -42,12 +42,15 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "calls.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-inline.h"
#include "tree-pass.h"
-#include "pointer-set.h"
#include "splay-tree.h"
-#include "ggc.h"
#include "ipa-utils.h"
#include "ipa-reference.h"
#include "flags.h"
diff --git a/gcc/ipa-split.c b/gcc/ipa-split.c
index 2e8a062da6b..d2e2d6f3d19 100644
--- a/gcc/ipa-split.c
+++ b/gcc/ipa-split.c
@@ -78,6 +78,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "stringpool.h"
#include "expr.h"
diff --git a/gcc/ipa-utils.c b/gcc/ipa-utils.c
index 1aa239d3b7d..312d75ddbfd 100644
--- a/gcc/ipa-utils.c
+++ b/gcc/ipa-utils.c
@@ -23,13 +23,16 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-inline.h"
#include "dumpfile.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "splay-tree.h"
-#include "ggc.h"
#include "ipa-utils.h"
#include "ipa-reference.h"
#include "flags.h"
diff --git a/gcc/ipa.c b/gcc/ipa.c
index 3950d4eb856..e52b7364caa 100644
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -26,11 +26,10 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "cgraph.h"
#include "tree-pass.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "gimple-expr.h"
#include "gimplify.h"
-#include "ggc.h"
#include "flags.h"
-#include "pointer-set.h"
#include "target.h"
#include "tree-iterator.h"
#include "ipa-utils.h"
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 684392679f8..3b8a95a6baf 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * java-gimplify.c: Add required include files from gimple.h.
+
2013-11-22 David Malcolm <dmalcolm@redhat.com>
* class.c (maybe_layout_super_class): Update comment.
diff --git a/gcc/java/java-gimplify.c b/gcc/java/java-gimplify.c
index f2d0460ae31..cf1f97007ed 100644
--- a/gcc/java/java-gimplify.c
+++ b/gcc/java/java-gimplify.c
@@ -27,6 +27,11 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "tree.h"
#include "java-tree.h"
#include "dumpfile.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
diff --git a/gcc/langhooks.c b/gcc/langhooks.c
index 4b72f2a6238..7fe349d4f2c 100644
--- a/gcc/langhooks.c
+++ b/gcc/langhooks.c
@@ -28,7 +28,6 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "attribs.h"
#include "tree-inline.h"
-#include "gimple.h"
#include "gimplify.h"
#include "rtl.h"
#include "insn-config.h"
@@ -36,7 +35,6 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "target.h"
#include "langhooks-def.h"
-#include "ggc.h"
#include "diagnostic.h"
#include "tree-diagnostic.h"
#include "cgraph.h"
diff --git a/gcc/lto-cgraph.c b/gcc/lto-cgraph.c
index 0f1a1c5e9a0..4f69ee5260f 100644
--- a/gcc/lto-cgraph.c
+++ b/gcc/lto-cgraph.c
@@ -26,6 +26,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "stringpool.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "expr.h"
#include "flags.h"
@@ -33,15 +38,11 @@ along with GCC; see the file COPYING3. If not see
#include "input.h"
#include "hashtab.h"
#include "langhooks.h"
-#include "basic-block.h"
#include "bitmap.h"
#include "function.h"
-#include "ggc.h"
#include "diagnostic-core.h"
#include "except.h"
-#include "vec.h"
#include "timevar.h"
-#include "pointer-set.h"
#include "lto-streamer.h"
#include "data-streamer.h"
#include "tree-streamer.h"
diff --git a/gcc/lto-compress.c b/gcc/lto-compress.c
index 3a67616cf8b..737323fb106 100644
--- a/gcc/lto-compress.c
+++ b/gcc/lto-compress.c
@@ -28,6 +28,11 @@ along with GCC; see the file COPYING3. If not see
#include <zlib.h>
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "diagnostic-core.h"
#include "langhooks.h"
diff --git a/gcc/lto-opts.c b/gcc/lto-opts.c
index 2cb536bfc55..df5d8f165fd 100644
--- a/gcc/lto-opts.c
+++ b/gcc/lto-opts.c
@@ -23,10 +23,13 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "hashtab.h"
-#include "ggc.h"
-#include "vec.h"
#include "bitmap.h"
#include "flags.h"
#include "opts.h"
diff --git a/gcc/lto-section-in.c b/gcc/lto-section-in.c
index e4f0aedfa0f..8d778bbb0df 100644
--- a/gcc/lto-section-in.c
+++ b/gcc/lto-section-in.c
@@ -24,22 +24,23 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "expr.h"
#include "flags.h"
#include "params.h"
#include "input.h"
#include "hashtab.h"
-#include "basic-block.h"
#include "function.h"
-#include "ggc.h"
#include "diagnostic-core.h"
#include "except.h"
-#include "vec.h"
#include "timevar.h"
#include "lto-streamer.h"
#include "lto-compress.h"
-#include "ggc.h"
/* Section names. These must correspond to the values of
enum lto_section_type. */
diff --git a/gcc/lto-section-out.c b/gcc/lto-section-out.c
index 4a2867376d5..2cc705c3a2a 100644
--- a/gcc/lto-section-out.c
+++ b/gcc/lto-section-out.c
@@ -24,17 +24,18 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "expr.h"
#include "params.h"
#include "input.h"
#include "hashtab.h"
-#include "basic-block.h"
#include "function.h"
-#include "ggc.h"
#include "except.h"
-#include "vec.h"
-#include "pointer-set.h"
#include "langhooks.h"
#include "data-streamer.h"
#include "lto-streamer.h"
diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c
index de25925b623..333e815a97d 100644
--- a/gcc/lto-streamer-in.c
+++ b/gcc/lto-streamer-in.c
@@ -33,6 +33,10 @@ along with GCC; see the file COPYING3. If not see
#include "input.h"
#include "hashtab.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -43,11 +47,9 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa.h"
#include "tree-pass.h"
#include "function.h"
-#include "ggc.h"
#include "diagnostic.h"
#include "except.h"
#include "debug.h"
-#include "vec.h"
#include "ipa-utils.h"
#include "data-streamer.h"
#include "gimple-streamer.h"
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 6f1585a2bf9..6163d120dc8 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -33,16 +33,18 @@ along with GCC; see the file COPYING3. If not see
#include "input.h"
#include "hashtab.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
#include "tree-ssanames.h"
#include "tree-pass.h"
#include "function.h"
-#include "ggc.h"
#include "diagnostic-core.h"
#include "except.h"
-#include "vec.h"
#include "lto-symtab.h"
#include "lto-streamer.h"
#include "data-streamer.h"
diff --git a/gcc/lto-streamer.c b/gcc/lto-streamer.c
index 1540e4c4be8..20192b73497 100644
--- a/gcc/lto-streamer.c
+++ b/gcc/lto-streamer.c
@@ -27,10 +27,14 @@ along with GCC; see the file COPYING3. If not see
#include "toplev.h"
#include "flags.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "bitmap.h"
#include "diagnostic-core.h"
-#include "vec.h"
#include "tree-streamer.h"
#include "lto-streamer.h"
#include "streamer-hooks.h"
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index 1b83f22046a..5beccad89aa 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,11 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * lto.c: Add required include files from gimple.h.
+ * lto-lang.c: Likewise
+ * lto-object.c: Likewise
+ * lto-partition.c: Likewise
+ * lto-symtab.c: Likewise
+
2013-11-18 Trevor Saunders <tsaunders@mozilla.com>
* lto-partition.c lto-symtab.c lto.c Adjust.
diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c
index cb15ce32fa7..67746b27433 100644
--- a/gcc/lto/lto-lang.c
+++ b/gcc/lto/lto-lang.c
@@ -33,6 +33,11 @@ along with GCC; see the file COPYING3. If not see
#include "lto-tree.h"
#include "lto.h"
#include "tree-inline.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "diagnostic-core.h"
#include "toplev.h"
@@ -1303,6 +1308,5 @@ lto_tree_node_structure (union lang_tree_node *t ATTRIBUTE_UNUSED)
return TS_LTO_GENERIC;
}
-#include "ggc.h"
#include "gtype-lto.h"
#include "gt-lto-lto-lang.h"
diff --git a/gcc/lto/lto-object.c b/gcc/lto/lto-object.c
index 19f10ccb978..b4518bb55b9 100644
--- a/gcc/lto/lto-object.c
+++ b/gcc/lto/lto-object.c
@@ -22,6 +22,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "diagnostic-core.h"
#include "lto.h"
diff --git a/gcc/lto/lto-partition.c b/gcc/lto/lto-partition.c
index 42d78307ded..95ec7fabf86 100644
--- a/gcc/lto/lto-partition.c
+++ b/gcc/lto/lto-partition.c
@@ -23,6 +23,11 @@ along with GCC; see the file COPYING3. If not see
#include "toplev.h"
#include "tree.h"
#include "gcc-symtab.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tm.h"
#include "cgraph.h"
diff --git a/gcc/lto/lto-symtab.c b/gcc/lto/lto-symtab.c
index 7c7075e50fc..87d6332ab2b 100644
--- a/gcc/lto/lto-symtab.c
+++ b/gcc/lto/lto-symtab.c
@@ -23,8 +23,12 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "diagnostic-core.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
-#include "ggc.h"
#include "hashtab.h"
#include "plugin-api.h"
#include "lto-streamer.h"
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index 0211437d5f9..8f2f1b0f0c8 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -28,16 +28,17 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "tm.h"
#include "cgraph.h"
-#include "ggc.h"
#include "tree-ssa-operands.h"
#include "tree-pass.h"
#include "langhooks.h"
-#include "vec.h"
#include "bitmap.h"
-#include "pointer-set.h"
#include "ipa-prop.h"
#include "common.h"
#include "debug.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "lto.h"
#include "lto-tree.h"
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 000ba9e71b1..6ec2ef5fa70 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * objc/objc-act.c: Add required include files from gimple.h.
+
2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
* objc-encoding.c: Replace tree_low_cst (..., 1) with tree_to_uhwi
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index d7e8afb6acf..2a551ee5857 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -45,7 +45,6 @@ along with GCC; see the file COPYING3. If not see
#include "input.h"
#include "function.h"
#include "toplev.h"
-#include "ggc.h"
#include "debug.h"
#include "c-family/c-target.h"
#include "diagnostic-core.h"
@@ -63,7 +62,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-pretty-print.h"
/* For enum gimplify_status */
-#include "gimple.h"
+#include "gimple-expr.h"
#include "gimplify.h"
/* For encode_method_prototype(). */
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index 29950608b9f..df9cd25b401 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -29,6 +29,13 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "stor-layout.h"
#include "rtl.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -52,7 +59,6 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "expr.h"
#include "tree-pass.h"
-#include "ggc.h"
#include "except.h"
#include "splay-tree.h"
#include "optabs.h"
diff --git a/gcc/opts-global.c b/gcc/opts-global.c
index af603b956e3..841a79b6122 100644
--- a/gcc/opts-global.c
+++ b/gcc/opts-global.c
@@ -24,8 +24,12 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "opts.h"
#include "flags.h"
-#include "ggc.h"
#include "tree.h" /* Required by langhooks.h. */
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "langhooks.h"
#include "tm.h" /* Required by rtl.h. */
diff --git a/gcc/passes.c b/gcc/passes.c
index fee1513b404..ea89d7a2cfb 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -27,7 +27,6 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "line-map.h"
-#include "hash-table.h"
#include "input.h"
#include "tree.h"
#include "varasm.h"
@@ -46,7 +45,6 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "basic-block.h"
#include "intl.h"
-#include "ggc.h"
#include "graph.h"
#include "regs.h"
#include "diagnostic-core.h"
@@ -61,6 +59,10 @@ along with GCC; see the file COPYING3. If not see
#include "coverage.h"
#include "value-prof.h"
#include "tree-inline.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "tree-cfg.h"
diff --git a/gcc/predict.c b/gcc/predict.c
index 919dbe90b3e..822343b1295 100644
--- a/gcc/predict.c
+++ b/gcc/predict.c
@@ -51,6 +51,11 @@ along with GCC; see the file COPYING3. If not see
#include "params.h"
#include "target.h"
#include "cfgloop.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -60,11 +65,9 @@ along with GCC; see the file COPYING3. If not see
#include "ssa-iterators.h"
#include "tree-ssa-loop-niter.h"
#include "tree-ssa-loop.h"
-#include "ggc.h"
#include "tree-pass.h"
#include "tree-scalar-evolution.h"
#include "cfgloop.h"
-#include "pointer-set.h"
/* real constants: 0, 1, 1-1/REG_BR_PROB_BASE, REG_BR_PROB_BASE,
1/REG_BR_PROB_BASE, 0.5, BB_FREQ_MAX. */
diff --git a/gcc/profile.c b/gcc/profile.c
index 1d0e78ab4dc..9aec3cb06b3 100644
--- a/gcc/profile.c
+++ b/gcc/profile.c
@@ -61,6 +61,10 @@ along with GCC; see the file COPYING3. If not see
#include "coverage.h"
#include "value-prof.h"
#include "tree.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-cfg.h"
diff --git a/gcc/sese.c b/gcc/sese.c
index 2fe77392bd4..7e59ac8d909 100644
--- a/gcc/sese.c
+++ b/gcc/sese.c
@@ -25,6 +25,13 @@ along with GCC; see the file COPYING3. If not see
#include "hash-table.h"
#include "tree.h"
#include "tree-pretty-print.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 37b2de34482..0d891b4fdfb 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -43,16 +43,20 @@ along with GCC; see the file COPYING3. If not see
#include "machmode.h"
#include "diagnostic-core.h"
#include "output.h"
-#include "ggc.h"
#include "langhooks.h"
#include "predict.h"
#include "optabs.h"
#include "target.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "regs.h"
#include "alloc-pool.h"
#include "pretty-print.h"
-#include "pointer-set.h"
#include "params.h"
#include "dumpfile.h"
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 0a1194e2ef3..e5eae0840cf 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -33,7 +33,6 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "expr.h"
#include "diagnostic-core.h"
-#include "ggc.h"
#include "target.h"
#include "langhooks.h"
#include "regs.h"
@@ -41,7 +40,6 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "tree-inline.h"
#include "tree-dump.h"
-#include "gimple.h"
#include "gimplify.h"
/* Data type for the expressions representing sizes of data types.
diff --git a/gcc/symtab.c b/gcc/symtab.c
index 851264d954a..dc700e7c735 100644
--- a/gcc/symtab.c
+++ b/gcc/symtab.c
@@ -28,11 +28,15 @@ along with GCC; see the file COPYING3. If not see
#include "varasm.h"
#include "function.h"
#include "emit-rtl.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-inline.h"
#include "langhooks.h"
#include "hashtab.h"
-#include "ggc.h"
#include "cgraph.h"
#include "diagnostic.h"
#include "timevar.h"
diff --git a/gcc/targhooks.c b/gcc/targhooks.c
index 6c0838512e7..1f158b8cb32 100644
--- a/gcc/targhooks.c
+++ b/gcc/targhooks.c
@@ -62,7 +62,6 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "tm_p.h"
#include "target-def.h"
-#include "ggc.h"
#include "hard-reg-set.h"
#include "regs.h"
#include "reload.h"
@@ -70,11 +69,11 @@ along with GCC; see the file COPYING3. If not see
#include "recog.h"
#include "intl.h"
#include "opts.h"
-#include "gimple.h"
+#include "tree-ssa-alias.h"
+#include "gimple-expr.h"
#include "gimplify.h"
#include "stringpool.h"
#include "tree-ssanames.h"
-#include "tree-ssa-alias.h"
#include "insn-codes.h"
diff --git a/gcc/testsuite/g++.dg/plugin/selfassign.c b/gcc/testsuite/g++.dg/plugin/selfassign.c
index cdab74a19ae..be5a204c901 100644
--- a/gcc/testsuite/g++.dg/plugin/selfassign.c
+++ b/gcc/testsuite/g++.dg/plugin/selfassign.c
@@ -11,6 +11,17 @@
#include "stringpool.h"
#include "toplev.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree.h"
diff --git a/gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.c b/gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.c
index 72d724063e4..c04d96d8232 100644
--- a/gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.c
+++ b/gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.c
@@ -9,6 +9,17 @@
#include "tree.h"
#include "toplev.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree.h"
#include "tree-pass.h"
diff --git a/gcc/testsuite/gcc.dg/plugin/ggcplug.c b/gcc/testsuite/gcc.dg/plugin/ggcplug.c
index eb61ece4522..d441528e9de 100644
--- a/gcc/testsuite/gcc.dg/plugin/ggcplug.c
+++ b/gcc/testsuite/gcc.dg/plugin/ggcplug.c
@@ -8,6 +8,17 @@
#include "tree.h"
#include "toplev.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree.h"
#include "tree-pass.h"
diff --git a/gcc/testsuite/gcc.dg/plugin/one_time_plugin.c b/gcc/testsuite/gcc.dg/plugin/one_time_plugin.c
index 1e601a63c90..f80719a4ff0 100644
--- a/gcc/testsuite/gcc.dg/plugin/one_time_plugin.c
+++ b/gcc/testsuite/gcc.dg/plugin/one_time_plugin.c
@@ -6,6 +6,17 @@
#include "tree.h"
#include "tm.h"
#include "toplev.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-pass.h"
#include "intl.h"
diff --git a/gcc/testsuite/gcc.dg/plugin/selfassign.c b/gcc/testsuite/gcc.dg/plugin/selfassign.c
index cdab74a19ae..be5a204c901 100644
--- a/gcc/testsuite/gcc.dg/plugin/selfassign.c
+++ b/gcc/testsuite/gcc.dg/plugin/selfassign.c
@@ -11,6 +11,17 @@
#include "stringpool.h"
#include "toplev.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree.h"
diff --git a/gcc/testsuite/gcc.dg/plugin/start_unit_plugin.c b/gcc/testsuite/gcc.dg/plugin/start_unit_plugin.c
index 39f44626a55..e83476b63fd 100644
--- a/gcc/testsuite/gcc.dg/plugin/start_unit_plugin.c
+++ b/gcc/testsuite/gcc.dg/plugin/start_unit_plugin.c
@@ -14,6 +14,17 @@
#include "stringpool.h"
#include "toplev.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "vec.h"
+#include "ggc.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree.h"
#include "tree-pass.h"
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 5fedcea9002..0b2c1a46086 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -46,9 +46,7 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "toplev.h"
#include "expr.h"
-#include "basic-block.h"
#include "intl.h"
-#include "ggc.h"
#include "regs.h"
#include "timevar.h"
#include "diagnostic.h"
@@ -72,8 +70,10 @@ along with GCC; see the file COPYING3. If not see
#include "alloc-pool.h"
#include "asan.h"
#include "tsan.h"
-#include "gimple.h"
#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "gimple.h"
#include "plugin.h"
#include "diagnostic-color.h"
#include "context.h"
diff --git a/gcc/tracer.c b/gcc/tracer.c
index 1ff89c56b75..996895006f4 100644
--- a/gcc/tracer.c
+++ b/gcc/tracer.c
@@ -46,6 +46,10 @@
#include "params.h"
#include "coverage.h"
#include "tree-pass.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-cfg.h"
diff --git a/gcc/trans-mem.c b/gcc/trans-mem.c
index 9e6f4d9cec7..31dee7678d2 100644
--- a/gcc/trans-mem.c
+++ b/gcc/trans-mem.c
@@ -22,6 +22,12 @@
#include "coretypes.h"
#include "hash-table.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "calls.h"
#include "function.h"
diff --git a/gcc/tree-affine.c b/gcc/tree-affine.c
index 9e3e1bf0657..f93f186a761 100644
--- a/gcc/tree-affine.c
+++ b/gcc/tree-affine.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree-pretty-print.h"
#include "pointer-set.h"
#include "tree-affine.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "flags.h"
diff --git a/gcc/tree-call-cdce.c b/gcc/tree-call-cdce.c
index c0dcf484b2d..19402e3c355 100644
--- a/gcc/tree-call-cdce.c
+++ b/gcc/tree-call-cdce.c
@@ -26,6 +26,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "stor-layout.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index f64fc520656..ab4bb095cf2 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -31,8 +31,14 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "flags.h"
#include "function.h"
-#include "ggc.h"
#include "gimple-pretty-print.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
@@ -57,7 +63,6 @@ along with GCC; see the file COPYING3. If not see
#include "cfgloop.h"
#include "tree-ssa-propagate.h"
#include "value-prof.h"
-#include "pointer-set.h"
#include "tree-inline.h"
#include "target.h"
#include "tree-ssa-live.h"
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c
index 5ae70abc29e..ab8a394a150 100644
--- a/gcc/tree-cfgcleanup.c
+++ b/gcc/tree-cfgcleanup.c
@@ -27,8 +27,12 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "flags.h"
#include "function.h"
-#include "ggc.h"
#include "langhooks.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-chrec.c b/gcc/tree-chrec.c
index afc1a6a5f64..09d33721df8 100644
--- a/gcc/tree-chrec.c
+++ b/gcc/tree-chrec.c
@@ -29,7 +29,8 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tree-pretty-print.h"
#include "cfgloop.h"
-#include "gimple.h"
+#include "basic-block.h"
+#include "gimple-expr.h"
#include "tree-ssa-loop-ivopts.h"
#include "tree-ssa-loop-niter.h"
#include "tree-chrec.h"
diff --git a/gcc/tree-complex.c b/gcc/tree-complex.c
index 7bc3458165f..80a978e52dd 100644
--- a/gcc/tree-complex.c
+++ b/gcc/tree-complex.c
@@ -24,6 +24,12 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "stor-layout.h"
#include "flags.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index 21729583431..fef6a716b7a 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -79,6 +79,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "expr.h"
#include "gimple-pretty-print.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop-niter.h"
diff --git a/gcc/tree-dfa.c b/gcc/tree-dfa.c
index 0ecf7a3e155..970b61c62e9 100644
--- a/gcc/tree-dfa.c
+++ b/gcc/tree-dfa.c
@@ -23,16 +23,18 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "hashtab.h"
-#include "pointer-set.h"
#include "tree.h"
#include "stor-layout.h"
#include "tm_p.h"
#include "basic-block.h"
-#include "ggc.h"
#include "langhooks.h"
#include "flags.h"
#include "function.h"
#include "tree-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c
index 778c0a798b1..85dc79f458d 100644
--- a/gcc/tree-eh.c
+++ b/gcc/tree-eh.c
@@ -29,6 +29,12 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "except.h"
#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -43,7 +49,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-inline.h"
#include "tree-pass.h"
#include "langhooks.h"
-#include "ggc.h"
#include "diagnostic-core.h"
#include "target.h"
#include "cfgloop.h"
diff --git a/gcc/tree-emutls.c b/gcc/tree-emutls.c
index 7f0c0a1981a..9ba25fc4676 100644
--- a/gcc/tree-emutls.c
+++ b/gcc/tree-emutls.c
@@ -23,6 +23,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "stor-layout.h"
#include "varasm.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c
index cf08386ed3c..ea86722a9c4 100644
--- a/gcc/tree-if-conv.c
+++ b/gcc/tree-if-conv.c
@@ -89,6 +89,11 @@ along with GCC; see the file COPYING3. If not see
#include "flags.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 224788222f6..0a6e0cdb72f 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -36,6 +36,13 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "tree-iterator.h"
#include "intl.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -55,7 +62,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-pretty-print.h"
#include "except.h"
#include "debug.h"
-#include "pointer-set.h"
#include "ipa-prop.h"
#include "value-prof.h"
#include "tree-pass.h"
diff --git a/gcc/tree-into-ssa.c b/gcc/tree-into-ssa.c
index 41c0896b97c..0067cfe61e8 100644
--- a/gcc/tree-into-ssa.c
+++ b/gcc/tree-into-ssa.c
@@ -29,6 +29,11 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "function.h"
#include "gimple-pretty-print.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -42,7 +47,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-dfa.h"
#include "tree-ssa.h"
#include "tree-inline.h"
-#include "hash-table.h"
#include "tree-pass.h"
#include "cfgloop.h"
#include "domwalk.h"
diff --git a/gcc/tree-loop-distribution.c b/gcc/tree-loop-distribution.c
index 6121236f99b..abf69f42669 100644
--- a/gcc/tree-loop-distribution.c
+++ b/gcc/tree-loop-distribution.c
@@ -45,6 +45,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
diff --git a/gcc/tree-nested.c b/gcc/tree-nested.c
index 868c8fd0e1f..2d6a56dcabd 100644
--- a/gcc/tree-nested.c
+++ b/gcc/tree-nested.c
@@ -28,6 +28,12 @@
#include "function.h"
#include "tree-dump.h"
#include "tree-inline.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -38,7 +44,6 @@
#include "tree-cfg.h"
#include "expr.h" /* FIXME: For STACK_SAVEAREA_MODE and SAVE_NONLOCAL. */
#include "langhooks.h"
-#include "pointer-set.h"
#include "gimple-low.h"
diff --git a/gcc/tree-nrv.c b/gcc/tree-nrv.c
index 035428aaec3..b42993d727b 100644
--- a/gcc/tree-nrv.c
+++ b/gcc/tree-nrv.c
@@ -25,6 +25,10 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "basic-block.h"
#include "tree-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/tree-object-size.c b/gcc/tree-object-size.c
index 785f71eae29..c9d5264fef6 100644
--- a/gcc/tree-object-size.c
+++ b/gcc/tree-object-size.c
@@ -27,6 +27,12 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "gimple-pretty-print.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-outof-ssa.c b/gcc/tree-outof-ssa.c
index 9a7a73f4079..8df3026309d 100644
--- a/gcc/tree-outof-ssa.c
+++ b/gcc/tree-outof-ssa.c
@@ -24,11 +24,15 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "stor-layout.h"
-#include "ggc.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "bitmap.h"
#include "sbitmap.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c
index 78b35df1b3a..a56145dbebe 100644
--- a/gcc/tree-parloops.c
+++ b/gcc/tree-parloops.c
@@ -23,6 +23,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-phinodes.c b/gcc/tree-phinodes.c
index bf024ac976c..b9c5b43ea57 100644
--- a/gcc/tree-phinodes.c
+++ b/gcc/tree-phinodes.c
@@ -22,8 +22,11 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
-#include "ggc.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-predcom.c b/gcc/tree-predcom.c
index 0d3c66cc877..1d4e439a6c6 100644
--- a/gcc/tree-predcom.c
+++ b/gcc/tree-predcom.c
@@ -191,6 +191,12 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tm_p.h"
#include "cfgloop.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -208,7 +214,6 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "tree-dfa.h"
#include "tree-ssa.h"
-#include "ggc.h"
#include "tree-data-ref.h"
#include "tree-scalar-evolution.h"
#include "tree-chrec.h"
diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c
index a18b42dc9e5..93c956c1dc5 100644
--- a/gcc/tree-pretty-print.c
+++ b/gcc/tree-pretty-print.c
@@ -27,7 +27,8 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "tree-pretty-print.h"
#include "hashtab.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "gimple-expr.h"
#include "cgraph.h"
#include "langhooks.h"
#include "tree-iterator.h"
diff --git a/gcc/tree-profile.c b/gcc/tree-profile.c
index 0adc51a51aa..537c246c630 100644
--- a/gcc/tree-profile.c
+++ b/gcc/tree-profile.c
@@ -34,6 +34,10 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "coverage.h"
#include "tree.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "varasm.h"
#include "tree-nested.h"
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c
index de05f644b0e..ada942df389 100644
--- a/gcc/tree-scalar-evolution.c
+++ b/gcc/tree-scalar-evolution.c
@@ -258,8 +258,12 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tree.h"
#include "expr.h"
-#include "hash-table.h"
#include "gimple-pretty-print.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
index 60b633f34e1..99856f93679 100644
--- a/gcc/tree-sra.c
+++ b/gcc/tree-sra.c
@@ -78,6 +78,13 @@ along with GCC; see the file COPYING3. If not see
#include "alloc-pool.h"
#include "tm.h"
#include "tree.h"
+#include "pointer-set.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "stor-layout.h"
#include "gimplify.h"
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index 257d534a492..aa5f7d79dd6 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -29,6 +29,10 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "tree-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
@@ -47,7 +51,6 @@ along with GCC; see the file COPYING3. If not see
#include "rtl.h"
#include "recog.h"
#include "expr.h"
-#include "ggc.h"
#include "target.h"
#include "expmed.h"
#include "tree-ssa-address.h"
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index a8be8181bd7..e412d72a2c2 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -27,12 +27,16 @@ along with GCC; see the file COPYING3. If not see
#include "target.h"
#include "basic-block.h"
#include "timevar.h" /* for TV_ALIAS_STMT_WALK */
-#include "ggc.h"
#include "langhooks.h"
#include "flags.h"
#include "function.h"
#include "tree-pretty-print.h"
#include "dumpfile.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "stringpool.h"
@@ -41,8 +45,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-dfa.h"
#include "tree-inline.h"
#include "params.h"
-#include "vec.h"
-#include "pointer-set.h"
#include "alloc-pool.h"
#include "tree-ssa-alias.h"
#include "ipa-reference.h"
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index 5eb5ffd33a1..3d052582bc4 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -120,6 +120,13 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "function.h"
#include "gimple-pretty-print.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -137,7 +144,6 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic-core.h"
#include "dbgcnt.h"
#include "params.h"
-#include "hash-table.h"
/* Possible lattice values. */
diff --git a/gcc/tree-ssa-coalesce.c b/gcc/tree-ssa-coalesce.c
index d6fbb1cc27f..70158d58d37 100644
--- a/gcc/tree-ssa-coalesce.c
+++ b/gcc/tree-ssa-coalesce.c
@@ -27,6 +27,12 @@ along with GCC; see the file COPYING3. If not see
#include "tree-pretty-print.h"
#include "bitmap.h"
#include "dumpfile.h"
+#include "hash-table.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -34,7 +40,6 @@ along with GCC; see the file COPYING3. If not see
#include "ssa-iterators.h"
#include "stringpool.h"
#include "tree-ssanames.h"
-#include "hash-table.h"
#include "tree-ssa-live.h"
#include "tree-ssa-coalesce.h"
#include "diagnostic-core.h"
diff --git a/gcc/tree-ssa-copy.c b/gcc/tree-ssa-copy.c
index def780650e0..e60b761f921 100644
--- a/gcc/tree-ssa-copy.c
+++ b/gcc/tree-ssa-copy.c
@@ -27,6 +27,10 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "function.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-copyrename.c b/gcc/tree-ssa-copyrename.c
index 361b4c32fd7..90e070fb995 100644
--- a/gcc/tree-ssa-copyrename.c
+++ b/gcc/tree-ssa-copyrename.c
@@ -23,10 +23,14 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tm.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "flags.h"
-#include "basic-block.h"
#include "function.h"
#include "tree-pretty-print.h"
#include "bitmap.h"
diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
index 0c8110fb71a..61c5af62ced 100644
--- a/gcc/tree-ssa-dce.c
+++ b/gcc/tree-ssa-dce.c
@@ -51,6 +51,11 @@ along with GCC; see the file COPYING3. If not see
#include "calls.h"
#include "gimple-pretty-print.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c
index a286c105615..82005afa0c9 100644
--- a/gcc/tree-ssa-dom.c
+++ b/gcc/tree-ssa-dom.c
@@ -31,6 +31,12 @@ along with GCC; see the file COPYING3. If not see
#include "cfgloop.h"
#include "function.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c
index 905ef21761c..a51f7615c72 100644
--- a/gcc/tree-ssa-dse.c
+++ b/gcc/tree-ssa-dse.c
@@ -21,12 +21,15 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "bitmap.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c
index 0fe3afe3fdf..d5d3bb84f1c 100644
--- a/gcc/tree-ssa-forwprop.c
+++ b/gcc/tree-ssa-forwprop.c
@@ -26,6 +26,12 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-ifcombine.c b/gcc/tree-ssa-ifcombine.c
index 9d243753666..3a6ea796bac 100644
--- a/gcc/tree-ssa-ifcombine.c
+++ b/gcc/tree-ssa-ifcombine.c
@@ -30,6 +30,11 @@ along with GCC; see the file COPYING3. If not see
#include "stor-layout.h"
#include "basic-block.h"
#include "tree-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c
index e46f20af0af..8ad5d9a9b93 100644
--- a/gcc/tree-ssa-live.c
+++ b/gcc/tree-ssa-live.c
@@ -27,6 +27,11 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-pretty-print.h"
#include "bitmap.h"
#include "sbitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-loop-ch.c b/gcc/tree-ssa-loop-ch.c
index df45c286790..07da4918ce8 100644
--- a/gcc/tree-ssa-loop-ch.c
+++ b/gcc/tree-ssa-loop-ch.c
@@ -24,6 +24,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tm_p.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c
index 6ea634c1781..6292576ec46 100644
--- a/gcc/tree-ssa-loop-im.c
+++ b/gcc/tree-ssa-loop-im.c
@@ -25,6 +25,13 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -43,9 +50,7 @@ along with GCC; see the file COPYING3. If not see
#include "params.h"
#include "tree-pass.h"
#include "flags.h"
-#include "hash-table.h"
#include "tree-affine.h"
-#include "pointer-set.h"
#include "tree-ssa-propagate.h"
#include "trans-mem.h"
diff --git a/gcc/tree-ssa-loop-ivcanon.c b/gcc/tree-ssa-loop-ivcanon.c
index 0fdc5ab585f..fd4ac70821c 100644
--- a/gcc/tree-ssa-loop-ivcanon.c
+++ b/gcc/tree-ssa-loop-ivcanon.c
@@ -40,6 +40,12 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c
index 476f3a1f286..1f5590a7ac2 100644
--- a/gcc/tree-ssa-loop-ivopts.c
+++ b/gcc/tree-ssa-loop-ivopts.c
@@ -70,6 +70,13 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -90,10 +97,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa.h"
#include "cfgloop.h"
#include "tree-pass.h"
-#include "ggc.h"
#include "insn-config.h"
-#include "pointer-set.h"
-#include "hash-table.h"
#include "tree-chrec.h"
#include "tree-scalar-evolution.h"
#include "cfgloop.h"
diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c
index 031b7c757e6..e1d55ffbeed 100644
--- a/gcc/tree-ssa-loop-manip.c
+++ b/gcc/tree-ssa-loop-manip.c
@@ -24,6 +24,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tm_p.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-loop-niter.c b/gcc/tree-ssa-loop-niter.c
index 9c61c3c97a4..05c3facd0e8 100644
--- a/gcc/tree-ssa-loop-niter.c
+++ b/gcc/tree-ssa-loop-niter.c
@@ -28,6 +28,11 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "intl.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -40,7 +45,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa-loop.h"
#include "dumpfile.h"
#include "cfgloop.h"
-#include "ggc.h"
#include "tree-chrec.h"
#include "tree-scalar-evolution.h"
#include "tree-data-ref.h"
diff --git a/gcc/tree-ssa-loop-prefetch.c b/gcc/tree-ssa-loop-prefetch.c
index f2b4e95f873..8cb74d58bb1 100644
--- a/gcc/tree-ssa-loop-prefetch.c
+++ b/gcc/tree-ssa-loop-prefetch.c
@@ -26,6 +26,10 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "tree-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-loop-unswitch.c b/gcc/tree-ssa-loop-unswitch.c
index 27f52b28025..200b076c691 100644
--- a/gcc/tree-ssa-loop-unswitch.c
+++ b/gcc/tree-ssa-loop-unswitch.c
@@ -24,6 +24,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tm_p.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c
index 20454f2edf4..3bbe7bf2b93 100644
--- a/gcc/tree-ssa-loop.c
+++ b/gcc/tree-ssa-loop.c
@@ -24,6 +24,10 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "tm_p.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "tree-ssa-loop-ivopts.h"
diff --git a/gcc/tree-ssa-math-opts.c b/gcc/tree-ssa-math-opts.c
index 21750312673..f77c016ec5d 100644
--- a/gcc/tree-ssa-math-opts.c
+++ b/gcc/tree-ssa-math-opts.c
@@ -90,6 +90,12 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "flags.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
@@ -105,7 +111,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa.h"
#include "tree-pass.h"
#include "alloc-pool.h"
-#include "basic-block.h"
#include "target.h"
#include "gimple-pretty-print.h"
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index 3508b34b77a..5d62377b801 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -28,6 +28,11 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "gimple-pretty-print.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "tree-phinodes.h"
@@ -37,7 +42,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-inline.h"
#include "timevar.h"
#include "dumpfile.h"
-#include "ggc.h"
#include "timevar.h"
#include "langhooks.h"
#include "diagnostic-core.h"
diff --git a/gcc/tree-ssa-phiopt.c b/gcc/tree-ssa-phiopt.c
index 188143269f5..11e565f2690 100644
--- a/gcc/tree-ssa-phiopt.c
+++ b/gcc/tree-ssa-phiopt.c
@@ -22,12 +22,16 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "hash-table.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "flags.h"
#include "tm_p.h"
#include "basic-block.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -42,7 +46,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-dfa.h"
#include "tree-pass.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "domwalk.h"
#include "cfgloop.h"
#include "tree-data-ref.h"
diff --git a/gcc/tree-ssa-phiprop.c b/gcc/tree-ssa-phiprop.c
index 389423b04c4..763d562344c 100644
--- a/gcc/tree-ssa-phiprop.c
+++ b/gcc/tree-ssa-phiprop.c
@@ -26,6 +26,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c
index 79eb0fbd914..f9ac337fef9 100644
--- a/gcc/tree-ssa-pre.c
+++ b/gcc/tree-ssa-pre.c
@@ -27,6 +27,13 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "tree-inline.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -42,7 +49,6 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "tree-dfa.h"
#include "tree-ssa.h"
-#include "hash-table.h"
#include "tree-iterator.h"
#include "alloc-pool.h"
#include "obstack.h"
diff --git a/gcc/tree-ssa-propagate.c b/gcc/tree-ssa-propagate.c
index b45ff4755c2..da583fdc6aa 100644
--- a/gcc/tree-ssa-propagate.c
+++ b/gcc/tree-ssa-propagate.c
@@ -30,6 +30,12 @@
#include "gimple-pretty-print.h"
#include "dumpfile.h"
#include "sbitmap.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -42,7 +48,6 @@
#include "tree-ssa.h"
#include "tree-ssa-propagate.h"
#include "langhooks.h"
-#include "vec.h"
#include "value-prof.h"
/* This file implements a generic value propagation engine based on
diff --git a/gcc/tree-ssa-reassoc.c b/gcc/tree-ssa-reassoc.c
index e8f56cf7099..9daf28f6d07 100644
--- a/gcc/tree-ssa-reassoc.c
+++ b/gcc/tree-ssa-reassoc.c
@@ -30,6 +30,13 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "tree-inline.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
@@ -47,9 +54,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-iterator.h"
#include "tree-pass.h"
#include "alloc-pool.h"
-#include "vec.h"
#include "langhooks.h"
-#include "pointer-set.h"
#include "cfgloop.h"
#include "flags.h"
#include "target.h"
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c
index 925fcf18503..e98652cee28 100644
--- a/gcc/tree-ssa-sccvn.c
+++ b/gcc/tree-ssa-sccvn.c
@@ -27,6 +27,13 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "tree-inline.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-ssa.h"
@@ -38,7 +45,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-dfa.h"
#include "tree-ssa.h"
#include "dumpfile.h"
-#include "hash-table.h"
#include "alloc-pool.h"
#include "flags.h"
#include "cfgloop.h"
diff --git a/gcc/tree-ssa-sink.c b/gcc/tree-ssa-sink.c
index 305882dd06f..947a58a13d1 100644
--- a/gcc/tree-ssa-sink.c
+++ b/gcc/tree-ssa-sink.c
@@ -27,6 +27,10 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "gimple-pretty-print.h"
#include "tree-inline.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-strlen.c b/gcc/tree-ssa-strlen.c
index 514b1b829e2..3f88ff65c81 100644
--- a/gcc/tree-ssa-strlen.c
+++ b/gcc/tree-ssa-strlen.c
@@ -25,6 +25,13 @@ along with GCC; see the file COPYING3. If not see
#include "stor-layout.h"
#include "hash-table.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index b8e79fabc2a..2851eae438d 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -22,7 +22,6 @@
#include "system.h"
#include "coretypes.h"
#include "tm.h"
-#include "ggc.h"
#include "obstack.h"
#include "bitmap.h"
#include "sbitmap.h"
@@ -31,6 +30,12 @@
#include "tree.h"
#include "stor-layout.h"
#include "stmt.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -42,14 +47,12 @@
#include "tree-dfa.h"
#include "tree-inline.h"
#include "diagnostic-core.h"
-#include "hash-table.h"
#include "function.h"
#include "tree-pass.h"
#include "alloc-pool.h"
#include "splay-tree.h"
#include "params.h"
#include "alias.h"
-#include "pointer-set.h"
/* The idea behind this analyzer is to generate set constraints from the
program, then solve the resulting constraints in order to generate the
diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c
index 2e1df69b7bd..d722a9bedfb 100644
--- a/gcc/tree-ssa-tail-merge.c
+++ b/gcc/tree-ssa-tail-merge.c
@@ -196,6 +196,12 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "flags.h"
#include "function.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -203,9 +209,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-phinodes.h"
#include "ssa-iterators.h"
#include "tree-into-ssa.h"
-#include "tree-ssa-alias.h"
#include "params.h"
-#include "hash-table.h"
#include "gimple-pretty-print.h"
#include "tree-ssa-sccvn.h"
#include "tree-dump.h"
diff --git a/gcc/tree-ssa-ter.c b/gcc/tree-ssa-ter.c
index 9b9e655b726..fa6a248c5ac 100644
--- a/gcc/tree-ssa-ter.c
+++ b/gcc/tree-ssa-ter.c
@@ -26,6 +26,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "gimple-pretty-print.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-threadedge.c b/gcc/tree-ssa-threadedge.c
index 7600d7b9914..9e541ab1f4e 100644
--- a/gcc/tree-ssa-threadedge.c
+++ b/gcc/tree-ssa-threadedge.c
@@ -30,6 +30,11 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "timevar.h"
#include "dumpfile.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-threadupdate.c b/gcc/tree-ssa-threadupdate.c
index 60c1815d529..ee0c838126e 100644
--- a/gcc/tree-ssa-threadupdate.c
+++ b/gcc/tree-ssa-threadupdate.c
@@ -24,6 +24,11 @@ along with GCC; see the file COPYING3. If not see
#include "flags.h"
#include "basic-block.h"
#include "function.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
@@ -33,7 +38,6 @@ along with GCC; see the file COPYING3. If not see
#include "ssa-iterators.h"
#include "dumpfile.h"
#include "cfgloop.h"
-#include "hash-table.h"
#include "dbgcnt.h"
#include "tree-cfg.h"
#include "tree-pass.h"
diff --git a/gcc/tree-ssa-uncprop.c b/gcc/tree-ssa-uncprop.c
index 62ffe421f29..44194b83ae6 100644
--- a/gcc/tree-ssa-uncprop.c
+++ b/gcc/tree-ssa-uncprop.c
@@ -27,6 +27,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "function.h"
+#include "hash-table.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa-uninit.c b/gcc/tree-ssa-uninit.c
index 3b8d1df9c85..4fd5fb8cddb 100644
--- a/gcc/tree-ssa-uninit.c
+++ b/gcc/tree-ssa-uninit.c
@@ -30,6 +30,10 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-pretty-print.h"
#include "bitmap.h"
#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index 1b4a383062b..0fee45f11fc 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -26,12 +26,16 @@ along with GCC; see the file COPYING3. If not see
#include "flags.h"
#include "tm_p.h"
#include "target.h"
-#include "ggc.h"
#include "langhooks.h"
#include "basic-block.h"
#include "function.h"
#include "gimple-pretty-print.h"
#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c
index 9d88b4cf576..4e1732dd8b3 100644
--- a/gcc/tree-ssanames.c
+++ b/gcc/tree-ssanames.c
@@ -23,6 +23,11 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "tree.h"
#include "stor-layout.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-ssa.h"
#include "tree-phinodes.h"
diff --git a/gcc/tree-stdarg.c b/gcc/tree-stdarg.c
index 982937462db..5a22cfd6d96 100644
--- a/gcc/tree-stdarg.c
+++ b/gcc/tree-stdarg.c
@@ -28,6 +28,11 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-pretty-print.h"
#include "target.h"
#include "bitmap.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/tree-streamer-in.c b/gcc/tree-streamer-in.c
index 560d4f8f4f7..a43106d9fe4 100644
--- a/gcc/tree-streamer-in.c
+++ b/gcc/tree-streamer-in.c
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "tree.h"
#include "stringpool.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-streamer.h"
#include "data-streamer.h"
diff --git a/gcc/tree-streamer-out.c b/gcc/tree-streamer-out.c
index 275c22cd7aa..51a2c2b5203 100644
--- a/gcc/tree-streamer-out.c
+++ b/gcc/tree-streamer-out.c
@@ -26,6 +26,11 @@ along with GCC; see the file COPYING3. If not see
#include "diagnostic.h"
#include "tree.h"
#include "stor-layout.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "tree-streamer.h"
#include "data-streamer.h"
diff --git a/gcc/tree-streamer.c b/gcc/tree-streamer.c
index 8534f4a9b8b..aa06b0bbfe6 100644
--- a/gcc/tree-streamer.c
+++ b/gcc/tree-streamer.c
@@ -24,6 +24,11 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tree.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "streamer-hooks.h"
#include "tree-streamer.h"
diff --git a/gcc/tree-switch-conversion.c b/gcc/tree-switch-conversion.c
index 494d48e5c46..f6b17b846dd 100644
--- a/gcc/tree-switch-conversion.c
+++ b/gcc/tree-switch-conversion.c
@@ -33,6 +33,10 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
#include "varasm.h"
#include "stor-layout.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c
index 9a30400c0d9..37603b2757c 100644
--- a/gcc/tree-tailcall.c
+++ b/gcc/tree-tailcall.c
@@ -26,6 +26,10 @@ along with GCC; see the file COPYING3. If not see
#include "tm_p.h"
#include "basic-block.h"
#include "function.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index c1eb455ae8b..5e3b5209e68 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -24,13 +24,17 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "tm_p.h"
#include "target.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-vect-generic.c b/gcc/tree-vect-generic.c
index fc1c7b14fb9..87130bd5a9f 100644
--- a/gcc/tree-vect-generic.c
+++ b/gcc/tree-vect-generic.c
@@ -24,6 +24,12 @@ along with GCC; see the file COPYING3. If not see
#include "stor-layout.h"
#include "tm.h"
#include "langhooks.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify-me.h"
@@ -34,7 +40,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-iterator.h"
#include "tree-pass.h"
#include "flags.h"
-#include "ggc.h"
#include "diagnostic.h"
#include "target.h"
diff --git a/gcc/tree-vect-loop-manip.c b/gcc/tree-vect-loop-manip.c
index 289e852ef8d..f2fdc99ed04 100644
--- a/gcc/tree-vect-loop-manip.c
+++ b/gcc/tree-vect-loop-manip.c
@@ -24,10 +24,13 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index bcd351621c9..c91c2e1b427 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -24,11 +24,14 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c
index de854e1a443..7823cc3932d 100644
--- a/gcc/tree-vect-patterns.c
+++ b/gcc/tree-vect-patterns.c
@@ -22,12 +22,16 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "target.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
index c2e49124168..680a6d8e547 100644
--- a/gcc/tree-vect-slp.c
+++ b/gcc/tree-vect-slp.c
@@ -24,12 +24,15 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "target.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index 1aede48dc77..72dfacd3151 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -24,12 +24,16 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "target.h"
#include "basic-block.h"
#include "gimple-pretty-print.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c
index 7416aaa6135..c11f8a8c1b7 100644
--- a/gcc/tree-vectorizer.c
+++ b/gcc/tree-vectorizer.c
@@ -59,10 +59,14 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "dumpfile.h"
#include "tm.h"
-#include "ggc.h"
#include "tree.h"
#include "stor-layout.h"
#include "tree-pretty-print.h"
+#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
@@ -74,7 +78,6 @@ along with GCC; see the file COPYING3. If not see
#include "cfgloop.h"
#include "tree-vectorizer.h"
#include "tree-pass.h"
-#include "hash-table.h"
#include "tree-ssa-propagate.h"
#include "dbgcnt.h"
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 4a24c668d57..c47b8e6e313 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -22,12 +22,17 @@ along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#include "tm.h"
-#include "ggc.h"
#include "flags.h"
#include "tree.h"
#include "stor-layout.h"
#include "calls.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-fold.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-walk.h"
diff --git a/gcc/tree.c b/gcc/tree.c
index 153243bff0b..e81662e7726 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -41,7 +41,6 @@ along with GCC; see the file COPYING3. If not see
#include "function.h"
#include "obstack.h"
#include "toplev.h" /* get_random_seed */
-#include "ggc.h"
#include "hashtab.h"
#include "filenames.h"
#include "output.h"
@@ -52,6 +51,11 @@ along with GCC; see the file COPYING3. If not see
#include "tree-iterator.h"
#include "basic-block.h"
#include "bitmap.h"
+#include "pointer-set.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimplify.h"
@@ -63,7 +67,6 @@ along with GCC; see the file COPYING3. If not see
#include "expr.h"
#include "tree-dfa.h"
#include "params.h"
-#include "pointer-set.h"
#include "tree-pass.h"
#include "langhooks-def.h"
#include "diagnostic.h"
diff --git a/gcc/tsan.c b/gcc/tsan.c
index 9330074ce30..4efcfe565aa 100644
--- a/gcc/tsan.c
+++ b/gcc/tsan.c
@@ -27,6 +27,10 @@ along with GCC; see the file COPYING3. If not see
#include "intl.h"
#include "tm.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
diff --git a/gcc/ubsan.c b/gcc/ubsan.c
index de5dc40d659..5effd55acfb 100644
--- a/gcc/ubsan.c
+++ b/gcc/ubsan.c
@@ -26,12 +26,14 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "cgraph.h"
#include "tree-pass.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"
#include "gimple-walk.h"
#include "hashtab.h"
-#include "pointer-set.h"
#include "output.h"
#include "tm_p.h"
#include "toplev.h"
diff --git a/gcc/value-prof.c b/gcc/value-prof.c
index 2fe12b603f2..d5093544751 100644
--- a/gcc/value-prof.c
+++ b/gcc/value-prof.c
@@ -34,7 +34,11 @@ along with GCC; see the file COPYING3. If not see
#include "recog.h"
#include "optabs.h"
#include "regs.h"
-#include "ggc.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "tree-eh.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimplify.h"
#include "gimple-iterator.h"
@@ -51,7 +55,6 @@ along with GCC; see the file COPYING3. If not see
#include "gcov-io.h"
#include "timevar.h"
#include "dumpfile.h"
-#include "pointer-set.h"
#include "profile.h"
#include "data-streamer.h"
#include "builtins.h"
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index 591747be516..7ebbd7fe67a 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -93,17 +93,17 @@
#include "tree.h"
#include "varasm.h"
#include "stor-layout.h"
-#include "gimple.h"
+#include "pointer-set.h"
+#include "hash-table.h"
+#include "basic-block.h"
#include "tm_p.h"
#include "hard-reg-set.h"
-#include "basic-block.h"
#include "flags.h"
#include "insn-config.h"
#include "reload.h"
#include "sbitmap.h"
#include "alloc-pool.h"
#include "fibheap.h"
-#include "hash-table.h"
#include "regs.h"
#include "expr.h"
#include "tree-pass.h"
@@ -115,7 +115,6 @@
#include "params.h"
#include "diagnostic.h"
#include "tree-pretty-print.h"
-#include "pointer-set.h"
#include "recog.h"
#include "tm_p.h"
#include "alias.h"
diff --git a/gcc/varpool.c b/gcc/varpool.c
index f79cf49cc55..968abd0678a 100644
--- a/gcc/varpool.c
+++ b/gcc/varpool.c
@@ -28,12 +28,11 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "diagnostic-core.h"
#include "hashtab.h"
-#include "ggc.h"
#include "timevar.h"
#include "debug.h"
#include "target.h"
#include "output.h"
-#include "gimple.h"
+#include "gimple-expr.h"
#include "flags.h"
/* List of hooks triggered on varpool_node events. */
diff --git a/gcc/vtable-verify.c b/gcc/vtable-verify.c
index 8d692e62e11..46c5621509d 100644
--- a/gcc/vtable-verify.c
+++ b/gcc/vtable-verify.c
@@ -138,6 +138,10 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "tree.h"
#include "basic-block.h"
+#include "tree-ssa-alias.h"
+#include "internal-fn.h"
+#include "gimple-expr.h"
+#include "is-a.h"
#include "gimple.h"
#include "gimple-iterator.h"
#include "gimple-ssa.h"