1. 15 Jan, 2015 1 commit
    • dojump.h: New header file. · 36566b39
      2015-10-15  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
      
      	* dojump.h: New header file.
      	* explow.h: Likewise.
      	* expr.h: Remove includes.
      	Move expmed.c prototypes to expmed.h.
      	Move dojump.c prototypes to dojump.h.
      	Move alias.c prototypes to alias.h.
      	Move explow.c prototypes to explow.h.
      	Move calls.c prototypes to calls.h.
      	Move emit-rtl.c prototypes to emit-rtl.h.
      	Move varasm.c prototypes to varasm.h.
      	Move stmt.c prototypes to stmt.h.
      	(saved_pending_stack_adjust): Move to dojump.h.
      	(adjust_address): Move to explow.h.
      	(adjust_address_nv): Move to emit-rtl.h.
      	(adjust_bitfield_address): Likewise.
      	(adjust_bitfield_address_size): Likewise.
      	(adjust_bitfield_address_nv): Likewise.
      	(adjust_automodify_address_nv): Likewise.
      	* explow.c (expr_size): Move to expr.c.
      	(int_expr_size): Likewise.
      	(tree_expr_size): Likewise.
      	Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
      	* genemit.c (main): Generate includes statistics.h, real.h, fixed-value.h,
      	insn-config.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h.
      	* genopinit.c (main): Generate includes hashtab.h, hard-reg-set.h, function.h,
      	statistics.h, real.h, fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h,
      	stmt.h.
      	* genoutput.c (main): Generate includes hashtab.h, statistics.h, real.h,
      	fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h.
      	* genemit.c (open_base_files): Generate includes flags.h, statistics.h, real.h,
      	fixed-value.h, tree.h, expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h,
      	stmt.h.
      	* config/tilepro/gen-mul-tables.cc: Generate includes hashtab.h, hash-set.h, vec.h,
      	machmode.h, tm.h, hard-reg-set.h, input.h, function.h, rtl.h, flags.h, statistics.h,
      	double-int.h, real.h, fixed-value.h, alias.h, wide-int.h, inchash.h, tree.h,
      	insn-config.h, expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h.
      	* config/tilegx/mul-tables.c: Include alias.h calls.h dojump.h
      	double-int.h emit-rtl.h explow.h expmed.h fixed-value.h flags.h
      	function.h hard-reg-set.h hash-set.h hashtab.h inchash.h input.h
      	insn-config.h machmode.h real.h rtl.h statistics.h stmt.h symtab.h
      	tm.h tree.h varasm.h vec.h wide-int.h.
      	* rtlhooks.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h
      	hash-set.h hashtab.h inchash.h input.h insn-config.h machmode.h
      	real.h statistics.h stmt.h tree.h varasm.h vec.h wide-int.h.
      	* cfgloopanal.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h flags.h inchash.h insn-config.h
      	real.h statistics.h stmt.h tree.h varasm.h wide-int.h.
      	* loop-iv.c: Likewise.
      	* lra-assigns.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h flags.h inchash.h real.h
      	statistics.h stmt.h tree.h varasm.h wide-int.h.
      	* lra-constraints.c: Likewise.
      	* lra-eliminations.c: Likewise.
      	* lra-lives.c: Likewise.
      	* lra-remat.c: Likewise.
      	* bt-load.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h inchash.h insn-config.h real.h
      	statistics.h stmt.h tree.h varasm.h wide-int.h.
      	* hw-doloop.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-emit.c: Likewise.
      	* loop-doloop.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* reload.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h inchash.h real.h rtl.h
      	statistics.h stmt.h tree.h varasm.h wide-int.h.
      	* caller-save.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h inchash.h real.h statistics.h
      	stmt.h tree.h varasm.h wide-int.h.
      	* combine-stack-adj.c: Likewise.
      	* cse.c: Likewise.
      	* ddg.c: Likewise.
      	* ifcvt.c: Likewise.
      	* ira-costs.c: Likewise.
      	* jump.c: Likewise.
      	* lra-coalesce.c: Likewise.
      	* lra-spills.c: Likewise.
      	* profile.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h insn-config.h real.h statistics.h
      	stmt.h varasm.h wide-int.h.
      	* lra.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
      	varasm.h.
      	* config/sh/sh_treg_combine.cc: Include alias.h calls.h dojump.h
      	double-int.h explow.h expmed.h fixed-value.h flags.h real.h
      	statistics.h stmt.h varasm.h wide-int.h.
      	* reorg.c: Include alias.h calls.h dojump.h double-int.h explow.h
      	expmed.h fixed-value.h inchash.h real.h statistics.h stmt.h tree.h
      	varasm.h wide-int.h.
      	* reload1.c: Include alias.h calls.h dojump.h double-int.h explow.h
      	expmed.h fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
      	* config/tilegx/tilegx.c: Include alias.h dojump.h double-int.h
      	emit-rtl.h explow.h expmed.h fixed-value.h flags.h real.h
      	statistics.h stmt.h.
      	* config/tilepro/tilepro.c: Likewise.
      	* config/mmix/mmix.c: Include alias.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h real.h statistics.h stmt.h.
      	* config/pdp11/pdp11.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      	* config/lm32/lm32.c: Include alias.h dojump.h double-int.h emit-rtl.h
      	explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
      	varasm.h.
      	* tree-chkp.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
      	insn-config.h real.h rtl.h statistics.h stmt.h tm.h.
      	* cilk-common.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
      	insn-config.h real.h rtl.h statistics.h stmt.h tm.h varasm.h.
      	* rtl-chkp.c: Likewise.
      	* tree-chkp-opt.c: Likewise.
      	* config/arm/arm-builtins.c: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
      	insn-config.h real.h statistics.h stmt.h varasm.h.
      	* ipa-icf.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
      	statistics.h stmt.h.
      	* tree-vect-data-refs.c: Likewise.
      	* graphite-sese-to-poly.c: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
      	rtl.h statistics.h stmt.h varasm.h.
      	* internal-fn.c: Likewise.
      	* ipa-icf-gimple.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tsan.c: Likewise.
      	* targhooks.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h
      	stmt.h.
      	* config/sh/sh-mem.cc: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
      	statistics.h stmt.h varasm.h.
      	* loop-unroll.c: Likewise.
      	* ubsan.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h
      	stmt.h varasm.h.
      	* dse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h function.h hashtab.h statistics.h stmt.h varasm.h.
      	* tree-switch-conversion.c: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
      	statistics.h stmt.h.
      	* generic-match-head.c: Include calls.h dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
      	statistics.h stmt.h varasm.h.
      	* gimple-match-head.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-section-in.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-sra.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h insn-config.h real.h rtl.h stmt.h varasm.h.
      	* stor-layout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h.
      	* varasm.c: Likewise.
      	* coverage.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h
      	varasm.h.
      	* init-regs.c: Likewise.
      	* ira.c: Likewise.
      	* omp-low.c: Likewise.
      	* stack-ptr-mod.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-complex.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h insn-config.h rtl.h statistics.h stmt.h
      	varasm.h.
      	* dwarf2cfi.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h insn-config.h statistics.h stmt.h varasm.h.
      	* shrink-wrap.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h.
      	* recog.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h varasm.h.
      	* tree-ssa-phiopt.c: Likewise.
      	* config/darwin.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h statistics.h stmt.h.
      	* config/fr30/fr30.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* expr.c: Likewise.
      	* final.c: Likewise.
      	* optabs.c: Likewise.
      	* passes.c: Likewise.
      	* simplify-rtx.c: Likewise.
      	* stmt.c: Likewise.
      	* toplev.c: Likewise.
      	* var-tracking.c: Likewise.
      	* gcse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
      	* lower-subreg.c: Likewise.
      	* postreload-gcse.c: Likewise.
      	* ree.c: Likewise.
      	* reginfo.c: Likewise.
      	* store-motion.c: Likewise.
      	* combine.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h stmt.h varasm.h.
      	* emit-rtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h statistics.h stmt.h.
      	* dojump.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
      	* except.c: Likewise.
      	* explow.c: Likewise.
      	* tree-dfa.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h rtl.h statistics.h stmt.h
      	varasm.h.
      	* gimple-fold.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h rtl.h statistics.h varasm.h.
      	* tree-ssa-structalias.c: Likewise.
      	* cfgexpand.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h statistics.h.
      	* calls.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h statistics.h stmt.h.
      	* bb-reorder.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
      	* cfgbuild.c: Likewise.
      	* function.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h real.h rtl.h statistics.h stmt.h.
      	* cfgrtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
      	* dbxout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h real.h statistics.h stmt.h.
      	* auto-inc-dec.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h real.h statistics.h stmt.h varasm.h.
      	* cprop.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* postreload.c: Likewise.
      	* ccmp.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
      	flags.h function.h hard-reg-set.h hashtab.h insn-config.h real.h
      	statistics.h stmt.h varasm.h.
      	* gimple-ssa-strength-reduction.c: Include calls.h dojump.h emit-rtl.h
      	explow.h fixed-value.h flags.h hashtab.h insn-config.h real.h
      	rtl.h statistics.h stmt.h varasm.h.
      	* tree-ssa-loop-ivopts.c: Include calls.h dojump.h emit-rtl.h explow.h
      	fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h stmt.h
      	varasm.h.
      	* expmed.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
      	function.h hard-reg-set.h hashtab.h real.h statistics.h stmt.h
      	varasm.h.
      	* target-globals.c: Include calls.h dojump.h emit-rtl.h explow.h
      	fixed-value.h function.h hashtab.h real.h statistics.h stmt.h
      	varasm.h.
      	* tree-ssa-address.c: Include calls.h dojump.h emit-rtl.h explow.h
      	fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
      	* cfgcleanup.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
      	function.h real.h statistics.h stmt.h varasm.h.
      	* alias.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
      	insn-config.h real.h statistics.h stmt.h.
      	* dwarf2out.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
      	statistics.h stmt.h.
      	* config/nvptx/nvptx.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h hard-reg-set.h insn-config.h real.h
      	statistics.h stmt.h varasm.h.
      	* gimplify.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	flags.h hashtab.h insn-config.h real.h rtl.h statistics.h.
      	* asan.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	flags.h hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h.
      	* ipa-devirt.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
      	statistics.h stmt.h varasm.h.
      	* ipa-polymorphic-call.c: Likewise.
      	* config/aarch64/aarch64.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h
      	stmt.h.
      	* config/c6x/c6x.c: Likewise.
      	* config/aarch64/aarch64-builtins.c: Include dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
      	statistics.h stmt.h varasm.h.
      	* ipa-prop.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h varasm.h.
      	* ipa-split.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* config/nds32/nds32-cost.c: Include dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h hashtab.h insn-config.h real.h statistics.h
      	stmt.h.
      	* config/nds32/nds32-fp-as-gp.c: Likewise.
      	* config/nds32/nds32-intrinsic.c: Likewise.
      	* config/nds32/nds32-isr.c: Likewise.
      	* config/nds32/nds32-md-auxiliary.c: Likewise.
      	* config/nds32/nds32-memory-manipulation.c: Likewise.
      	* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
      	* config/nds32/nds32-predicates.c: Likewise.
      	* config/nds32/nds32.c: Likewise.
      	* config/cris/cris.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h statistics.h.
      	* config/alpha/alpha.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h statistics.h stmt.h.
      	* config/arm/arm.c: Likewise.
      	* config/avr/avr.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/h8300/h8300.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32r/m32r.c: Likewise.
      	* config/m68k/m68k.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/mn10300/mn10300.c: Likewise.
      	* config/moxie/moxie.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/rl78/rl78.c: Likewise.
      	* config/rx/rx.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/v850/v850.c: Likewise.
      	* config/vax/vax.c: Likewise.
      	* config/cr16/cr16.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
      	* config/msp430/msp430.c: Likewise.
      	* predict.c: Likewise.
      	* value-prof.c: Likewise.
      	* config/epiphany/epiphany.c: Include dojump.h emit-rtl.h explow.h
      	expmed.h fixed-value.h hashtab.h statistics.h stmt.h.
      	* config/microblaze/microblaze.c: Likewise.
      	* config/nios2/nios2.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* tree.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	insn-config.h real.h rtl.h statistics.h stmt.h.
      	* cgraph.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	insn-config.h real.h statistics.h stmt.h.
      	* fold-const.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
      	* tree-inline.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
      	* builtins.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
      	real.h statistics.h stmt.h.
      	* config/arc/arc.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h statistics.h stmt.h.
      	* config/visium/visium.c: Include dojump.h emit-rtl.h explow.h expmed.h
      	stmt.h.
      
      java/	
      	* builtins.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
      	fixed-value.h function.h hard-reg-set.h hashtab.h insn-config.h
      	real.h statistics.h stmt.h varasm.h.
      
      From-SVN: r219655
      Prathamesh Kulkarni committed
  2. 09 Jan, 2015 1 commit
    • genattrtab.c (write_header): Include hash-set.h... · 40e23961
      2015-01-09  Michael Collison  <michael.collison@linaro.org>
      	
      	* genattrtab.c (write_header): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-attrtab.c.
      	* genautomata.c (main) : Include hash-set.h, macInclude hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-automata.c.
      	* genemit.c (main): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-emit.c.
      	* gengtype.c (open_base_files): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	gtype-desc.c.
      	* genopinit.c (main): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-opinit.c.
      	* genoutput.c (output_prologue): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-output.c.
      	* genpeep.c (main): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-peep.c.
      	* genpreds.c (write_insn_preds_c): Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	insn-preds.c.
      	* optc-save-gen-awk: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h when generating
      	options-save.c.
      	* opth-gen.awk: Change include guard from GCC_C_COMMON_H to GCC_C_COMMON_C
      	when generating options.h.
      	* ada/gcc-interface/cuintp.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h,
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* ada/gcc-interface/decl.c: ditto.
      	* ada/gcc-interface/misc.c: ditto.
      	* ada/gcc-interface/targtyps.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h,
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* ada/gcc-interface/trans.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, real.h,
      	fold-const.h, wide-int.h, inchash.h due to
      	flattening of tree.h.
      	* ada/gcc-interface/utils.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h,
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* ada/gcc-interface/utils2.c: ditto.
      	* alias.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* asan.c: ditto.
      	* attribs.c: ditto.
      	* auto-inc-dec.c: ditto.
      	* auto-profile.c: ditto
      	* bb-reorder.c: ditto.
      	* bt-load.c: Include symtab.h due to flattening of tree.h.
      	* builtins.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* c/c-array-notation.c: ditto.
      	* c/c-aux-info.c: ditto.
      	* c/c-convert.c: ditto.
      	* c/c-decl.c: ditto.
      	* c/c-errors.c: ditto.
      	* c/c-lang.c: dittoxs.
      	* c/c-objc-common.c: ditto.
      	* c/c-parser.c: ditto.
      	* c/c-typeck.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, inchash.h, real.h and
      	fixed-value.h due to flattening of tree.h.
      	* calls.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* ccmp.c: ditto.
      	* c-family/array-notation-common.c: ditto.
      	* c-family/c-ada-spec.c: ditto.
      	* c-family/c-cilkplus.c: ditto.
      	* c-family/c-common.c: Include input.h due to flattening of tree.h.
      	Define macro GCC_C_COMMON_C.
      	* c-family/c-common.h: Flatten tree.h header files into c-common.h.
      	Remove include of tree-core.h.
      	* c-family/c-cppbuiltin.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* c-family/c-dump.c: ditto.
      	* c-family/c-format.c: Flatten tree.h header files into c-common.h.
      	* c-family/c-cppbuiltin.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* c-family/c-dump.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* c-family/c-format.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, inchash.h and real.h due to
      	flattening of tree.h.
      	* c-family/c-gimplify.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* c-family/cilk.c: ditto.
      	* c-family/c-lex.c: ditto.
      	* c-family/c-omp.c: ditto.
      	* c-family/c-opts.c: ditto.
      	* c-family/c-pch.c: ditto.
      	* c-family/c-ppoutput.c: ditto.
      	* c-family/c-pragma.c: ditto.
      	* c-family/c-pretty-print.c: ditto.
      	* c-family/c-semantics.c: ditto.
      	* c-family/c-ubsan.c: ditto.
      	* c-family/stub-objc.c: ditto.
      	* cfgbuild.c: ditto.
      	* cfg.c: ditto.
      	* cfgcleanup.c: ditto.
      	* cfgexpand.c: ditto.
      	* cfghooks.c: ditto.
      	* cfgloop.c: Include symtab.h, fold-const.h, and
      	inchash.h due to flattening of tree.h.
      	* cfgloopmanip.c: ditto.
      	* cfgrtl.c:  Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* cgraphbuild.c: ditto.
      	* cgraph.c: ditto.
      	* cgraphclones.c: ditto.
      	* cgraphunit.c: ditto.
      	* cilk-common.c: ditto.
      	* combine.c: ditto.
      	* combine-stack-adj.c: Include symbol.h due to flattening of tree.h.
      	* config/aarch64/aarch64-builtins.c:  Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/aarch64/aarch64.c: ditto.
      	* config/alpha/alpha.c: ditto.
      	* config/arc/arc.c: ditto.
      	* config/arm/aarch-common.c: ditto.
      	* config/arm/arm-builtins.c: ditto.
      	* config/arm/arm.c: ditto.
      	* config/arm/arm-c.c: ditto.
      	* config/avr/avr.c: ditto.
      	* config/avr/avr-c.c: ditto.
      	* config/avr/avr-log.c: ditto.
      	* config/bfin/bfin.c: ditto.
      	* config/c6x/c6x.c: ditto.
      	* config/cr16/cr16.c: ditto.
      	* config/cris/cris.c: ditto.
      	* config/darwin.c: ditto.
      	* config/darwin-c.c: ditto.
      	* config/default-c.c: ditto.
      	* config/epiphany/epiphany.c: ditto.
      	* config/fr30/fr30.c: ditto.
      	* config/frv/frv.c: ditto.
      	* config/glibc-c.c: ditto.
      	* config/h8300/h8300.c: ditto.
      	* config/i386/i386.c: ditto.
      	* config/i386/i386-c.c: ditto.
      	* config/i386/msformat.c: ditto.
      	* config/i386/winnt.c: ditto.
      	* config/i386/winnt-cxx.c: ditto.
      	* config/i386/winnt-stubs.c: ditto.
      	* config/ia64/ia64.c: ditto.
      	* config/ia64/ia64-c.c: ditto.
      	* config/iq2000/iq2000.c: ditto.
      	* config/lm32/lm32.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* config/m32c/m32c.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/m32c/m32c-pragma.c: ditto.
      	* config/m32c/m32cr.c: ditto.
      	* config/m68/m68k.c: ditto.
      	* config/mcore/mcore.c: ditto.
      	* config/mep/mep.c: ditto.
      	* config/mep/mep-pragma.c: ditto.
      	* config/microblaze/microblaze.c: ditto.
      	* config/microblaze/microblaze-c.c: ditto.
      	* config/mips/mips.c: ditto.
      	* config/mmix/mmix.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* config/mn10300/mn10300.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/moxie/moxie.c: ditto.
      	* config/msp430/msp430.c: ditto.
      	* config/msp430/msp430-c.c: ditto.
      	* config/nds32/nds32.c: ditto.
      	* config/nds32/nds32-cost.c: ditto.
      	* config/nds32/nds32-fp-as-gp.c: ditto.
      	* config/nds32/nds32-intrinsic.c: ditto.
      	* config/nds32/nds32-isr.c: ditto.
      	* config/nds32/nds32-md-auxillary.c: ditto.
      	* config/nds32/nds32-memory-manipulationx.c: ditto.
      	* config/nds32/nds32-pipelines-auxillary.c: ditto.
      	* config/nds32/nds32-predicates.c: ditto.
      	* config/nios2/nios2.c: ditto.
      	* config/nvptx/nvptx.c: ditto.
      	* config/pa/pa.c: ditto.
      	* config/pdp11/pdp11x.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* config/rl78/rl78.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/rl78/rl78-cx.c: ditto.
      	* config/rs6000/rs6000.c: ditto.
      	* config/rs6000/rs6000-c.c: ditto.
      	* config/rx/rx.c: ditto.
      	* config/s390/s390.c: ditto.
      	* config/sh/sh.c: ditto.
      	* config/sh/sc.c: ditto.
      	* config/sh/sh-mem.cc: ditto.
      	* config/sh/sh_treg_combine.cc: Include symtab.h, inchash.h and tree.h
      	due to flattening of tree.h.
      	Remove include of tree-core.h.
      	* config/sol2.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/sol2-c.c: ditto.
      	* config/sol2-cxx.c: ditto.
      	* config/sol2-stubs.c: ditto.
      	* config/sparc/sparc.c: ditto.
      	* config/sparc/sparc-cx.c: ditto.
      	* config/spu/spu.c: ditto.
      	* config/spu/spu-c.c: ditto
      	* config/storym16/stormy16.c: ditto.
      	* config/tilegx/tilegx.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* config/tilepro/gen-mul-tables.cc: Include symtab.h in generated file.
      	* config/tilegx/tilegx-c.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/tilepro/tilepro.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* config/tilepro/tilepro-c.c: Include hash-set.h, machmode.h,
      	vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
      	fold-const.h, wide-int.h, and inchash.h due to
      	flattening of tree.h.
      	* config/v850/v850.c: ditto.
      	* config/v850/v850-c.c: ditto.
      	* config/vax/vax.c: ditto.
      	* config/vms/vms.c: ditto.
      	* config/vms/vms-c.c: ditto.
      	* config/vxworks.c: ditto.
      	* config/winnt-c.c: ditto.
      	* config/xtensa/xtensa.c: Include symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* coverage.c: ditto.
      	* cp/call.c: ditto.
      	* cp/class.c: ditto.
      	* cp/constexpr.c: ditto.
      	* cp/cp-array-notation.c: ditto.
      	* cp/cp-gimplify.c: ditto.
      	* cp/cp-lang.c: ditto.
      	* cp/cp-objcp-common.c: ditto.
      	* cp/cvt.c: ditto.
      	* cp/decl2.c: ditto.
      	* cp/decl.c: ditto.
      	* cp/dump.c: ditto.
      	* cp/error.c: ditto.
      	* cp/except.c: ditto.
      	* cp/expr.c: ditto.
      	* cp/friend.c: ditto.
      	* cp/init.c: ditto.
      	* cp/lambda.c: ditto.
      	* cp/lex.c: ditto.
      	* cp/mangle.c: ditto.
      	* cp/name-lookup.c: ditto.
      	* cp/optimize.c: ditto.
      	* cp/parser.c: ditto.
      	* cp/pt.c: ditto.
      	* cp/ptree.c: ditto.
      	* cp/repo.c: ditto.
      	* cp/rtti.c: ditto.
      	* cp/search.c: ditto.
      	* cp/semantics.c: ditto.
      	* cp/tree.c: ditto.
      	* cp/typeck2.c: ditto.
      	* cp/typeck.c: ditto.
      	* cppbuiltin.c: ditto.
      	* cprop.c: ditto.
      	* cse.c: Add include of symtab.h due to flattening of tree.h.
      	* cselib.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* data-streamer.c: ditto.
      	* data-streamer-in.c: ditto.
      	* data-streamer-out.c: ditto.
      	* dbxout.c: ditto.
      	* dce.c: ditto.
      	* ddg.c: Add include of symtab.h due to flattening of tree.h.
      	* debug.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* dfp.c: ditto.
      	* df-scan.c: ditto.
      	* dojump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, inchash.h and real.h due to flattening of tree.h.
      	* double-int.c: ditto.
      	* dse.c: ditto.
      	* dumpfile.c: ditto.
      	* dwarf2asm.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, inchash.h and real.h due to flattening of tree.h.
      	* dwarf2cfi.c: ditto.
      	* dwarf2out.c: ditto.
      	* emit-rtl.c: ditto.
      	* except.c: ditto.
      	* explow.c: ditto.
      	* expmed.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* expr.c: ditto.
      	* final.c: ditto.
      	* fixed-value.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, inchash.h and fixed-value.h due to flattening of tree.h.
      	* fold-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	Relocate inline function convert_to_ptrofftype_loc from tree.h.
      	Relocate inline function fold_build_pointer_plus_loc from tree.h.
      	Relocate inline function fold_build_pointer_plus_hwi_loc from tree.h.
      	* fold-const.h: Relocate macro convert_to_ptrofftype from tree.h.
      	Relocate macro fold_build_pointer_plus to relocate from tree.h.h.
      	Relocate macro fold_build_pointer_plus_hwi from tree.h.
      	Add prototype for convert_to_ptrofftype_loc relocated from tree.h.
      	Add prototype for fold_build_pointer_plus_loc relocated from tree.h.
      	Add prototype for fold_build_pointer_plus_hwi_loc relocated from tree.h.
      	* fortran/convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/decl.c: ditto.
      	* fortran/f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/iresolve.c: ditto.
      	* fortran/match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/options.c: ditto.
      	* fortran/target-memory.c: Include hash-set.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans-const.c: ditto.
      	* fortran/trans-decl.c: ditto.
      	* fortran/trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, inchash.h and real.h due to flattening of tree.h.
      	* fortran/trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* fortran/trans-openmp.c: ditto.
      	* fortran/trans-stmt.c: ditto.
      	* fortran/trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, inchash.h and real.h due to flattening of tree.h.
      	* function.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* gcc-plugin.h: Include statistics.h, double-int.h, real.h, fixed-value.h,
      	alias.h, flags.h, and symtab.h due to flattening of tree.h
      	* gcse.c: ditto.
      	* generic-match-head.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ggc-page.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* gimple-builder.c: ditto.
      	* gimple.c: ditto.
      	* gimple-expr.c: ditto.
      	* gimple-fold.c: ditto.
      	* gimple-iterator.c: ditto.
      	* gimple-low.c: ditto.
      	* gimple-match-head.c: ditto.
      	* gimple-pretty-print.c: ditto.
      	* generic-ssa-isolate-paths.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* gimple-ssa-strength-reduction.c: ditto.
      	* gimple-streamer-in.c: ditto.
      	* gimple-streamer-out.c: ditto.
      	* gimple-walk.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* gimplify.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* gimplify-me.c: ditto.
      	* go/go-gcc.cc: ditto.
      	* go/go-lang.c: ditto.
      	* go/gdump.c: ditto.
      	* graphite-blocking.c: ditto.
      	* graphite.c: ditto.
      	* graphite-dependencies.c: ditto.
      	* graphite-interchange.c: ditto.
      	* graphite-isl-ast-to-gimple.c: ditto.
      	* graphite-optimize-isl.c: ditto.
      	* graphite-poly.c: ditto.
      	* graphite-scop-detection.c: ditto.
      	* graphite-sese-to-poly.c: ditto.
      	* hw-doloop.c: Include symtab.h due to flattening of tree.h.
      	* ifcvt.c: ditto.
      	* init-regs.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* internal-fc.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h,options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa.c: ditto.
      	* ipa-chkp.c: ditto.
      	* ipa-comdats.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-cp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h,options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-devirt.c:  Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-icf.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h,options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-icf-gimple.c: ditto.
      	* ipa-inline-analysis.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-inline.c: ditto.
      	* ipa-inline-transform.c: ditto.
      	* ipa-polymorhpic-call.c: ditto.
      	* ipa-profile.c: ditto.
      	* ipa-prop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-pure-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ipa-reference.c: ditto.
      	* ipa-split.c: ditto.
      	* ipa-utils.c: ditto.
      	* ipa-visbility.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* ira.c: ditto.
      	* ira-color.c: Include hash-set.h due to flattening of tree.h.
      	* ira-costs.c: ditto.
      	* ira-emit.c: ditto.
      	* java/boehm.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/builtins.c: ditto.
      	* java/class.c: ditto.
      	* java/constants.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/decl.c: ditto.
      	* java/except.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h,inchash.h and real.h due to flattening of tree.h.
      	* java/gimplify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/jcf-dump.c: ditto.
      	* java/jcf-io.c: ditto.
      	* java/jcf-parse.c: ditto.
      	* java/jvgenmain.c: ditto.
      	* java/lang.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/mangle.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* java/mangle_name.c: ditto.
      	* java/resource.c: ditto.
      	* java/typeck.c: ditto.
      	* java/verify-glue.c: ditto.
      	* java/verify-impl.c: ditto.
      	* jump.c: Include symtab.h due to flattening of tree.h.
      	* langhooks.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* loop-doloop.c: Include symtab.h due to flattening of tree.h.
      	* loop-init.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* loop-invariant.c: Include symtab.h due to flattening of tree.h.
      	* loop-iv.c: ditto.
      	* loop-unroll.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lower-subreg.c: ditto.
      	* lra-assigns.c: Include symtab.h due to flattening of tree.h.
      	* lra.c: Include symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* lra-coalesce.c: Include symtab.h due to flattening of tree.h.
      	* lra-constraints.c: ditto.
      	* lra-eliminations.c: ditto.
      	* lra-livesc: ditto.
      	* lra-remat.c: ditto.
      	* lra-spills.c: ditto.
      	* lto/lto.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto/lto-lang.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto/lto-object.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto/lto-partition.c: ditto.
      	* lto/lto-symtab.c: ditto.
      	* lto-cgraph.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto-compress.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto-opts.c: ditto.
      	* lto-section-in.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* lto-section-out.c: ditto.
      	* lto-streamer.c: ditto.
      	* lto-streamer-in.c: ditto.
      	* lto-streamer-out.c: ditto.
      	* modulo-sched.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* objc/objc-act.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options, fold-const.h,
      	wide-int.h, and inchash.h due to flattening of tree.h.
      	* objc/objc-encoding.c: ditto.
      	* objc/objc-gnu-runtime-abi-01.c: ditto.
      	* objc/objc-lang.c: ditto.
      	* objc/objc-map.c: ditto.
      	* objc/objc-next-runtime-abi-01.c: ditto.
      	* objc/objc-next-runtime-abi-02.c: ditto.
      	* objc/objc-runtime-shared-support.c: ditto.
      	* objcp/objcp-decl.c: ditto.
      	* objcp/objcp-lang.c: ditto.
      	* omega.c: ditto.
      	* omega-low.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* optabs.c: ditto.
      	* opts-global.c: ditto.
      	* passes.c: ditto.
      	* plugin.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* postreload.c: Include symtab.h due to flattening of tree.h.
      	* postreload-gcse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* predict.c: ditto.
      	* print-rtl.c: ditto.
      	* print-tree.c: ditto.
      	* profile.c: Include symtab.h, fold-const.h
      	and inchash.h due to flattening of tree.h.
      	* real.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* realmpfr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* recog.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* ree.c: ditto.
      	* reginfo.c: ditto.
      	* reg-stack.c: ditto.
      	* reload1.c: Include symtab.h, fold-const.h, wide-int.h
      	and inchash.h due to flattening of tree.h.
      	* reload.c: Include symtab.h due to flattening of tree.h.
      	* reorg.c: ditto.
      	* rtlanal.c: Include symtab.h, fold-const.h, wide-int.h
      	and inchash.h due to flattening of tree.h.
      	* rtl-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* rtlhooks.c: Include symtab.h due to flattening of tree.h.
      	* sanopt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* sched-deps.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* sched-vis.c: ditto.
      	* sdbout.c: ditto.
      	* sel-sched.c: Include symtab.h, fold-const.h, wide-int.h
      	and inchash.h due to flattening of tree.h.
      	* sel-sched-ir.c: ditto.
      	* sese.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* shrink-wrap.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* simplify-rtx.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* stack-ptr-mod.c: ditto.
      	* stmt.c: ditto.
      	* store-motion.c: ditto.
      	* store-layout.c: ditto.
      	* stringpool.c: ditto.
      	* symtab.c: ditto.
      	* target-globals.c: ditto.
      	* targhooks.c: ditto.
      	* toplev.c: ditto.
      	* tracer.c: ditto.
      	* trans-mem.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-affine.c: ditto.
      	* tree-browser.c: ditto.
      	* tree.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-call-cdce.c: Include symtab.h, alias.h, double-int.h,
      	fold-const.h, wide-int.h, inchash.h and real.h due to
      	flattening of tree.h.
      	* tree-cfg.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-cfgcleanup.c: ditto.
      	* tree-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-chkp-opt.c: ditto.
      	* tree-chrec.c: ditto.
      	* tree-chkp-opt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
      	real.h due to flattening of tree.h.
      	* tree-core.h: Flatten header file by removing all #include statements.
      	* tree-data-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-dfa.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
      	real.h due to flattening of tree.h.
      	* tree-diagnostic.c: ditto.
      	* tree-dump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
      	fixed-value.h due to flattening of tree.h.
      	* tree-dfa.c: ditto.
      	* tree-eh.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
      	real.h due to flattening of tree.h.
      	* tree-emutls.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree.h: Flatten header files by removing all includes except tree-core.h.
      	Remove inline function convert_to_ptrofftype_loc to relocate to fold-const.c.
      	Remove macro convert_to_ptrofftype to relocate to fold-const.h.
      	Remove inline function fold_build_pointer_plus_loc to relocate to fold-const.c.
      	Remove macro fold_build_pointer_plus to relocate to fold-const.h.
      	Remove inline function fold_build_pointer_plus_hwi_loc to relocate to fold-const.c.
      	Remove macro fold_build_pointer_plus_hwi to relocate to fold-const.h.
      	* tree-if-conv.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
      	fixed-value.h due to flattening of tree.h.
      	* tree-inline.c: ditto.
      	* tree-into-ssa.c: ditto.
      	* tree-iterator.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-loop-distribution.c: ditto.
      	* tree-nested.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-nrv.c: ditto.
      	* tree-object-size.c: ditto.
      	* tree-outof-ssa.c: ditto.
      	* tree-parloops.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-phinodes.c: ditto.
      	* tree-predcom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-pretty-print.c: ditto.
      	* tree-profile.c: double-int.h, input.h, alias.h, symtab.h,
      	fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-scalar-evolution.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-sra.c: Include  vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
      	inchash.h due to flattening of tree.h.
      	* tree-ssa-alias.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-ssa.c: ditto.
      	* tree-ssa-ccp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
      	and real.h due to flattening of tree.h.
      	* tree-ssa-coalesce.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-ssa-copy.c: ditto.
      	* tree-ssa-copyrename.c: ditto.
      	* tree-ssa-dce.c: ditto.
      	* tree-ssa-dom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
      	and real.h due to flattening of tree.h.
      	* tree-ssa-dse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-ssa-forwprop.c: ditto.
      	* tree-ssa-ifcombine.c: ditto.
      	* tree-ssa-live.c: ditto.
      	* tree-ssa-loop.c: ditto.
      	* tree-ssa-loop-ch.c: ditto.
      	* tree-ssa-loop-im.c: ditto.
      	* tree-ssa-loop-ivcanon.c: ditto.
      	* tree-ssa-loop-ivopts.c: ditto.
      	* tree-ssa-loop-manip.c: ditto.
      	* tree-ssa-loop-niter.c: ditto.
      	* tree-ssa-loop-prefetch.c: ditto.
      	* tree-ssa-loop-unswitch.c: ditto.
      	* tree-ssa-loop-math-opts.c: ditto.
      	* tree-ssanames.c: ditto.
      	* tree-ssa-operands.c: ditto.
      	* tree-ssa-phiopt.c: ditto.
      	* tree-ssa-phiprop.c: ditto.
      	* tree-ssa-pre.c: ditto.
      	* tree-ssa-propagate.c: ditto.
      	* tree-ssa-reassoc.c: ditto.
      	* tree-ssa-sccvn.c: ditto.
      	* tree-ssa-sink.c: ditto.
      	* tree-ssa-strlen.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-ssa-structalias.c: double-int.h, input.h, alias.h, symtab.h,
      	fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-ssa-tail-merge.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-ssa-ter.c: ditto.
      	* tree-ssa-threadedge.c: ditto.
      	* tree-ssa-threadupdate.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-ssa-uncprop.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, fold-const.h,
      	wide-int.h and inchash.h due to flattening of tree.h.
      	* tree-ssa-uninit.c: ditto.
      	* tree-stdarg.c: Include vec.h, double-int.h, input.h, alias.h,
      	symtab.h, fold-const.h, wide-int.h and inchash.h due to flattening
      	of tree.h.
      	* tree-streamer.c: Include vec.h, double-int.h, input.h, alias.h,
      	symtab.h, options.h, fold-const.h, wide-int.h and
      	inchash.h due to flattening of tree.h.
      	* tree-streamer-in.c: Include hash-set.h, machmode.h, vec.h,
      	double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
      	wide-int.h, inchash.h, real.h and fixed-value.h due to flattening
      	of tree.h.
      	* tree-streamer-out.c: dittoo.
      	* tree-switch-conversion.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-tailcall.c: ditto.
      	* tree-vect-data-refs.c: ditto.
      	* tree-vect-generic.c: Include hash-set.h, machmode.h, vec.h, double-int.h, input.h,
      	alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-vect-loop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* tree-vect-loop-manip.c: ditto.
      	* tree-vectorizer.c: ditto.
      	* tree-vect-patterns.c: ditto.
      	* tree-vect-slp.c: ditto.
      	* tree-vect-stmts.c: ditto.
      	* tree-vrp.c: ditto.
      	* tsan.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* ubsan.c: ditto.
      	* value-prof.c.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* varasm.c: ditto.
      	* varpool.c: ditto.
      	* var-tracking.c: ditto.
      	* vmsdbgout.c: ditto.
      	* vtable-verify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* wide-int.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      	* xcoffout.c: ditto.
      	* libcc1/plugin.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
      	input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
      	due to flattening of tree.h.
      
      From-SVN: r219402
      Michael Collison committed
  3. 05 Jan, 2015 1 commit
  4. 03 Dec, 2014 1 commit
    • Rename fuse-caller-save · 1e288103
      2014-12-03  Tom de Vries  <tom@codesourcery.com>
      
      	PR rtl-optimization/63957
      	* doc/invoke.texi: Replace -fuse-caller-save with -fipa-ra.
      	* final.c (rest_of_handle_final): Replace flag_use_caller_save with
      	flag_ipa_ra.
      	(get_call_reg_set_usage): Same.
      	* lra-assigns.c (lra_assign): Same.
      	* lra-constraints.c (need_for_call_save_p): Same.
      	* lra-lives.c (process_bb_lives): Same.
      	* lra.c (lra): Same.
      	* calls.c (expand_call): Same.
      	(emit_library_call_value_1): Same.
      	* config/arm/arm.c (arm_option_override): Same.
      	* opts.c (default_options_table): Replace OPT_fuse_caller_save with
      	OPT_fipa_ra.
      	* target.def (call_fusage_contains_non_callee_clobbers): Replace
      	fuse-caller-save with fipa-ra.
      	* doc/tm.texi (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Same.
      	* common.opt: Same.
      
      	* gcc.dg/ira-shrinkwrap-prep-1.c: Replace -fno-use-caller-save with
      	-fno-ipa-ra.
      	* gcc.dg/ira-shrinkwrap-prep-2.c: Same.
      	* gcc.target/aarch64/aapcs64/aapcs64.exp: Same.
      	* gcc.dg/fuse-caller-save.c: Replace -fuse-caller-save with -fipa-ra.
      	* gcc.target/aarch64/fuse-caller-save.c: Same.
      	* gcc.target/arm/fuse-caller-save.c: Same.
      	* gcc.target/i386/fuse-caller-save-rec.c: Same.
      	* gcc.target/i386/fuse-caller-save-xmm-run.c: Same.
      	* gcc.target/i386/fuse-caller-save-xmm.c: Same.
      	* gcc.target/i386/fuse-caller-save.c: Same.
      	* gcc.target/mips/fuse-caller-save-micromips.c: Same.
      	* gcc.target/mips/fuse-caller-save-mips16.c: Same.
      	* gcc.target/mips/fuse-caller-save.c: Same.
      	* gcc.target/mips/mips.exp: Replace use-caller-save with ipa-ra in
      	-ffoo/-fno-foo options.
      
      From-SVN: r218305
      Tom de Vries committed
  5. 28 Nov, 2014 1 commit
  6. 19 Nov, 2014 1 commit
  7. 16 Nov, 2014 1 commit
  8. 15 Nov, 2014 1 commit
  9. 14 Nov, 2014 1 commit
    • lra-int.h (lra_create_live_ranges): Add parameter. · 4ab74a01
      2014-11-14  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra-int.h (lra_create_live_ranges): Add parameter.
      	* lra-lives.c (temp_bitmap): Move higher.
      	(initiate_live_solver): Move temp_bitmap initialization into
      	lra_live_ranges_init.
      	(finish_live_solver): Move temp_bitmap clearing into
      	live_ranges_finish.
      	(process_bb_lives): Add parameter.  Use it to control live info
      	update and dead insn elimination.  Pass it to mark_regno_live and
      	mark_regno_dead.
      	(lra_create_live_ranges): Add parameter.  Pass it to
      	process_bb_lives.
      	(lra_live_ranges_init, lra_live_ranges_finish): See changes in
      	initiate_live_solver and finish_live_solver.
      	* lra-remat.c (do_remat): Process insn non-operand hard regs too.
      	Use temp_bitmap to update avail_cands.
      	* lra.c (lra): Pass new parameter to lra_create_live_ranges.  Move
      	check with lra_need_for_spill_p after live range pass.  Switch on
      	rematerialization pass.
      
      From-SVN: r217588
      Vladimir Makarov committed
  10. 13 Nov, 2014 2 commits
    • lra.c (lra): Switch off rematerialization pass. · 0a134b2a
      2014-11-13  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra.c (lra): Switch off rematerialization pass.
      
      From-SVN: r217459
      Vladimir Makarov committed
    • common.opt (flra-remat): New. · d9cf932c
      2014-11-12  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* common.opt (flra-remat): New.
      	* opts.c (default_options_table): Add entry for flra_remat.
      	* timevar_def (TV_LRA_REMAT): New.
      	* doc/invoke.texi (-flra-remat): Add description of the new
      	option.
      	* doc/passes.texi (-flra-remat): Remove lra-equivs.c and
      	lra-saves.c.  Add lra-remat.c.
      	* Makefile.in (OBJS): Add lra-remat.o.
      	* lra-remat.c: New file.
      	* lra.c: Add info about the rematerialization pass in the top
      	comment.
      	(collect_non_operand_hard_regs, add_regs_to_insn_regno_info):
      	Process unallocatable regs too.
      	(lra_constraint_new_insn_uid_start): Remove.
      	(lra): Add code for calling rematerialization sub-pass.
      	* lra-int.h (lra_constraint_new_insn_uid_start): Remove.
      	(lra_constrain_insn, lra_remat): New prototypes.
      	(lra_eliminate_regs_1): Add parameter.
      	* lra-lives.c (make_hard_regno_born, make_hard_regno_dead):
      	Process unallocatable hard regs too.
      	(process_bb_lives): Ditto.
      	* lra-spills.c (remove_pseudos): Add argument to
      	lra_eliminate_regs_1 call.
      	* lra-eliminations.c (lra_eliminate_regs_1): Add parameter.  Use it
      	for sp offset calculation.
      	(lra_eliminate_regs): Add argument for lra_eliminate_regs_1 call.
      	(eliminate_regs_in_insn): Add parameter.  Use it for sp offset
      	calculation.
      	(process_insn_for_elimination): Add argument for
      	eliminate_regs_in_insn call.
      	* lra-constraints.c (get_equiv_with_elimination):  Add argument
      	for lra_eliminate_regs_1 call.
      	(process_addr_reg): Add parameter.  Use it.
      	(process_address_1): Ditto.  Add argument for process_addr_reg
      	call.
      	(process_address): Ditto.
      	(curr_insn_transform): Add parameter.  Use it.  Add argument for
      	process_address calls.
      	(lra_constrain_insn): New function.
      	(lra_constraints): Add argument for curr_insn_transform call.
      
      From-SVN: r217458
      Vladimir Makarov committed
  11. 09 Nov, 2014 1 commit
    • re PR rtl-optimization/63620 (RELOAD lost SET_GOT dependency on Darwin) · 8160cd3e
      2014-11-09  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/63620
      	* lra-constraints.c (substitute_pseudo): Add prefix lra_ to the
      	name.  Move to lra.c.  Make it external.
      	(substitute_pseudo_within_insn): Ditto.
      	(inherit_reload_reg, split_reg, remove_inheritance_pseudos): Use
      	the new names.
      	(undo_optional_reloads): Ditto.
      	* lra-int.h (lra_dump_bitmap_with_title, lra_substitute_pseudo):
      	New prototypes.
      	(lra_substitute_pseudo_within_insn): Ditto.
      	* lra-lives.c (bb_killed_pseudos, bb_gen_pseudos): New.
      	(mark_regno_live): Add parameter.  Update bb_gen_pseudos.
      	(mark_regno_dead): Add parameter.  Update bb_gen_pseudos and
      	bb_killed_pseudos.
      	(struct bb_data, bb_data_t, bb_data): New.
      	(get_bb_data, get_bb_data_by_index): Ditto.
      	(all_hard_regs_bitmap): New.
      	(live_trans_fun, live_con_fun_0, live_con_fun_n, all_blocks): New.
      	(initiate_live_solver, finish_live_solver): New.
      	(process_bb_lives): Change return type.  Add code updating local
      	live data and removing dead insns.  Pass new argument to
      	mark_regno_live and mark_regno_dead.  Check changing bb pseudo
      	life info.  Return the result.
      	(lra_create_live_ranges): Add code to do global pseudo live
      	analysis.
      	(lra_live_ranges_init): Call initiate_live_solver.
      	(lra_live_ranges_finish): Call finish_live_solver.
      	* lra.c (lra_dump_bitmap_with_title): New.
      	(lra_substitute_pseudo, lra_substitute_pseudo_within_insn): Move
      	from lra-constraints.c.
      
      From-SVN: r217265
      Vladimir Makarov committed
  12. 01 Nov, 2014 1 commit
    • 2014-11-01 Andrew MacLeod <amacleod@redhat,com> · b0710fe1
      	* optabs.h: Flatten insn-codes.h to source files.  Move some prototypes
      	and structs to genopinit.c.  Adjust protyoptypes to match optabs.c.
      	* genopinit.c (main): Emit prototypes and structs into insn-opinit.h.
      	* optabs.c: (gen_move_insn): Move to expr.c.
      	* expr.h: Move protypes and enums to optabs.h.
      	* expr.c: (gen_move_insn): Relocate from optabs.c.
      	* genemit.c (main): Include insn-codes.h.
      	* gengtype.c (open_base_files): Include insn-codes.h.
      	* asan.c: Include insn-codes.h.
      	* bb-reorder.c: Ditto.
      	* builtins.c: Ditto.
      	* calls.c: Ditto.
      	* cfgexpand.c: Ditto.
      	* cilk-common.c: Ditto.
      	* combine.c: Ditto.
      	* dojump.c: Ditto.
      	* dse.c: Ditto.
      	* except.c: Ditto.
      	* explow.c: Ditto.
      	* expmed.c: Ditto.
      	* function.c: Ditto.
      	* ifcvt.c: Ditto.
      	* internal-fn.c: Ditto.
      	* loop-unroll.c: Ditto.
      	* lra.c: Ditto.
      	* modulo-sched.c: Ditto.
      	* omp-low.c: Ditto.
      	* postreload.c: Ditto.
      	* ree.c: Ditto.
      	* reload.c: Ditto.
      	* reload1.c: Ditto.
      	* shrink-wrap.c: Ditto.
      	* simplify-rtx.c: Ditto.
      	* stmt.c: Ditto.
      	* target-globals.c: Ditto.
      	* targhooks.c: Ditto.
      	* toplev.c: Ditto.
      	* tree-if-conv.c: Ditto.
      	* tree-ssa-forwprop.c: Ditto.
      	* tree-ssa-loop-prefetch.c: Ditto.
      	* tree-ssa-math-opts.c: Ditto.
      	* tree-ssa-phiopt.c: Ditto.
      	* tree-ssa-reassoc.c: Ditto.
      	* tree-switch-conversion.c: Ditto.
      	* tree-vect-data-refs.c: Ditto.
      	* tree-vect-generic.c: Ditto.
      	* tree-vect-loop.c: Ditto.
      	* tree-vect-patterns.c: Ditto.
      	* tree-vect-slp.c: Ditto.
      	* tree-vect-stmts.c: Ditto.
      	* tree-vrp.c: Ditto.
      	* value-prof.c: Ditto.
      	* config/aarch64/aarch64-builtins.c: Ditto.
      	* config/alpha/alpha.c: Ditto.
      	* config/arm/arm.c: Ditto.
      	* config/cris/cris.c: Ditto.
      	* config/epiphany/epiphany.c: Ditto.
      	* config/frv/frv.c: Ditto.
      	* config/h8300/h8300.c: Ditto.
      	* config/ia64/ia64.c: Ditto.
      	* config/iq2000/iq2000.c: Ditto.
      	* config/m32c/m32c.c: Ditto.
      	* config/mep/mep.c: Ditto.
      	* config/microblaze/microblaze.c: Ditto.
      	* config/mips/mips.c: Ditto.
      	* config/mn10300/mn10300.c: Ditto.
      	* config/moxie/moxie.c: Ditto.
      	* config/msp430/msp430.c: Ditto.
      	* config/nios2/nios2.c: Ditto.
      	* config/pa/pa.c: Ditto.
      	* config/rl78/rl78.c: Ditto.
      	* config/rs6000/rs6000.c: Ditto.
      	* config/rx/rx.c: Ditto.
      	* config/s390/s390.c: Ditto.
      	* config/sh/sh.c: Ditto.
      	* config/sh/sh_treg_combine.cc: Ditto.
      	* config/spu/spu.c: Ditto.
      	* config/stormy16/stormy16.c: Ditto.
      	* config/tilegx/mul-tables.c: Ditto.
      	* config/tilegx/tilegx.c: Ditto.
      	* config/tilepro/mul-tables.c: Ditto.
      	* config/tilepro/tilepro.c: Ditto.
      	* config/vax/vax.c: Ditto.
      
      From-SVN: r217005
      Andrew MacLeod committed
  13. 29 Oct, 2014 1 commit
    • decl.c, [...]: Remove redundant enum from machine_mode. · ef4bddc2
      gcc/ada/
      	* gcc-interface/decl.c, gcc-interface/gigi.h, gcc-interface/misc.c,
      	gcc-interface/trans.c, gcc-interface/utils.c, gcc-interface/utils2.c:
      	Remove redundant enum from machine_mode.
      
      gcc/c-family/
      	* c-common.c, c-common.h, c-cppbuiltin.c, c-lex.c: Remove redundant
      	enum from machine_mode.
      
      gcc/c/
      	* c-decl.c, c-tree.h, c-typeck.c: Remove redundant enum from
      	machine_mode.
      
      gcc/cp/
      	* constexpr.c: Remove redundant enum from machine_mode.
      
      gcc/fortran/
      	* trans-types.c, trans-types.h: Remove redundant enum from
      	machine_mode.
      
      gcc/go/
      	* go-lang.c: Remove redundant enum from machine_mode.
      
      gcc/java/
      	* builtins.c, java-tree.h, typeck.c: Remove redundant enum from
      	machine_mode.
      
      gcc/lto/
      	* lto-lang.c: Remove redundant enum from machine_mode.
      
      gcc/
      	* addresses.h, alias.c, asan.c, auto-inc-dec.c, bt-load.c, builtins.c,
      	builtins.h, caller-save.c, calls.c, calls.h, cfgexpand.c, cfgloop.h,
      	cfgrtl.c, combine.c, compare-elim.c, config/aarch64/aarch64-builtins.c,
      	config/aarch64/aarch64-protos.h, config/aarch64/aarch64-simd.md,
      	config/aarch64/aarch64.c, config/aarch64/aarch64.h,
      	config/aarch64/aarch64.md, config/alpha/alpha-protos.h,
      	config/alpha/alpha.c, config/arc/arc-protos.h, config/arc/arc.c,
      	config/arc/arc.h, config/arc/predicates.md,
      	config/arm/aarch-common-protos.h, config/arm/aarch-common.c,
      	config/arm/arm-protos.h, config/arm/arm.c, config/arm/arm.h,
      	config/arm/arm.md, config/arm/neon.md, config/arm/thumb2.md,
      	config/avr/avr-log.c, config/avr/avr-protos.h, config/avr/avr.c,
      	config/avr/avr.md, config/bfin/bfin-protos.h, config/bfin/bfin.c,
      	config/c6x/c6x-protos.h, config/c6x/c6x.c, config/c6x/c6x.md,
      	config/cr16/cr16-protos.h, config/cr16/cr16.c,
      	config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.md,
      	config/darwin-protos.h, config/darwin.c,
      	config/epiphany/epiphany-protos.h, config/epiphany/epiphany.c,
      	config/epiphany/epiphany.md, config/fr30/fr30.c,
      	config/frv/frv-protos.h, config/frv/frv.c, config/frv/predicates.md,
      	config/h8300/h8300-protos.h, config/h8300/h8300.c,
      	config/i386/i386-builtin-types.awk, config/i386/i386-protos.h,
      	config/i386/i386.c, config/i386/i386.md, config/i386/predicates.md,
      	config/i386/sse.md, config/i386/sync.md, config/ia64/ia64-protos.h,
      	config/ia64/ia64.c, config/iq2000/iq2000-protos.h,
      	config/iq2000/iq2000.c, config/iq2000/iq2000.md,
      	config/lm32/lm32-protos.h, config/lm32/lm32.c,
      	config/m32c/m32c-protos.h, config/m32c/m32c.c,
      	config/m32r/m32r-protos.h, config/m32r/m32r.c,
      	config/m68k/m68k-protos.h, config/m68k/m68k.c,
      	config/mcore/mcore-protos.h, config/mcore/mcore.c,
      	config/mcore/mcore.md, config/mep/mep-protos.h, config/mep/mep.c,
      	config/microblaze/microblaze-protos.h, config/microblaze/microblaze.c,
      	config/mips/mips-protos.h, config/mips/mips.c,
      	config/mmix/mmix-protos.h, config/mmix/mmix.c,
      	config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
      	config/moxie/moxie.c, config/msp430/msp430-protos.h,
      	config/msp430/msp430.c, config/nds32/nds32-cost.c,
      	config/nds32/nds32-intrinsic.c, config/nds32/nds32-md-auxiliary.c,
      	config/nds32/nds32-protos.h, config/nds32/nds32.c,
      	config/nios2/nios2-protos.h, config/nios2/nios2.c,
      	config/pa/pa-protos.h, config/pa/pa.c, config/pdp11/pdp11-protos.h,
      	config/pdp11/pdp11.c, config/rl78/rl78-protos.h, config/rl78/rl78.c,
      	config/rs6000/altivec.md, config/rs6000/rs6000-c.c,
      	config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
      	config/rs6000/rs6000.h, config/rx/rx-protos.h, config/rx/rx.c,
      	config/s390/predicates.md, config/s390/s390-protos.h,
      	config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
      	config/sh/predicates.md, config/sh/sh-protos.h, config/sh/sh.c,
      	config/sh/sh.md, config/sparc/predicates.md,
      	config/sparc/sparc-protos.h, config/sparc/sparc.c,
      	config/sparc/sparc.md, config/spu/spu-protos.h, config/spu/spu.c,
      	config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
      	config/tilegx/tilegx-protos.h, config/tilegx/tilegx.c,
      	config/tilegx/tilegx.md, config/tilepro/tilepro-protos.h,
      	config/tilepro/tilepro.c, config/v850/v850-protos.h,
      	config/v850/v850.c, config/v850/v850.md, config/vax/vax-protos.h,
      	config/vax/vax.c, config/vms/vms-c.c, config/xtensa/xtensa-protos.h,
      	config/xtensa/xtensa.c, coverage.c, cprop.c, cse.c, cselib.c, cselib.h,
      	dbxout.c, ddg.c, df-problems.c, dfp.c, dfp.h, doc/md.texi,
      	doc/rtl.texi, doc/tm.texi, doc/tm.texi.in, dojump.c, dse.c,
      	dwarf2cfi.c, dwarf2out.c, dwarf2out.h, emit-rtl.c, emit-rtl.h,
      	except.c, explow.c, expmed.c, expmed.h, expr.c, expr.h, final.c,
      	fixed-value.c, fixed-value.h, fold-const.c, function.c, function.h,
      	fwprop.c, gcse.c, gengenrtl.c, genmodes.c, genopinit.c, genoutput.c,
      	genpreds.c, genrecog.c, gensupport.c, gimple-ssa-strength-reduction.c,
      	graphite-clast-to-gimple.c, haifa-sched.c, hooks.c, hooks.h, ifcvt.c,
      	internal-fn.c, ira-build.c, ira-color.c, ira-conflicts.c, ira-costs.c,
      	ira-emit.c, ira-int.h, ira-lives.c, ira.c, ira.h, jump.c, langhooks.h,
      	libfuncs.h, lists.c, loop-doloop.c, loop-invariant.c, loop-iv.c,
      	loop-unroll.c, lower-subreg.c, lower-subreg.h, lra-assigns.c,
      	lra-constraints.c, lra-eliminations.c, lra-int.h, lra-lives.c,
      	lra-spills.c, lra.c, lra.h, machmode.h, omp-low.c, optabs.c, optabs.h,
      	output.h, postreload.c, print-tree.c, read-rtl.c, real.c, real.h,
      	recog.c, recog.h, ree.c, reg-stack.c, regcprop.c, reginfo.c,
      	regrename.c, regs.h, reload.c, reload.h, reload1.c, rtl.c, rtl.h,
      	rtlanal.c, rtlhash.c, rtlhooks-def.h, rtlhooks.c, sched-deps.c,
      	sel-sched-dump.c, sel-sched-ir.c, sel-sched-ir.h, sel-sched.c,
      	simplify-rtx.c, stmt.c, stor-layout.c, stor-layout.h, target.def,
      	targhooks.c, targhooks.h, tree-affine.c, tree-call-cdce.c,
      	tree-complex.c, tree-data-ref.c, tree-dfa.c, tree-if-conv.c,
      	tree-inline.c, tree-outof-ssa.c, tree-scalar-evolution.c,
      	tree-ssa-address.c, tree-ssa-ccp.c, tree-ssa-loop-ivopts.c,
      	tree-ssa-loop-ivopts.h, tree-ssa-loop-manip.c,
      	tree-ssa-loop-prefetch.c, tree-ssa-math-opts.c, tree-ssa-reassoc.c,
      	tree-ssa-sccvn.c, tree-streamer-in.c, tree-switch-conversion.c,
      	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop.c,
      	tree-vect-patterns.c, tree-vect-slp.c, tree-vect-stmts.c,
      	tree-vrp.c, tree.c, tree.h, tsan.c, ubsan.c, valtrack.c,
      	var-tracking.c, varasm.c: Remove redundant enum from
      	machine_mode.
      gcc/
      	* gengtype.c (main): Treat machine_mode as a scalar typedef.
      	* genmodes.c (emit_insn_modes_h): Hide inline functions if
      	USED_FOR_TARGET.
      
      From-SVN: r216834
      Richard Sandiford committed
  14. 27 Oct, 2014 1 commit
    • ggcplug.c: Shuffle includes to include gcc-plugin.h earlier. · 60393bbc
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* testsuite/gcc.dg/plugin/ggcplug.c: Shuffle includes to include
      	gcc-plugin.h earlier.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* c/c-typeck.c: Adjust include files.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* c-family/c-gimplify.c: Adjust include files.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* cp/cp-gimplify.c: Adjust include files.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* go/go-gcc.cc: Adjust include files.
      	* go/go-lang.c: Ditto.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* java/java-gimplify.c: Adjust include files.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* lto/lto-lang.c: Adjust include files.
      	* lto/lto-object.c: Ditto.
      	* lto/lto-partition.c: Ditto.
      	* lto/lto-symtab.c: Ditto.
      	* lto/lto.c: Ditto.
      
      2014-10-27  Andrew MacLeod  <amacleod@redhat.com>
      
      	* basic-block.h: Remove all includes.
      	(enum profile_status_d, struct control_flow_graph): Move to cfg.h
      	* cfg.h (profile_status_d, struct control_flow_graph): Relocate here.
      	* Makefile.in (GTFILES): Add cfg.h to list.
      	* cgraph.h (symbol_table::create_empty): Move to cgraph.c.
      	* cgraph.c (symbol_table::create_empty): Relocate from cgraph.h.
      	* genconditions.c (write_header): Add predict.h and basic-block.h to
      	lits of includes.
      	* genemit.c (main): Ditto.
      	* genpreds.c (write_insn_preds_c): Ditto.
      	* genrecog.c (write_header): Ditto.
      	* gengtype.c (open_base_files): Add predict.h, basic-block.h, and cfg.h
      	to list of includes.
      	* alias.c: Adjust include files.
      	* asan.c: Ditto.
      	* auto-inc-dec.c: Ditto.
      	* auto-profile.c: Ditto.
      	* bb-reorder.c: Ditto.
      	* bt-load.c: Ditto.
      	* builtins.c: Ditto.
      	* caller-save.c: Ditto.
      	* calls.c: Ditto.
      	* cfg.c: Ditto.
      	* cfganal.c: Ditto.
      	* cfgbuild.c: Ditto.
      	* cfgcleanup.c: Ditto.
      	* cfgexpand.c: Ditto.
      	* cfghooks.c: Ditto.
      	* cfgloop.c: Ditto.
      	* cfgloopanal.c: Ditto.
      	* cfgloopmanip.c: Ditto.
      	* cfgrtl.c: Ditto.
      	* cgraphbuild.c: Ditto.
      	* cgraphclones.c: Ditto.
      	* cgraphunit.c: Ditto.
      	* combine-stack-adj.c: Ditto.
      	* combine.c: Ditto.
      	* compare-elim.c: Ditto.
      	* coverage.c: Ditto.
      	* cprop.c: Ditto.
      	* cse.c: Ditto.
      	* cselib.c: Ditto.
      	* data-streamer-in.c: Ditto.
      	* data-streamer-out.c: Ditto.
      	* data-streamer.c: Ditto.
      	* dce.c: Ditto.
      	* ddg.c: Ditto.
      	* ddg.h: Ditto.
      	* df-core.c: Ditto.
      	* df-problems.c: Ditto.
      	* df-scan.c: Ditto.
      	* df.h: Ditto.
      	* dojump.c: Ditto.
      	* dominance.c: Ditto.
      	* domwalk.c: Ditto.
      	* dse.c: Ditto.
      	* dwarf2cfi.c: Ditto.
      	* emit-rtl.c: Ditto.
      	* et-forest.c: Ditto.
      	* except.c: Ditto.
      	* expmed.c: Ditto.
      	* expr.c: Ditto.
      	* final.c: Ditto.
      	* fold-const.c: Ditto.
      	* function.c: Ditto.
      	* fwprop.c: Ditto.
      	* gcc-plugin.h: Ditto.
      	* gcse.c: Ditto.
      	* generic-match-head.c: Ditto.
      	* ggc-page.c: Ditto.
      	* gimple-builder.c: Ditto.
      	* gimple-expr.c: Ditto.
      	* gimple-fold.c: Ditto.
      	* gimple-iterator.c: Ditto.
      	* gimple-low.c: Ditto.
      	* gimple-match-head.c: Ditto.
      	* gimple-pretty-print.c: Ditto.
      	* gimple-ssa-isolate-paths.c: Ditto.
      	* gimple-ssa-strength-reduction.c: Ditto.
      	* gimple-streamer-in.c: Ditto.
      	* gimple-streamer-out.c: Ditto.
      	* gimple-streamer.h: Ditto.
      	* gimple-walk.c: Ditto.
      	* gimple.c: Ditto.
      	* gimplify-me.c: Ditto.
      	* gimplify.c: Ditto.
      	* graph.c: Ditto.
      	* graphite-blocking.c: Ditto.
      	* graphite-clast-to-gimple.c: Ditto.
      	* graphite-dependences.c: Ditto.
      	* graphite-interchange.c: Ditto.
      	* graphite-isl-ast-to-gimple.c: Ditto.
      	* graphite-optimize-isl.c: Ditto.
      	* graphite-poly.c: Ditto.
      	* graphite-scop-detection.c: Ditto.
      	* graphite-sese-to-poly.c: Ditto.
      	* graphite.c: Ditto.
      	* haifa-sched.c: Ditto.
      	* hw-doloop.c: Ditto.
      	* ifcvt.c: Ditto.
      	* init-regs.c: Ditto.
      	* internal-fn.c: Ditto.
      	* ipa-cp.c: Ditto.
      	* ipa-devirt.c: Ditto.
      	* ipa-icf-gimple.c: Ditto.
      	* ipa-icf.c: Ditto.
      	* ipa-inline-analysis.c: Ditto.
      	* ipa-inline.c: Ditto.
      	* ipa-polymorphic-call.c: Ditto.
      	* ipa-profile.c: Ditto.
      	* ipa-prop.c: Ditto.
      	* ipa-pure-const.c: Ditto.
      	* ipa-reference.c: Ditto.
      	* ipa-split.c: Ditto.
      	* ipa-utils.c: Ditto.
      	* ipa.c: Ditto.
      	* ira-build.c: Ditto.
      	* ira-color.c: Ditto.
      	* ira-conflicts.c: Ditto.
      	* ira-costs.c: Ditto.
      	* ira-emit.c: Ditto.
      	* ira-lives.c: Ditto.
      	* ira.c: Ditto.
      	* jump.c: Ditto.
      	* lcm.c: Ditto.
      	* loop-doloop.c: Ditto.
      	* loop-init.c: Ditto.
      	* loop-invariant.c: Ditto.
      	* loop-iv.c: Ditto.
      	* loop-unroll.c: Ditto.
      	* lower-subreg.c: Ditto.
      	* lra-assigns.c: Ditto.
      	* lra-coalesce.c: Ditto.
      	* lra-constraints.c: Ditto.
      	* lra-eliminations.c: Ditto.
      	* lra-lives.c: Ditto.
      	* lra-spills.c: Ditto.
      	* lra.c: Ditto.
      	* lto-cgraph.c: Ditto.
      	* lto-compress.c: Ditto.
      	* lto-opts.c: Ditto.
      	* lto-section-in.c: Ditto.
      	* lto-section-out.c: Ditto.
      	* lto-streamer-in.c: Ditto.
      	* lto-streamer-out.c: Ditto.
      	* lto-streamer.c: Ditto.
      	* mcf.c: Ditto.
      	* mode-switching.c: Ditto.
      	* modulo-sched.c: Ditto.
      	* omp-low.c: Ditto.
      	* optabs.c: Ditto.
      	* opts-global.c: Ditto.
      	* passes.c: Ditto.
      	* postreload-gcse.c: Ditto.
      	* postreload.c: Ditto.
      	* predict.c: Ditto.
      	* print-rtl.c: Ditto.
      	* profile.c: Ditto.
      	* recog.c: Ditto.
      	* ree.c: Ditto.
      	* reg-stack.c: Ditto.
      	* regcprop.c: Ditto.
      	* regcprop.h: Ditto.
      	* reginfo.c: Ditto.
      	* regrename.c: Ditto.
      	* regstat.c: Ditto.
      	* reload.c: Ditto.
      	* reload1.c: Ditto.
      	* reorg.c: Ditto.
      	* resource.c: Ditto.
      	* rtlanal.c: Ditto.
      	* sched-deps.c: Ditto.
      	* sched-ebb.c: Ditto.
      	* sched-int.h: Ditto.
      	* sched-rgn.c: Ditto.
      	* sched-vis.c: Ditto.
      	* sel-sched-dump.c: Ditto.
      	* sel-sched-ir.c: Ditto.
      	* sel-sched-ir.h: Ditto.
      	* sel-sched.c: Ditto.
      	* sese.c: Ditto.
      	* shrink-wrap.c: Ditto.
      	* stack-ptr-mod.c: Ditto.
      	* stmt.c: Ditto.
      	* store-motion.c: Ditto.
      	* symtab.c: Ditto.
      	* toplev.c: Ditto.
      	* tracer.c: Ditto.
      	* trans-mem.c: Ditto.
      	* tree-affine.c: Ditto.
      	* tree-call-cdce.c: Ditto.
      	* tree-cfg.c: Ditto.
      	* tree-cfgcleanup.c: Ditto.
      	* tree-chrec.c: Ditto.
      	* tree-complex.c: Ditto.
      	* tree-data-ref.c: Ditto.
      	* tree-dfa.c: Ditto.
      	* tree-eh.c: Ditto.
      	* tree-emutls.c: Ditto.
      	* tree-if-conv.c: Ditto.
      	* tree-inline.c: Ditto.
      	* tree-into-ssa.c: Ditto.
      	* tree-loop-distribution.c: Ditto.
      	* tree-nested.c: Ditto.
      	* tree-nrv.c: Ditto.
      	* tree-object-size.c: Ditto.
      	* tree-outof-ssa.c: Ditto.
      	* tree-parloops.c: Ditto.
      	* tree-phinodes.c: Ditto.
      	* tree-predcom.c: Ditto.
      	* tree-pretty-print.c: Ditto.
      	* tree-profile.c: Ditto.
      	* tree-scalar-evolution.c: Ditto.
      	* tree-sra.c: Ditto.
      	* tree-ssa-address.c: Ditto.
      	* tree-ssa-alias.c: Ditto.
      	* tree-ssa-ccp.c: Ditto.
      	* tree-ssa-coalesce.c: Ditto.
      	* tree-ssa-copy.c: Ditto.
      	* tree-ssa-copyrename.c: Ditto.
      	* tree-ssa-dce.c: Ditto.
      	* tree-ssa-dom.c: Ditto.
      	* tree-ssa-dse.c: Ditto.
      	* tree-ssa-forwprop.c: Ditto.
      	* tree-ssa-ifcombine.c: Ditto.
      	* tree-ssa-live.c: Ditto.
      	* tree-ssa-loop-ch.c: Ditto.
      	* tree-ssa-loop-im.c: Ditto.
      	* tree-ssa-loop-ivcanon.c: Ditto.
      	* tree-ssa-loop-ivopts.c: Ditto.
      	* tree-ssa-loop-manip.c: Ditto.
      	* tree-ssa-loop-niter.c: Ditto.
      	* tree-ssa-loop-prefetch.c: Ditto.
      	* tree-ssa-loop-unswitch.c: Ditto.
      	* tree-ssa-loop.c: Ditto.
      	* tree-ssa-math-opts.c: Ditto.
      	* tree-ssa-operands.c: Ditto.
      	* tree-ssa-phiopt.c: Ditto.
      	* tree-ssa-phiprop.c: Ditto.
      	* tree-ssa-pre.c: Ditto.
      	* tree-ssa-propagate.c: Ditto.
      	* tree-ssa-reassoc.c: Ditto.
      	* tree-ssa-sccvn.c: Ditto.
      	* tree-ssa-sink.c: Ditto.
      	* tree-ssa-strlen.c: Ditto.
      	* tree-ssa-structalias.c: Ditto.
      	* tree-ssa-tail-merge.c: Ditto.
      	* tree-ssa-ter.c: Ditto.
      	* tree-ssa-threadedge.c: Ditto.
      	* tree-ssa-threadupdate.c: Ditto.
      	* tree-ssa-uncprop.c: Ditto.
      	* tree-ssa-uninit.c: Ditto.
      	* tree-ssa.c: Ditto.
      	* tree-ssanames.c: Ditto.
      	* tree-stdarg.c: Ditto.
      	* tree-streamer-in.c: Ditto.
      	* tree-streamer-out.c: Ditto.
      	* tree-streamer.c: Ditto.
      	* tree-switch-conversion.c: Ditto.
      	* tree-tailcall.c: Ditto.
      	* tree-vect-data-refs.c: Ditto.
      	* tree-vect-generic.c: Ditto.
      	* tree-vect-loop-manip.c: Ditto.
      	* tree-vect-loop.c: Ditto.
      	* tree-vect-patterns.c: Ditto.
      	* tree-vect-slp.c: Ditto.
      	* tree-vect-stmts.c: Ditto.
      	* tree-vectorizer.c: Ditto.
      	* tree-vrp.c: Ditto.
      	* tree.c: Ditto.
      	* tsan.c: Ditto.
      	* ubsan.c: Ditto.
      	* valtrack.c: Ditto.
      	* valtrack.h: Ditto.
      	* value-prof.c: Ditto.
      	* var-tracking.c: Ditto.
      	* varasm.c: Ditto.
      	* varpool.c: Ditto.
      	* vtable-verify.c: Ditto.
      	* web.c: Ditto.
      	* config/aarch64/aarch64-builtins.c: Ditto.
      	* config/aarch64/aarch64.c: Ditto.
      	* config/alpha/alpha.c: Ditto.
      	* config/arc/arc.c: Ditto.
      	* config/arm/arm.c: Ditto.
      	* config/avr/avr.c: Ditto.
      	* config/bfin/bfin.c: Ditto.
      	* config/c6x/c6x.c: Ditto.
      	* config/cr16/cr16.c: Ditto.
      	* config/cris/cris.c: Ditto.
      	* config/darwin-c.c: Ditto.
      	* config/darwin.c: Ditto.
      	* config/epiphany/epiphany.c: Ditto.
      	* config/epiphany/mode-switch-use.c: Ditto.
      	* config/epiphany/resolve-sw-modes.c: Ditto.
      	* config/fr30/fr30.c: Ditto.
      	* config/frv/frv.c: Ditto.
      	* config/h8300/h8300.c: Ditto.
      	* config/i386/i386.c: Ditto.
      	* config/i386/winnt.c: Ditto.
      	* config/ia64/ia64.c: Ditto.
      	* config/iq2000/iq2000.c: Ditto.
      	* config/lm32/lm32.c: Ditto.
      	* config/m32c/m32c.c: Ditto.
      	* config/m32r/m32r.c: Ditto.
      	* config/m68k/m68k.c: Ditto.
      	* config/mcore/mcore.c: Ditto.
      	* config/mep/mep.c: Ditto.
      	* config/microblaze/microblaze.c: Ditto.
      	* config/mips/mips.c: Ditto.
      	* config/mmix/mmix.c: Ditto.
      	* config/mn10300/mn10300.c: Ditto.
      	* config/moxie/moxie.c: Ditto.
      	* config/msp430/msp430.c: Ditto.
      	* config/nds32/nds32-cost.c: Ditto.
      	* config/nds32/nds32-fp-as-gp.c: Ditto.
      	* config/nds32/nds32-intrinsic.c: Ditto.
      	* config/nds32/nds32-isr.c: Ditto.
      	* config/nds32/nds32-md-auxiliary.c: Ditto.
      	* config/nds32/nds32-memory-manipulation.c: Ditto.
      	* config/nds32/nds32-pipelines-auxiliary.c: Ditto.
      	* config/nds32/nds32-predicates.c: Ditto.
      	* config/nds32/nds32.c: Ditto.
      	* config/nios2/nios2.c: Ditto.
      	* config/pa/pa.c: Ditto.
      	* config/pdp11/pdp11.c: Ditto.
      	* config/rl78/rl78.c: Ditto.
      	* config/rs6000/rs6000.c: Ditto.
      	* config/rx/rx.c: Ditto.
      	* config/s390/s390.c: Ditto.
      	* config/sh/sh-mem.cc: Ditto.
      	* config/sh/sh.c: Ditto.
      	* config/sh/sh_optimize_sett_clrt.cc: Ditto.
      	* config/sh/sh_treg_combine.cc: Ditto.
      	* config/sparc/sparc.c: Ditto.
      	* config/spu/spu.c: Ditto.
      	* config/stormy16/stormy16.c: Ditto.
      	* config/tilegx/tilegx.c: Ditto.
      	* config/tilepro/tilepro.c: Ditto.
      	* config/v850/v850.c: Ditto.
      	* config/vax/vax.c: Ditto.
      	* config/xtensa/xtensa.c: Ditto.
      
      From-SVN: r216735
      Andrew MacLeod committed
  15. 22 Oct, 2014 3 commits
    • lra.c (lra): Remove call to recog_init. · 4a7fca26
      gcc/
      	* lra.c (lra): Remove call to recog_init.
      	* config/i386/i386.md (preferred_for_speed): New attribute
      	(*float<SWI48:mode><MODEF:mode>2_sse): Override it instead of
      	"enabled".  Remove check for sched1.
      
      gcc/testsuite/
      	* gcc.target/i386/conversion-2.c: New test.
      
      From-SVN: r216557
      Richard Sandiford committed
    • md.texi: Document "preferred_for_size" and "preferred_for_speed" attributes. · 9840b2fa
      gcc/
      	* doc/md.texi: Document "preferred_for_size" and "preferred_for_speed"
      	attributes.
      	* genattr.c (main): Handle "preferred_for_size" and
      	"preferred_for_speed" in the same way as "enabled".
      	* recog.h (bool_attr): New enum.
      	(target_recog): Replace x_enabled_alternatives with x_bool_attr_masks.
      	(get_preferred_alternatives, check_bool_attrs): Declare.
      	* recog.c (have_bool_attr, get_bool_attr, get_bool_attr_mask_uncached)
      	(get_bool_attr_mask, get_preferred_alternatives, check_bool_attrs):
      	New functions.
      	(get_enabled_alternatives): Use get_bool_attr_mask.
      	* ira-costs.c (record_reg_classes): Use get_preferred_alternatives
      	instead of recog_data.enabled_alternatives.
      	* ira.c (ira_setup_alts): Likewise.
      	* postreload.c (reload_cse_simplify_operands): Likewise.
      	* config/i386/i386.c (ix86_legitimate_combined_insn): Likewise.
      	* ira-lives.c (preferred_alternatives): New variable.
      	(process_bb_node_lives): Set it.
      	(check_and_make_def_conflict, make_early_clobber_and_input_conflicts)
      	(single_reg_class, ira_implicitly_set_insn_hard_regs): Use it instead
      	of recog_data.enabled_alternatives.
      	* lra-int.h (lra_insn_recog_data): Replace enabled_alternatives
      	to preferred_alternatives.
      	* lra-constraints.c (process_alt_operands): Update accordingly.
      	* lra.c (lra_set_insn_recog_data): Likewise.
      	(lra_update_insn_recog_data): Assert check_bool_attrs.
      
      From-SVN: r216554
      Richard Sandiford committed
    • recog.h (extract_constrain_insn): Declare. · 75d25a02
      gcc/
      	* recog.h (extract_constrain_insn): Declare.
      	* recog.c (extract_constrain_insn): New function.
      	* lra.c (check_rtl): Use it.
      	* postreload.c (reload_cse_simplify_operands): Likewise.
      	* reg-stack.c (check_asm_stack_operands): Likewise.
      	(subst_asm_stack_regs): Likewise.
      	* regcprop.c (copyprop_hardreg_forward_1): Likewise.
      	* regrename.c (build_def_use): Likewise.
      	* sel-sched.c (get_reg_class): Likewise.
      	* config/arm/arm.c (note_invalid_constants): Likewise.
      	* config/s390/predicates.md (execute_operation): Likewise.
      
      From-SVN: r216553
      Richard Sandiford committed
  16. 16 Oct, 2014 1 commit
    • function.h: Flatten file. · 83685514
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* function.h: Flatten file.  Remove includes, adjust prototypes to 
      	reflect only what is in function.h.
      	(enum direction, struct args_size, struct locate_and_pad_arg_data,
      	ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Relocate
      	from expr.h.
      	(ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Relocate from rtl.h.
      	(optimize_function_for_size_p, optimize_function_for_speed_p): Move
      	prototypes to predict.h.
      	(init_varasm_status): Move prototype to varasm.h.
      	* expr.h: Adjust include files.
      	(enum direction, struct args_size, struct locate_and_pad_arg_data,
      	ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Move
      	to function.h.
      	(locate_and_pad_parm): Move prototype to function.h.
      	* rtl.h: (assign_stack_local, ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD,
      	assign_stack_local_1, assign_stack_temp, assign_stack_temp_for_type,
      	assign_temp, reposition_prologue_and_epilogue_notes,
      	prologue_epilogue_contains, sibcall_epilogue_contains,
      	update_temp_slot_address, maybe_copy_prologue_epilogue_insn,
      	set_return_jump_label): Move prototypes to function.h.
      	* predict.h (optimize_function_for_size_p,
      	optimize_function_for_speed_p): Relocate prototypes from function.h.
      	* shrink-wrap.h (emit_return_into_block, active_insn_between,
      	convert_jumps_to_returns, emit_return_for_exit): Move prototypes to
      	function.h.
      	* varasm.h (init_varasm_status): Relocate prototype from function.h.
      	* genattrtab.c (write_header): Add predict.h to include list.
      	* genconditions.c (write_header): Add predict.h to include list.
      	* genemit.c (main): Adjust header file includes.
      	* gengtype.c (ifiles): Add flattened function.h header files.
      	* genoutput.c (output_prologue): Add predict.h to include list.
      	* genpreds.c (write_insn_preds_c): Adjust header file includes.
      	* genrecog.c (write_header): Add flattened function.h header files.
      	* alias.c: Adjust include files.
      	* auto-inc-dec.c: Likewise.
      	* basic-block.h: Likewise.
      	* bb-reorder.c: Likewise.
      	* bt-load.c: Likewise.
      	* builtins.c: Likewise.
      	* caller-save.c: Likewise.
      	* calls.c: Likewise.
      	* cfgbuild.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloop.h: Likewise.
      	* cfgrtl.c: Likewise.
      	* cgraph.h: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine-stack-adj.c: Likewise.
      	* combine.c: Likewise.
      	* coverage.c: Likewise.
      	* cprop.c: Likewise.
      	* cse.c: Likewise.
      	* cselib.c: Likewise.
      	* dbxout.c: Likewise.
      	* ddg.c: Likewise.
      	* df-core.c: Likewise.
      	* df-problems.c: Likewise.
      	* df-scan.c: Likewise.
      	* dojump.c: Likewise.
      	* dwarf2cfi.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* explow.c: Likewise.
      	* expr.c: Likewise.
      	* final.c: Likewise.
      	* function.c: Likewise.
      	* gcse.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-streamer.h: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* ira.c: Likewise.
      	* jump.c: Likewise.
      	* lcm.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* lra-assigns.c: Likewise.
      	* lra-coalesce.c: Likewise.
      	* lra-constraints.c: Likewise.
      	* lra-eliminations.c: Likewise.
      	* lra-lives.c: Likewise.
      	* lra-spills.c: Likewise.
      	* lra.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-section-in.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* mode-switching.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* omp-low.c: Likewise.
      	* optabs.c: Likewise.
      	* passes.c: Likewise.
      	* postreload-gcse.c: Likewise.
      	* postreload.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* recog.c: Likewise.
      	* ree.c: Likewise.
      	* reg-stack.c: Likewise.
      	* regcprop.c: Likewise.
      	* reginfo.c: Likewise.
      	* regrename.c: Likewise.
      	* reload.c: Likewise.
      	* reload1.c: Likewise.
      	* reorg.c: Likewise.
      	* resource.c: Likewise.
      	* rtlanal.c: Likewise.
      	* sched-deps.c: Likewise.
      	* sched-ebb.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* sel-sched.c: Likewise.
      	* shrink-wrap.c: Likewise.
      	* simplify-rtx.c: Likewise.
      	* statistics.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* store-motion.c: Likewise.
      	* symtab.c: Likewise.
      	* targhooks.c: Likewise.
      	* toplev.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-operands.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* valtrack.c: Likewise.
      	* varasm.c: Likewise.
      	* vmsdbgout.c: Likewise.
      	* web.c: Likewise.
      	* testsuite/g++.dg/plugin/pragma_plugin.c: Adjust include files.
      	* config/aarch64/aarch64.c: Add flattened includes from function.h.
      	* config/alpha/alpha.c: Likewise.
      	* config/arc/arc.c: Likewise.
      	* config/arm/arm.c: Likewise.
      	* config/avr/avr-log.c: Likewise.
      	* config/avr/avr.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/c6x/c6x.c: Likewise.
      	* config/cr16/cr16.c: Likewise.
      	* config/cris/cris.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/epiphany/epiphany.c: Likewise.
      	* config/epiphany/mode-switch-use.c: Likewise.
      	* config/epiphany/resolve-sw-modes.c: Likewise.
      	* config/fr30/fr30.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/h8300/h8300.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/lm32/lm32.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32r/m32r.c: Likewise.
      	* config/m68k/m68k.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/mep/mep-pragma.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/microblaze/microblaze.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/mmix/mmix.c: Likewise.
      	* config/mn10300/mn10300.c: Likewise.
      	* config/moxie/moxie.c: Likewise.
      	* config/msp430/msp430.c: Likewise.
      	* config/nds32/nds32-cost.c: Likewise.
      	* config/nds32/nds32-fp-as-gp.c: Likewise.
      	* config/nds32/nds32-intrinsic.c: Likewise.
      	* config/nds32/nds32-isr.c: Likewise.
      	* config/nds32/nds32-md-auxiliary.c: Likewise.
      	* config/nds32/nds32-memory-manipulation.c: Likewise.
      	* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
      	* config/nds32/nds32-predicates.c: Likewise.
      	* config/nds32/nds32.c: Likewise.
      	* config/nios2/nios2.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/pdp11/pdp11.c: Likewise.
      	* config/rl78/rl78.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/rx/rx.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/score/score.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/v850/v850.c: Likewise.
      	* config/vax/vax.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* ada/gcc-interface/misc.c: Adjust include files.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* c/c-decl.c: Adjust include files.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* c-family/c-pragma.c: Adjust include files.
      	* c-family/c-semantics.c: Likewise.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* cp/cp-tree.h: Adjust include files.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* fortran/f95-lang.c: Adjust include files.
      	* fortran/trans-decl.c: Likewise.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* java/class.c: Adjust include files.
      	* java/resource.c: Likewise.
      
      2014-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* objc/objc-act.c: Adjust include files.
      
      From-SVN: r216337
      Andrew MacLeod committed
  17. 15 Oct, 2014 1 commit
    • re PR rtl-optimization/63448 (ICE when compiling atlas 3.10.2) · f54437d5
      2014-10-15  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/63448
      	* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Remove.
      	(LRA_MAX_ASSIGNMENT_ITERATION_NUMBER): New.
      	(LRA_MAX_INHERITANCE_PASSES): Use it.
      	(lra_constraint_iter_after_spill): Remove.
      	(lra_assignment_iter): New.
      	(lra_assignment_iter_after_spill): New.
      	* lra-assigns.c (lra_assignment_iter): New.
      	(lra_assignment_iter_after_spill): New.
      	(former_reload_pseudo_spill_p): New.
      	(spill_for): Set up former_reload_pseudo_spill_p.
      	(setup_live_pseudos_and_spill_after_risky): Ditto.
      	(assign_by_spills): Ditto.
      	(lra_assign): Increment lra_assignment_iter.  Print the iteration
      	number.  Reset former_reload_pseudo_spill_p.  Check
      	lra_assignment_iter_after_spill.
      	* lra.c (lra): Remove lra_constraint_iter_after_spill.  Initialize
      	lra_assignment_iter and lra_assignment_iter_after_spill.
      	* lra-constraints.c (lra_constraint_iter_after_spill): Remove.
      	(lra_constraints): Remove code with
      	lra_assignment_iter_after_spill.
      
      2014-10-15  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/63448
      	* gcc.target/i386/pr63448.c: New test.
      
      From-SVN: r216270
      Vladimir Makarov committed
  18. 25 Sep, 2014 1 commit
  19. 18 Sep, 2014 1 commit
  20. 09 Sep, 2014 1 commit
    • recog_memoized works on an rtx_insn * · 647d790d
      gcc/ChangeLog:
      2014-09-09  David Malcolm  <dmalcolm@redhat.com>
      
      	* caller-save.c (rtx saveinsn): Strengthen this variable from rtx
      	to rtx_insn *.
      	(restinsn): Likewise.
      	* config/aarch64/aarch64-protos.h (aarch64_simd_attr_length_move):
      	Likewise for param.
      	* config/aarch64/aarch64.c (aarch64_simd_attr_length_move):
      	Likewise.
      	* config/arc/arc-protos.h (arc_adjust_insn_length): Likewise for
      	first param.
      	(arc_hazard): Likewise for both params.
      	* config/arc/arc.c (arc600_corereg_hazard): Likewise, adding
      	checked casts to rtx_sequence * and uses of the insn method for
      	type-safety.
      	(arc_hazard): Strengthen both params from rtx to rtx_insn *.
      	(arc_adjust_insn_length): Likewise for param "insn".
      	(struct insn_length_parameters_s): Likewise for first param of
      	"get_variants" callback field.
      	(arc_get_insn_variants): Likewise for first param and local
      	"inner".  Replace a check of GET_CODE with a dyn_cast to
      	rtx_sequence *, using methods for type-safety and clarity.
      	* config/arc/arc.h (ADJUST_INSN_LENGTH): Use casts to
      	rtx_sequence * and uses of the insn method for type-safety when
      	invoking arc_adjust_insn_length.
      	* config/arm/arm-protos.h (arm_attr_length_move_neon): Likewise
      	for param.
      	(arm_address_offset_is_imm): Likewise.
      	(struct tune_params): Likewise for params 1 and 3 of the
      	"sched_adjust_cost" callback field.
      	* config/arm/arm.c (cortex_a9_sched_adjust_cost): Likewise for
      	params 1 and 3 ("insn" and "dep").
      	(xscale_sched_adjust_cost): Likewise.
      	(fa726te_sched_adjust_cost): Likewise.
      	(cortexa7_older_only): Likewise for param "insn".
      	(cortexa7_younger): Likewise.
      	(arm_attr_length_move_neon): Likewise.
      	(arm_address_offset_is_imm): Likewise.
      	* config/avr/avr-protos.h (avr_notice_update_cc): Likewise.
      	* config/avr/avr.c (avr_notice_update_cc): Likewise.
      	* config/bfin/bfin.c (hwloop_pattern_reg): Likewise.
      	(workaround_speculation): Likewise for local "last_condjump".
      	* config/c6x/c6x.c (shadow_p): Likewise for param "insn".
      	(shadow_or_blockage_p): Likewise.
      	(get_unit_reqs): Likewise.
      	(get_unit_operand_masks): Likewise.
      	(c6x_registers_update): Likewise.
      	(returning_call_p): Likewise.
      	(can_use_callp): Likewise.
      	(convert_to_callp): Likewise.
      	(find_last_same_clock): Likwise for local "t".
      	(reorg_split_calls): Likewise for local "shadow".
      	(hwloop_pattern_reg): Likewise for param "insn".
      	* config/frv/frv-protos.h (frv_final_prescan_insn): Likewise.
      	* config/frv/frv.c (frv_final_prescan_insn): Likewise.
      	(frv_extract_membar): Likewise.
      	(frv_optimize_membar_local): Strengthen param "last_membar" from
      	rtx * to rtx_insn **.
      	(frv_optimize_membar_global): Strengthen param "membar" from rtx
      	to rtx_insn *.
      	(frv_optimize_membar): Strengthen local "last_membar" from rtx *
      	to rtx_insn **.
      	* config/ia64/ia64-protos.h (ia64_st_address_bypass_p): Strengthen
      	both params from rtx to rtx_insn *.
      	(ia64_ld_address_bypass_p): Likewise.
      	* config/ia64/ia64.c (ia64_safe_itanium_class): Likewise for param
      	"insn".
      	(ia64_safe_type): Likewise.
      	(group_barrier_needed): Likewise.
      	(safe_group_barrier_needed): Likewise.
      	(ia64_single_set): Likewise.
      	(is_load_p): Likewise.
      	(record_memory_reference): Likewise.
      	(get_mode_no_for_insn): Likewise.
      	(important_for_bundling_p): Likewise.
      	(unknown_for_bundling_p): Likewise.
      	(ia64_st_address_bypass_p): Likewise for both params.
      	(ia64_ld_address_bypass_p): Likewise.
      	(expand_vselect): Introduce new local rtx_insn * "insn", using it
      	in place of rtx "x" after the emit_insn call.
      	* config/i386/i386-protos.h (x86_extended_QIreg_mentioned_p):
      	Strengthen param from rtx to rtx_insn *.
      	(ix86_agi_dependent): Likewise for both params.
      	(ix86_attr_length_immediate_default): Likewise for param 1.
      	(ix86_attr_length_address_default): Likewise for param.
      	(ix86_attr_length_vex_default): Likewise for param 1.
      	* config/i386/i386.c (ix86_attr_length_immediate_default):
      	Likewise for param "insn".
      	(ix86_attr_length_address_default): Likewise.
      	(ix86_attr_length_vex_default): Likewise.
      	(ix86_agi_dependent): Likewise for both params.
      	(x86_extended_QIreg_mentioned_p): Likewise for param "insn".
      	(vselect_insn): Likewise for this variable.
      	* config/m68k/m68k-protos.h (m68k_sched_attr_opx_type): Likewise
      	for param 1.
      	(m68k_sched_attr_opy_type): Likewise.
      	* config/m68k/m68k.c (sched_get_operand): Likewise.
      	(sched_attr_op_type): Likewise.
      	(m68k_sched_attr_opx_type): Likewise.
      	(m68k_sched_attr_opy_type): Likewise.
      	(sched_get_reg_operand): Likewise.
      	(sched_get_mem_operand): Likewise.
      	(m68k_sched_address_bypass_p): Likewise for both params.
      	(sched_get_indexed_address_scale): Likewise.
      	(m68k_sched_indexed_address_bypass_p): Likewise.
      	* config/m68k/m68k.h (m68k_sched_address_bypass_p): Likewise.
      	(m68k_sched_indexed_address_bypass_p): Likewise.
      	* config/mep/mep.c (mep_jmp_return_reorg): Strengthen locals
      	"label", "ret" from rtx to rtx_insn *, adding a checked cast and
      	removing another.
      	* config/mips/mips-protos.h (mips_linked_madd_p): Strengthen both
      	params from rtx to rtx_insn *.
      	(mips_fmadd_bypass): Likewise.
      	* config/mips/mips.c (mips_fmadd_bypass): Likewise.
      	(mips_linked_madd_p): Likewise.
      	(mips_macc_chains_last_hilo): Likewise for this variable.
      	(mips_macc_chains_record): Likewise for param.
      	(vr4130_last_insn): Likewise for this variable.
      	(vr4130_swap_insns_p): Likewise for both params.
      	(mips_ls2_variable_issue): Likewise for param.
      	(mips_need_noat_wrapper_p): Likewise for param "insn".
      	(mips_expand_vselect): Add a new local rtx_insn * "insn", using it
      	in place of "x" after the emit_insn.
      	* config/pa/pa-protos.h (pa_fpstore_bypass_p): Strengthen both
      	params from rtx to rtx_insn *.
      	* config/pa/pa.c (pa_fpstore_bypass_p): Likewise.
      	(pa_combine_instructions): Introduce local "par" for result of
      	gen_rtx_PARALLEL, moving decl and usage of new_rtx for after call
      	to make_insn_raw.
      	(pa_can_combine_p): Strengthen param "new_rtx" from rtx to rtx_insn *.
      	* config/rl78/rl78.c (insn_ok_now): Likewise for param "insn".
      	(rl78_alloc_physical_registers_op1): Likewise.
      	(rl78_alloc_physical_registers_op2): Likewise.
      	(rl78_alloc_physical_registers_ro1): Likewise.
      	(rl78_alloc_physical_registers_cmp): Likewise.
      	(rl78_alloc_physical_registers_umul): Likewise.
      	(rl78_alloc_address_registers_macax): Likewise.
      	(rl78_alloc_physical_registers): Likewise for locals "insn", "curr".
      	* config/s390/predicates.md (execute_operation): Likewise for
      	local "insn".
      	* config/s390/s390-protos.h (s390_agen_dep_p): Likewise for both
      	params.
      	* config/s390/s390.c (s390_safe_attr_type): Likewise for param.
      	(addr_generation_dependency_p): Likewise for param "insn".
      	(s390_agen_dep_p): Likewise for both params.
      	(s390_fpload_toreg): Likewise for param "insn".
      	* config/sh/sh-protos.h (sh_loop_align): Likewise for param.
      	* config/sh/sh.c (sh_loop_align): Likewise for param and local
      	"next".
      	* config/sh/sh.md (define_peephole2): Likewise for local "insn2".
      	* config/sh/sh_treg_combine.cc
      	(sh_treg_combine::make_inv_ccreg_insn): Likewise for return type
      	and local "i".
      	(sh_treg_combine::try_eliminate_cstores): Likewise for local "i".
      	* config/stormy16/stormy16.c (combine_bnp): Likewise for locals
      	"and_insn", "load", "shift".
      	* config/tilegx/tilegx.c (match_pcrel_step2): Likewise for param
      	"insn".
      	* final.c (final_scan_insn): Introduce local rtx_insn * "other"
      	for XEXP (note, 0) of the REG_CC_SETTER note.
      	(cleanup_subreg_operands): Strengthen param "insn" from rtx to
      	rtx_insn *, eliminating a checked cast made redundant by this.
      	* gcse.c (process_insert_insn): Strengthen local "insn" from rtx
      	to rtx_insn *.
      	* genattr.c (main): When writing out the prototype to
      	const_num_delay_slots, strengthen the param from rtx to
      	rtx_insn *.
      	* genattrtab.c (write_const_num_delay_slots): Likewise when
      	writing out the implementation of const_num_delay_slots.
      	* hw-doloop.h (struct hw_doloop_hooks): Strengthen the param
      	"insn" of callback field "end_pattern_reg" from rtx to rtx_insn *.
      	* ifcvt.c (noce_emit_store_flag): Eliminate local rtx "tmp" in
      	favor of new rtx locals "src" and "set" and new local rtx_insn *
      	"insn" and "seq".
      	(noce_emit_move_insn): Strengthen locals "seq" and "insn" from rtx
      	to rtx_insn *.
      	(noce_emit_cmove): Eliminate local rtx "tmp" in favor of new rtx
      	locals "cond", "if_then_else", "set" and new rtx_insn * locals
      	"insn" and "seq".
      	(noce_try_cmove_arith): Strengthen locals "insn_a" and "insn_b",
      	"last" from rtx to rtx_insn *.  Likewise for a local "tmp",
      	renaming to "tmp_insn".  Eliminate the other local rtx "tmp" from
      	the top-level scope, replacing with new more tightly-scoped rtx
      	locals "reg", "pat", "mem" and rtx_insn * "insn", "copy_of_a",
      	"new_insn", "copy_of_insn_b", and make local rtx "set" more
      	tightly-scoped.
      	* ira-int.h (ira_setup_alts): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	* ira.c (setup_prohibited_mode_move_regs): Likewise for local
      	"move_insn".
      	(ira_setup_alts): Likewise for param "insn".
      	* lra-constraints.c (emit_inc): Likewise for local "add_insn".
      	* lra.c (emit_add3_insn): Split local rtx "insn" in two, an rtx
      	and an rtx_insn *.
      	(lra_emit_add): Eliminate top-level local rtx "insn" in favor of
      	new more-tightly scoped rtx locals "add3_insn", "insn",
      	"add2_insn" and rtx_insn * "move_insn".
      	* postreload-gcse.c (eliminate_partially_redundant_load): Add
      	checked cast on result of gen_move_insn when invoking
      	extract_insn.
      	* recog.c (insn_invalid_p): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(verify_changes): Add a checked cast on "object" when invoking
      	insn_invalid_p.
      	(extract_insn_cached): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(extract_constrain_insn_cached): Likewise.
      	(extract_insn): Likewise.
      	* recog.h (insn_invalid_p): Likewise for param 1.
      	(recog_memoized): Likewise for param.
      	(extract_insn): Likewise.
      	(extract_constrain_insn_cached): Likewise.
      	(extract_insn_cached): Likewise.
      	* reload.c (can_reload_into): Likewise for local "test_insn".
      	* reload.h (cleanup_subreg_operands): Likewise for param.
      	* reload1.c (emit_insn_if_valid_for_reload): Rename param from
      	"insn" to "pat", reintroducing "insn" as an rtx_insn * on the
      	result of emit_insn.  Remove a checked cast made redundant by this
      	change.
      	* sel-sched-ir.c (sel_insn_rtx_cost): Strengthen param "insn" from
      	rtx to rtx_insn *.
      	* sel-sched.c (get_reg_class): Likewise.
      
      From-SVN: r215087
      David Malcolm committed
  21. 28 Aug, 2014 1 commit
    • Work towards NEXT_INSN/PREV_INSN requiring insns as their params · dc01c3d1
      gcc/
      2014-08-28  David Malcolm  <dmalcolm@redhat.com>
      
      	* cfgexpand.c (pass_expand::execute): Strengthen local "after"
      	from rtx to rtx_insn *.
      	* cfgrtl.c (force_nonfallthru_and_redirect): Replace use of local
      	rtx "note" with new local rtx_insn * "new_head" when calculating
      	head insn of new basic block.
      	* combine.c (combine_split_insns): Strengthen return type and local
      	"ret" from rtx to rtx_insn *.
      	(likely_spilled_retval_p): Likewise for locals "use" and "p".
      	(try_combine): Eliminate local "m_split", splitting into new
      	locals "m_split_insn" and "m_split_pat".
      	(find_split_point): Strengthen local "seq" from rtx into
      	rtx_insn *.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise for
      	locals "label", "branch".
      	* config/spu/spu.md (define_expand "smulsi3_highpart"): Likewise
      	for local "insn".
      	(define_expand "umulsi3_highpart"): Likewise for local "insn".
      	* dse.c (note_add_store_info): Likewise for fields "first",
      	"current".
      	(note_add_store): Likewise for local "insn".
      	(emit_inc_dec_insn_before): Likewise for locals "insn",
      	"new_insn", "cur".
      	(find_shift_sequence): Likewise for locals "shift_seq", "insn".
      	(replace_read): Likewise for locals "insns", "this_insn".
      	* dwarf2cfi.c (dw_trace_info): Likewise for field "eh_head".
      	(notice_eh_throw): Likewise for param "insn".
      	(before_next_cfi_note): Likewise for return type, param, and local
      	"prev".
      	(connect_traces): Likewise for local "note".
      	* emit-rtl.c (reset_all_used_flags): Likewise for local "p".
      	(verify_rtl_sharing): Likewise.
      	(unshare_all_rtl_in_chain): Likewise for param "insn".
      	(get_first_nonnote_insn): Likewise for local "insn".
      	(get_last_nonnote_insn): Likewise.  Introduce local rtx_sequence *
      	"seq" and use its methods to clarify things.
      	(next_insn): Strengthen return type from rtx to rtx_insn *.
      	Rename param "insn" to "uncast_insn" and reintroduce "insn" as a
      	local rtx_insn * using a checked cast, dropping a checked cast
      	made redundant by this change.  Use a cast to and method of
      	rtx_sequence to clarify the code.
      	(previous_insn): Rename param "insn" to "uncast_insn" and
      	reintroduce "insn" as a local rtx_insn * using a checked cast,
      	dropping a checked cast made redundant by this change.  Use a cast
      	to and method of rtx_sequence to clarify the code.
      	(next_nonnote_insn): Rename param "insn" to "uncast_insn" and
      	reintroduce "insn" as a local rtx_insn * using a checked cast,
      	dropping a checked cast made redundant by this change.
      	(next_nonnote_insn_bb): Likewise.
      	(prev_nonnote_insn): Likewise.
      	(prev_nonnote_insn_bb): Likewise.
      	(next_nondebug_insn): Likewise.
      	(prev_nondebug_insn): Likewise.
      	(next_nonnote_nondebug_insn): Likewise.
      	(prev_nonnote_nondebug_insn): Likewise.
      	(next_real_insn): Likewise.
      	(prev_real_insn): Likewise.
      	(next_active_insn): Likewise.
      	(prev_active_insn): Likewise.
      	(next_cc0_user): Likewise.  Use rtx_sequence and a method for
      	clarity.
      	(prev_cc0_setter): Likewise.
      	(try_split): Rename param "trial" to "uncast_trial" and
      	reintroduce "insn" as a local rtx_insn * using a checked cast,
      	dropping checked casts made redundant by this change.
      	Strengthen locals "seq", "tem", "insn_last", "insn", "next" from
      	rtx to rtx_insn *.
      	(remove_insn): Rename param "insn" to "uncast_insn" and
      	reintroduce "insn" as a local rtx_insn * using a checked cast.
      	(emit_pattern_after_setloc): Likewise for param "after", as
      	"uncast_after".
      	(emit_pattern_after): Likewise.  Strengthen local "prev" from
      	rtx to rtx_insn *.
      	(emit_pattern_before_setloc): Rename param "before" to
      	"uncast_before" and reintroduce "before" as a local rtx_insn *
      	using a checked cast.  Strengthen locals "first", "last" from
      	rtx to rtx_insn *.
      	(emit_pattern_before): Likewise rename/cast param "before" to
      	"uncast_before". Strengthen local "next" from rtx to rtx_insn *.
      	* except.c (copy_reg_eh_region_note_forward): Strengthen param
      	"first" and local "insn" from rtx to rtx_insn *.
      	(copy_reg_eh_region_note_backward): Likewise for param "last"
      	and local "insn".
      	* expr.c (fixup_args_size_notes): Rename param "last" to
      	"uncast_last" and reintroduce "last" as a local rtx_insn *
      	using a checked cast.  Strengthen local "insn" from rtx to
      	rtx_insn *.
      	* function.c (set_insn_locations): Strengthen param "insn" from
      	rtx to rtx_insn *.
      	(record_insns): Likewise for param "insns" and local "tmp".
      	(active_insn_between): Rename param "tail" to
      	"uncast_tail" and reintroduce "tail" as a local rtx_insn *
      	using a checked cast.
      	(thread_prologue_and_epilogue_insns): Split out top-level local
      	rtx "seq" into three different rtx_insn * locals.  Strengthen
      	local "prologue_seq" from rtx to rtx_insn *.
      	* gcse.c (insert_insn_end_basic_block): Strenghen local "insn"
      	from rtx to rtx_insn *.
      	* haifa-sched.c (initiate_bb_reg_pressure_info): Likewise.
      	(priority): Likewise for locals "prev_first", "twin".
      	(setup_insn_max_reg_pressure): Likewise for param "after".
      	(sched_setup_bb_reg_pressure_info): Likewise.
      	(no_real_insns_p): Strengthen params from const_rtx to
      	const rtx_insn *.
      	(schedule_block): Strengthen local "next_tail" from rtx to
      	rtx_insn *.
      	* ifcvt.c (find_active_insn_before): Strengthen return type and
      	param "insn" from rtx to rtx_insn *.
      	(find_active_insn_after): Likewise.
      	(cond_exec_process_insns): Likewise for param "start" and local "insn".
      	(cond_exec_process_if_block): Likewise for locals "then_start",
      	"then_end", "else_start", "else_end", "insn", "start", "end", "from".
      	(noce_process_if_block): Likewise for local "jump".
      	(merge_if_block): Likewise for two locals named "end".
      	(cond_exec_find_if_block): Likewise for local "last_insn".
      	* jump.c (delete_related_insns): Rename param "insn" to
      	"uncast_insn" and reintroduce "insn" as a local rtx_insn * using a
      	checked cast.  Strengthen local "p" from rtx to rtx_insn *.
      	* lra-constraints.c (inherit_reload_reg): Replace NULL_RTX with
      	NULL.
      	(split_reg): Likewise.
      	* lra.c (lra_process_new_insns): Likewise.
      	* modulo-sched.c (permute_partial_schedule): Strengthen param
      	"last" from rtx to rtx_insn *.
      	* optabs.c (add_equal_note): Likewise for param "insns" and local
      	"last_insn".
      	(expand_binop_directly): Add checked casts to rtx_insn * within
      	NEXT_INSN (pat) uses.
      	(expand_unop_direct): Likewise.
      	(maybe_emit_unop_insn): Likewise.
      	* recog.c (peep2_attempt): Strengthen locals "last",
      	"before_try", "x" from rtx to rtx_insn *.
      	* reorg.c (optimize_skip): Strengthen return type and local
      	"delay_list" from rtx to rtx_insn_list *.  Strengthen param "insn"
      	and locals "trial", "next_trial" from rtx to rtx_insn *.
      	* resource.c (next_insn_no_annul): Strengthen return type and
      	param "insn" from rtx to rtx_insn *.  Use a cast to and method of
      	rtx_sequence to clarify the code.
      	(mark_referenced_resources): Add a checked cast to rtx_insn *
      	within PREV_INSN (x).
      	(find_dead_or_set_registers): Strengthen return type, param
      	"target", locals "insn", "next", "jump_insn", "this_jump_insn"
      	from rtx to rtx_insn *.  Strengthen param "jump_target" from rtx *
      	to rtx_insn **.
      	(mark_target_live_regs): Strengthen params "insns" and "target",
      	locals "insn", "jump_target", "start_insn", "stop_insn" from rtx
      	to rtx_insn *.  Use cast to and method of rtx_sequence to clarify
      	the code.
      	* resource.h (mark_target_live_regs): Strengthen params 1 and 2
      	from rtx to rtx_insn *.
      	* rtl.h (copy_reg_eh_region_note_forward): Strengthen second param
      	from rtx to rtx_insn *.
      	(copy_reg_eh_region_note_backward): Likewise.
      	(unshare_all_rtl_in_chain): Likewise for sole param.
      	(dump_rtl_slim): Strengthen second and third params from const_rtx
      	to const rtx_insn *.
      	* sched-deps.c (sched_free_deps): Strengthen params "head" and
      	"tail" and locals "insn", "next_tail" from rtx to rtx_insn *.
      	* sched-ebb.c (init_ready_list): Strengthen locals "prev_head",
      	"next_tail" from rtx to rtx_insn *.
      	(begin_move_insn): Likewise for local "next".
      	* sched-int.h (sched_free_deps): Likewise for first and second
      	params.
      	(no_real_insns_p): Strengthen both params from const_rtx to
      	const rtx_insn *.
      	(sched_setup_bb_reg_pressure_info): Strengthen second params from
      	rtx to rtx_insn *.
      	* sched-rgn.c (init_ready_list): Likewise for locals "prev_head",
      	"next_tail".
      	* sched-vis.c (dump_rtl_slim): Strengthen params "first", "last"
      	and locals "insn", "tail" from const_rtx to const rtx_insn *.
      	(rtl_dump_bb_for_graph): Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(debug_rtl_slim): Strengthen params "first" and "last" from
      	const_rtx to const rtx_insn *.
      	* shrink-wrap.c (try_shrink_wrapping): Strengthen param
      	"prologue_seq" and locals "seq", "p_insn" from rtx to rtx_insn *.
      	(convert_to_simple_return): Likewise for param "returnjump".
      	* shrink-wrap.h (try_shrink_wrapping): Likewise for param
      	"prologue_seq".
      	(convert_to_simple_return): Likewise for param "returnjump".
      	* valtrack.c (propagate_for_debug): Likewise for params
      	"insn", "last".
      	* valtrack.h (propagate_for_debug): Likewise for second param.
      
      From-SVN: r214693
      David Malcolm committed
  22. 26 Aug, 2014 1 commit
    • Strengthen various insn emission functions · fee3e72c
      gcc/
      2014-08-26  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (push_to_sequence): Strengthen param from rtx to
      	rtx_insn *.
      	(push_to_sequence2): Likewise for both params.
      	(delete_insns_since): Likewise for param.
      	(reorder_insns_nobb): Likewise for all three params.
      	(set_new_first_and_last_insn): Likewise for both params.
      
      	* emit-rtl.h (set_first_insn): Strengthen param "insn" from rtx to
      	rtx_insn *.  Remove now-redundant cast.
      	(set_last_insn): Likewise.
      
      	* builtins.c (expand_builtin_return): Strengthen local
      	"call_fusage" from rtx to rtx_insn *.
      	* cfgrtl.c (create_basic_block_structure): Likewise for local
      	"after".
      	* emit-rtl.c (set_new_first_and_last_insn): Likewise for params
      	"first", "last" and local "insn".
      	(delete_insns_since): Likewise for param "from".
      	(reorder_insns_nobb): Likewise for params "from", "to", "after"
      	and local "x".
      	(push_to_sequence): Likewise for param "first" and local "last".
      	(push_to_sequence2): Likewise for params "first" and "last".
      	* lra.c (emit_add3_insn): Likewise for local "last".
      	(lra_emit_add): Likewise.
      	* lra-constraints.c (base_to_reg): Likewise for locals "insn",
      	"last_insn".
      	(process_address_1): Likewise for locals "insn", last".
      	* modulo-sched.c (ps_first_note): Likewise for return type.
      	* optabs.c (expand_binop_directly): Likewise for param "last".
      
      From-SVN: r214539
      David Malcolm committed
  23. 22 Aug, 2014 1 commit
    • lra: use rtx_insn · cfa434f6
      gcc/
      	* lra-int.h (struct lra_insn_recog_data): Strengthen field "insn"
      	from rtx to rtx_insn *.
      	(lra_push_insn): Likewise for 1st param.
      	(lra_push_insn_and_update_insn_regno_info): Likewise.
      	(lra_pop_insn): Likewise for return type.
      	(lra_invalidate_insn_data): Likewise for 1st param.
      	(lra_set_insn_deleted): Likewise.
      	(lra_delete_dead_insn): Likewise.
      	(lra_process_new_insns): Likewise for first 3 params.
      	(lra_set_insn_recog_data): Likewise for 1st param.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_used_insn_alternative): Likewise.
      	(lra_invalidate_insn_regno_info): Likewise.
      	(lra_update_insn_regno_info): Likewise.
      	(lra_former_scratch_operand_p): Likewise.
      	(lra_eliminate_regs_1): Likewise.
      	(lra_get_insn_recog_data): Likewise.
      
      	* lra-assigns.c (assign_by_spills): Strengthen local "insn" from
      	rtx to rtx_insn *.
      
      	* lra-coalesce.c (move_freq_compare_func): Likewise for locals
      	"mv1" and "mv2".
      	(substitute_within_insn): New.
      	(lra_coalesce): Strengthen locals "mv", "insn", "next" from rtx to
      	rtx_insn *.  Strengthen sorted_moves from rtx * to rxt_insn **.
      	Replace call to "substitute" with call to substitute_within_insn.
      
      	* lra-constraints.c (curr_insn): Strengthen from rtx to
      	rtx_insn *.
      	(get_equiv_with_elimination): Likewise for param "insn".
      	(match_reload): Strengthen params "before" and "after" from rtx *
      	to rtx_insn **.
      	(emit_spill_move): Likewise for return type.  Add a checked cast
      	to rtx_insn * on result of gen_move_insn for now.
      	(check_and_process_move): Likewise for local "before".  Replace
      	NULL_RTX with NULL when referring to insns.
      	(process_addr_reg): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.
      	(insert_move_for_subreg): Likewise.
      	(simplify_operand_subreg): Strengthen locals "before" and "after"
      	from rtx to rtx_insn *.
      	(process_address_1): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.  Strengthen locals "insns", "last_insn" from
      	rtx to rtx_insn *.
      	(process_address): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.
      	(emit_inc): Strengthen local "last" from rtx to rtx_insn *.
      	(curr_insn_transform): Strengthen locals "before" and "after"
      	from rtx to rtx_insn *.  Replace NULL_RTX with NULL when referring
      	to insns.
      	(loc_equivalence_callback): Update cast of "data", changing
      	resulting type from rtx to rtx_insn *.
      	(substitute_pseudo_within_insn): New.
      	(inherit_reload_reg): Strengthen param "insn" from rtx to
      	rtx_insn *; likewise for local "new_insns".  Replace NULL_RTX with
      	NULL when referring to insns.  Add a checked cast to rtx_insn *
      	when using usage_insn to invoke lra_update_insn_regno_info.
      	(split_reg): Strengthen param "insn" from rtx to rtx_insn *;
      	likewise for locals "restore", "save".  Add checked casts to
      	rtx_insn * when using usage_insn to invoke
      	lra_update_insn_regno_info and lra_process_new_insns.  Replace
      	NULL_RTX with NULL when referring to insns.
      	(split_if_necessary): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(update_ebb_live_info): Likewise for params "head", "tail" and local
      	"prev_insn".
      	(get_last_insertion_point): Likewise for return type and local "insn".
      	(get_live_on_other_edges): Likewise for local "last".
      	(inherit_in_ebb): Likewise for params "head", "tail" and locals
      	"prev_insn", "next_insn", "restore".
      	(remove_inheritance_pseudos): Likewise for local "prev_insn".
      	(undo_optional_reloads): Likewise for local "insn".
      
      	* lra-eliminations.c (lra_eliminate_regs_1): Likewise for param
      	"insn".
      	(lra_eliminate_regs): Replace NULL_RTX with NULL when referring to
      	insns.
      	(eliminate_regs_in_insn): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(spill_pseudos): Likewise for local "insn".
      	(init_elimination): Likewise.
      	(process_insn_for_elimination): Likewise for param "insn".
      
      	* lra-lives.c (curr_insn): Likewise.;
      
      	* lra-spills.c (assign_spill_hard_regs): Likewise for local "insn".
      	(remove_pseudos): Likewise for param "insn".
      	(spill_pseudos): Likewise for local "insn".
      	(lra_final_code_change): Likewise for locals "insn", "curr".
      
      	* lra.c (lra_invalidate_insn_data): Likewise for param "insn".
      	(lra_set_insn_deleted): Likewise.
      	(lra_delete_dead_insn): Likewise, and for local "prev".
      	(new_insn_reg): Likewise for param "insn".
      	(lra_set_insn_recog_data): Likewise.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_used_insn_alternative): Likewise.
      	(get_insn_freq): Likewise.
      	(invalidate_insn_data_regno_info): Likewise.
      	(lra_invalidate_insn_regno_info): Likewise.
      	(lra_update_insn_regno_info): Likewise.
      	(lra_constraint_insn_stack): Strengthen from vec<rtx> to
      	vec<rtx_insn *>.
      	(lra_push_insn_1): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(lra_push_insn): Likewise.
      	(lra_push_insn_and_update_insn_regno_info): Likewise.
      	(lra_pop_insn): Likewise for return type and local "insn".
      	(push_insns): Likewise for params "from", "to", and local "insn".
      	(setup_sp_offset): Likewise for params "from", "last" and locals
      	"before", "insn".
      	(lra_process_new_insns): Likewise for params "insn", "before",
      	"after" and local "last".
      	(struct sloc): Likewise for field "insn".
      	(lra_former_scratch_operand_p): Likewise for param "insn".
      	(remove_scratches): Likewise for locals "insn", "last".
      	(check_rtl): Likewise for local "insn".
      	(add_auto_inc_notes): Likewise for param "insn".
      	(update_inc_notes): Likewise for local "insn".
      	(lra): Replace NULL_RTX with NULL when referring to insn.
      
      From-SVN: r214348
      David Malcolm committed
  24. 04 Jun, 2014 1 commit
    • lra-int.h (lra_static_insn_data): Make operand_alternative a const pointer. · 0c331756
      gcc/
      	* lra-int.h (lra_static_insn_data): Make operand_alternative a
      	const pointer.
      	(target_lra_int, default_target_lra_int, this_target_lra_int)
      	(op_alt_data): Delete.
      	* lra.h (lra_init): Delete.
      	* lra.c (default_target_lra_int, this_target_lra_int): Delete.
      	(init_insn_code_data_once): Remove op_alt_data handling.
      	(finish_insn_code_data_once): Likewise.
      	(init_op_alt_data): Delete.
      	(get_static_insn_data): Initialize operand_alternative to null.
      	(free_insn_recog_data): Cast operand_alternative before freeing it.
      	(setup_operand_alternative): Take the operand_alternative as
      	parameter and assume it isn't already cached in the static
      	insn data.
      	(lra_set_insn_recog_data): Update accordingly.
      	(lra_init): Delete.
      	* ira.c (ira_init): Don't call lra_init.
      	* target-globals.h (this_target_lra_int): Declare.
      	(target_globals): Remove lra_int.
      	(restore_target_globals): Update accordingly.
      	* target-globals.c: Don't include lra-int.h.
      	(default_target_globals, save_target_globals): Remove lra_int.
      
      From-SVN: r211241
      Richard Sandiford committed
  25. 30 May, 2014 1 commit
    • -fuse-caller-save - Support in lra · 10e1bdb2
      2014-05-30  Tom de Vries  <tom@codesourcery.com>
      
      	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
      	* lra.c (initialize_lra_reg_info_element): Add init of
      	actual_call_used_reg_set field.
      	(lra): Call lra_create_live_ranges before lra_inheritance for
      	-fuse-caller-save.
      	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
      	-fuse-caller-save.
      	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
      	instead of call_used_reg_set for -fuse-caller-save.
      	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.
      
      From-SVN: r211074
      Tom de Vries committed
  26. 28 May, 2014 2 commits
    • revert: lra-int.h (struct lra_reg): Add field actual_call_used_reg_set. · ea0b381f
      2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	Revert:
      	2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
      	* lra.c (initialize_lra_reg_info_element): Add init of
      	actual_call_used_reg_set field.
      	(lra): Call lra_create_live_ranges before lra_inheritance for
      	-fuse-caller-save.
      	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
      	-fuse-caller-save.
      	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
      	instead of call_used_reg_set for -fuse-caller-save.
      	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.
      
      From-SVN: r211033
      Tom de Vries committed
    • -fuse-caller-save - Support in lra · b8c6a45a
      2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
      	* lra.c (initialize_lra_reg_info_element): Add init of
      	actual_call_used_reg_set field.
      	(lra): Call lra_create_live_ranges before lra_inheritance for
      	-fuse-caller-save.
      	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
      	-fuse-caller-save.
      	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
      	instead of call_used_reg_set for -fuse-caller-save.
      	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.
      
      From-SVN: r211010
      Tom de Vries committed
  27. 27 May, 2014 1 commit
    • system.h (TEST_BIT): New macro. · 4cc8d9d2
      gcc/
      	* system.h (TEST_BIT): New macro.
      	* recog.h (alternative_mask): New type.
      	(ALL_ALTERNATIVES, ALTERNATIVE_BIT): New macros.
      	(recog_data_d): Replace alternative_enabled_p array with
      	enabled_alternatives.
      	(target_recog): New structure.
      	(default_target_recog, this_target_recog): Declare.
      	(get_enabled_alternatives, recog_init): Likewise.
      	* recog.c (default_target_recog, this_target_recog): New variables.
      	(get_enabled_alternatives): New function.
      	(extract_insn): Use it.
      	(recog_init): New function.
      	(preprocess_constraints, constrain_operands): Adjust for change to
      	recog_data.
      	* postreload.c (reload_cse_simplify_operands): Likewise.
      	* reload.c (find_reloads): Likewise.
      	* ira-costs.c (record_reg_classes): Likewise.
      	* ira-lives.c (single_reg_class): Likewise.  Fix bug in which
      	all alternatives after a disabled one would be skipped.
      	(ira_implicitly_set_insn_hard_regs): Likewise.
      	* ira.c (ira_setup_alts): Adjust for change to recog_data.
      	* lra-int.h (lra_insn_recog_data): Replace alternative_enabled_p
      	with enabled_alternatives.
      	* lra.c (free_insn_recog_data): Update accordingly.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_insn_recog_data): Likewise.  Use get_enabled_alternatives.
      	* lra-constraints.c (process_alt_operands): Likewise.  Handle
      	only_alternative as part of the enabled mask.
      	* target-globals.h (this_target_recog): Declare.
      	(target_globals): Add a recog field.
      	(restore_target_globals): Restore this_target_recog.
      	* target-globals.c: Include recog.h.
      	(default_target_globals): Initialize recog field.
      	(save_target_globals): Likewise.
      	* reginfo.c (reinit_regs): Call recog_init.
      	* toplev.c (backend_init_target): Likewise.
      
      From-SVN: r210964
      Richard Sandiford committed
  28. 24 Mar, 2014 1 commit
    • re PR rtl-optimization/60501 (LRA emits add patterns which might clobber cc) · 72a4ddf2
      2014-03-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	PR rtl-optimization/60501
      	* optabs.def (addptr3_optab): New optab.
      	* optabs.c (gen_addptr3_insn, have_addptr3_insn): New function.
      	* doc/md.texi ("addptrm3"): Document new RTL standard expander.
      	* expr.h (gen_addptr3_insn, have_addptr3_insn): Add prototypes.
      
      	* lra.c (emit_add3_insn): Use the addptr pattern if available.
      
      	* config/s390/s390.md ("addptrdi3", "addptrsi3"): New expanders.
      
      From-SVN: r208796
      Andreas Krebbel committed
  29. 27 Feb, 2014 1 commit
  30. 02 Jan, 2014 1 commit
  31. 16 Dec, 2013 1 commit
  32. 13 Dec, 2013 1 commit
    • ira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s. · 4c2b2d79
      2013-12-13  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* ira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s.
      	* ira.c: Ditto.
      	* lra-int.h (lra_init_equiv): New prototype.
      	* lra-constraints.c (lra_init_equiv, update_equiv): New functions.
      	(loc_equivalence_callback): Use the 3rd arg.
      	(lra_constraints): Update equivalences.  Pass curr_insn to
      	simplify_replace_fn_rtx.
      	* lra.c (lra): Call lra_init_equiv.
      
      From-SVN: r205974
      Vladimir Makarov committed
  33. 09 Dec, 2013 2 commits
    • Eliminate FOR_EACH_BB macro. · 11cd3bed
      gcc/
      	* basic-block.h (FOR_EACH_BB): Eliminate macro.
      
      	* asan.c (transform_statements, execute_sanopt): Eliminate
      	use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun
      	explicit.
      	* auto-inc-dec.c (rest_of_handle_auto_inc_dec): Likewise.
      	* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges,
      	set_edge_can_fallthru_flag, fix_up_fall_thru_edges,
      	fix_crossing_unconditional_branches, add_reg_crossing_jump_notes,
      	insert_section_boundary_note, rest_of_handle_reorder_blocks,
      	duplicate_computed_gotos): Likewise.
      	* cfg.c (clear_edges, compact_blocks, brief_dump_cfg): Likewise.
      	* cfganal.c (find_unreachable_blocks, add_noreturn_fake_exit_edges,
      	compute_dominance_frontiers_1, single_pred_before_succ_order): Likewise.
      	* cfgbuild.c (find_many_sub_basic_blocks): Likewise.
      	* cfgcleanup.c (try_optimize_cfg, delete_dead_jumptables): Likewise.
      	* cfgexpand.c (add_scope_conflicts, discover_nonconstant_array_refs):
      	Likewise.
      	* cfgloop.c (flow_loops_cfg_dump, get_loop_body, record_loop_exits,
      	verify_loop_structure): Likewise.
      	* cfgloopanal.c (mark_loop_exit_edges): Likewise.
      	* cfgrtl.c (compute_bb_for_insn, find_partition_fixes,
      	verify_hot_cold_block_grouping, purge_all_dead_edges,
      	fixup_abnormal_edges, record_effective_endpoints,
      	outof_cfg_layout_mode, fixup_reorder_chain, force_one_exit_fallthru,
      	break_superblocks): Likewise.
      	* cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges,
      	cgraph_rebuild_references): Likewise.
      	* combine-stack-adj.c (combine_stack_adjustments): Likewise.
      	* combine.c (delete_noop_moves, create_log_links,
      	combine_instructions): Likewise.
      	* config/arm/arm.c (thumb1_reorg, thumb2_reorg): Likewise.
      	* config/bfin/bfin.c (bfin_gen_bundles, reorder_var_tracking_notes):
      	Likewise.
      	* config/c6x/c6x.c (c6x_gen_bundles, conditionalize_after_sched,
      	c6x_reorg): Likewise.
      	* config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise.
      	* config/frv/frv.c (frv_optimize_membar): Likewise.
      	* config/i386/i386.c (ix86_finalize_stack_realign_flags): Likewise.
      	* config/ia64/ia64.c (ia64_reorg): Likewise.
      	* config/mips/mips.c (mips_annotate_pic_calls): Likewise.
      	* config/picochip/picochip.c (reorder_var_tracking_notes): Likewise.
      	* config/rs6000/rs6000.c (rs6000_alloc_sdmode_stack_slot): Likewise.
      	* config/s390/s390.c (s390_regs_ever_clobbered): Likewise.
      	* config/sh/sh_treg_combine.cc (sh_treg_combine::execute): Likewise.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
      	* config/tilegx/tilegx.c (tilegx_gen_bundles,
      	reorder_var_tracking_notes): Likewise.
      	* config/tilepro/tilepro.c (tilepro_gen_bundles,
      	reorder_var_tracking_notes): Likewise.
      	* coverage.c (coverage_compute_cfg_checksum): Likewise.
      	* cprop.c (compute_hash_table_work, compute_cprop_data,
      	local_cprop_pass, find_implicit_sets): Likewise.
      	* cse.c (cse_condition_code_reg): Likewise.
      	* dce.c (prescan_insns_for_dce): Likewise.
      	* df-core.c (df_compact_blocks): Likewise.
      	* df-problems.c (df_word_lr_alloc): Likewise.
      	* df-scan.c (df_scan_start_dump, df_scan_blocks, df_insn_rescan_all,
      	df_update_entry_exit_and_calls): Likewise.
      	* dominance.c (calculate_dominance_info, verify_dominators,
      	debug_dominance_info): Likewise.
      	* dse.c (dse_step5_nospill): Likewise.
      	* except.c (finish_eh_generation): Likewise.
      	* final.c (compute_alignments): Likewise.
      	* function.c (thread_prologue_and_epilogue_insns,
      	rest_of_match_asm_constraints): Likewise.
      	* gcse.c (compute_hash_table_work, prune_expressions,
      	compute_pre_data, compute_code_hoist_vbeinout, hoist_code,
      	calculate_bb_reg_pressure, compute_ld_motion_mems): Likewise.
      	* gimple-iterator.c (gsi_commit_edge_inserts): Likewise.
      	* gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour,
      	find_explicit_erroneous_behaviour): Likewise.
      	* graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa,
      	rewrite_cross_bb_scalar_deps_out_of_ssa): Likewise.
      	* haifa-sched.c (haifa_sched_init): Likewise.
      	* hw-doloop.c (discover_loops, set_bb_indices, reorder_loops):
      	Likewise.
      	* ifcvt.c (if_convert): Likewise.
      	* init-regs.c (initialize_uninitialized_regs): Likewise.
      	* ipa-prop.c (ipcp_transform_function): Likewise.
      	* ipa-pure-const.c (analyze_function): Likewise.
      	* ipa-split.c (find_split_points, execute_split_functions): Likewise.
      	* ira-build.c (form_loop_tree): Likewise.
      	* ira-costs.c (find_costs_and_classes): Likewise.
      	* ira-emit.c (emit_moves, add_ranges_and_copies, ira_emit): Likewise.
      	* ira.c (decrease_live_ranges_number, compute_regs_asm_clobbered,
      	mark_elimination, update_equiv_regs, find_moveable_pseudos,
      	split_live_ranges_for_shrink_wrap, allocate_initial_values): Likewise.
      	* jump.c (mark_all_labels): Likewise.
      	* lcm.c (compute_laterin, compute_insert_delete, compute_available,
      	compute_nearerout, compute_rev_insert_delete): Likewise.
      	* loop-init.c (fix_loop_structure): Likewise.
      	* loop-invariant.c (calculate_loop_reg_pressure): Likewise.
      	* lower-subreg.c (decompose_multiword_subregs,
      	decompose_multiword_subregs): Likewise.
      	* lra-assigns.c (assign_by_spills): Likewise.
      	* lra-coalesce.c (lra_coalesce): Likewise.
      	* lra-constraints.c (lra_inheritance, remove_inheritance_pseudos):
      	Likewise.
      	* lra-eliminations.c (lra_init_elimination): Likewise.
      	* lra-spills.c (assign_spill_hard_regs, spill_pseudos,
      	lra_final_code_change): Likewise.
      	* lra.c (remove_scratches, check_rtl, has_nonexceptional_receiver,
      	update_inc_notes): Likewise.
      	* mcf.c (adjust_cfg_counts): Likewise.
      	* mode-switching.c (optimize_mode_switching): Likewise.
      	* modulo-sched.c (rest_of_handle_sms): Likewise.
      	* omp-low.c (optimize_omp_library_calls, expand_omp_taskreg,
      	expand_omp_target): Likewise.
      	* postreload-gcse.c (alloc_mem, compute_hash_table): Likewise.
      	* postreload.c (reload_cse_regs_1): Likewise.
      	* predict.c (strip_predict_hints, tree_bb_level_predictions,
      	tree_estimate_probability, expensive_function_p,
      	estimate_bb_frequencies, compute_function_frequency): Likewise.
      	* profile.c (is_inconsistent, compute_branch_probabilities,
      	branch_prob): Likewise.
      	* ree.c (find_removable_extensions): Likewise.
      	* reg-stack.c (compensate_edges, convert_regs, reg_to_stack): Likewise.
      	* regcprop.c (copyprop_hardreg_forward): Likewise.
      	* reginfo.c (init_subregs_of_mode): Likewise.
      	* regrename.c (regrename_analyze): Likewise.
      	* regstat.c (regstat_compute_ri, regstat_compute_calls_crossed):
      	Likewise.
      	* reload1.c (has_nonexceptional_receiver, reload,
      	calculate_elim_costs_all_insns): Likewise.
      	* resource.c (init_resource_info, free_resource_info): Likewise.
      	* sched-ebb.c (schedule_ebbs): Likewise.
      	* sched-rgn.c (is_cfg_nonregular, find_single_block_region,
      	haifa_find_rgns, sched_rgn_local_init): Likewise.
      	* sel-sched-dump.c (sel_dump_cfg_2): Likewise.
      	* sel-sched-ir.c (init_lv_sets, free_lv_sets,
      	make_regions_from_the_rest): Likewise.
      	* sese.c (build_sese_loop_nests, sese_build_liveouts): Likewise.
      	* stack-ptr-mod.c (notice_stack_pointer_modification): Likewise.
      	* store-motion.c (compute_store_table, build_store_vectors,
      	one_store_motion_pass): Likewise.
      	* tracer.c (tail_duplicate): Likewise.
      	* trans-mem.c (compute_transaction_bits): Likewise.
      	* tree-call-cdce.c (tree_call_cdce): Likewise.
      	* tree-cfg.c (replace_loop_annotate, factor_computed_gotos,
      	fold_cond_expr_cond, make_edges, assign_discriminators,
      	make_abnormal_goto_edges, cleanup_dead_labels, group_case_labels,
      	dump_cfg_stats, gimple_verify_flow_info, print_loop,
      	execute_fixup_cfg): Likewise.
      	* tree-cfgcleanup.c (cleanup_tree_cfg_1, merge_phi_nodes): Likewise.
      	* tree-complex.c (init_dont_simulate_again, tree_lower_complex):
      	Likewise.
      	* tree-dfa.c (collect_dfa_stats, dump_enumerated_decls): Likewise.
      	* tree-eh.c (execute_lower_resx, execute_lower_eh_dispatch,
      	mark_reachable_handlers): Likewise.
      	* tree-emutls.c (lower_emutls_function_body): Likewise.
      	* tree-if-conv.c (main_tree_if_conversion): Likewise.
      	* tree-inline.c (optimize_inline_calls): Likewise.
      	* tree-into-ssa.c (rewrite_into_ssa, update_ssa): Likewise.
      	* tree-nrv.c (tree_nrv, execute_return_slot_opt): Likewise.
      	* tree-object-size.c (compute_object_sizes): Likewise.
      	* tree-outof-ssa.c (eliminate_useless_phis, rewrite_trees,
      	insert_backedge_copies, tree_profiling): Likewise.
      	* tree-scalar-evolution.c (scev_const_prop): Likewise.
      	* tree-sra.c (scan_function, sra_modify_function_body,
      	propagate_dereference_distances, ipa_sra_modify_function_body,
      	convert_callers): Likewise.
      	* tree-ssa-ccp.c (ccp_initialize, execute_fold_all_builtins): Likewise.
      	* tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise.
      	create_outofssa_var_map, coalesce_partitions): Likewise.
      	* tree-ssa-copy.c (init_copy_prop): Likewise.
      	* tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
      	* tree-ssa-dce.c (find_obviously_necessary_stmts,
      	eliminate_unnecessary_stmts): Likewise.
      	* tree-ssa-dom.c (free_all_edge_infos, tree_ssa_dominator_optimize):
      	Likewise.
      	* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise.
      	* tree-ssa-live.c (clear_unused_block_pointer, remove_unused_locals,
      	new_tree_live_info, calculate_live_on_exit, dump_live_info,
      	analyze_memory_references, fill_always_executed_in,
      	tree_ssa_lim_finalize): Likewise.
      	* tree-ssa-loop-manip.c (find_uses_to_rename, verify_loop_closed_ssa):
      	Likewise.
      	* tree-ssa-math-opts.c (execute_cse_reciprocals, execute_cse_sincos,
      	execute_optimize_bswap, execute_optimize_widening_mul): Likewise.
      	* tree-ssa-propagate.c (substitute_and_fold): Likewise.
      	* tree-ssa-structalias.c (compute_points_to_sets): Likewise.
      	* tree-ssa-tail-merge.c (find_same_succ, reset_cluster_vectors):
      	Likewise.
      	* tree-ssa-ter.c (find_replaceable_exprs): Likewise.
      	* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges,
      	tree_ssa_uncprop): Likewise.
      	* tree-ssa-uninit.c (warn_uninitialized_vars,
      	execute_late_warn_uninitialized): Likewise.
      	* tree-ssa.c (verify_ssa, execute_update_addresses_taken): Likewise.
      	* tree-stdarg.c (check_all_va_list_escapes, execute_optimize_stdarg):
      	Likewise.
      	* tree-switch-conversion.c (do_switchconv): Likewise.
      	* tree-vect-generic.c (expand_vector_operations): Likewise.
      	* tree-vectorizer.c (adjust_simduid_builtins, note_simd_array_uses,
      	execute_vect_slp): Likewise.
      	* tree-vrp.c (check_all_array_refs, remove_range_assertions,
      	vrp_initialize, identify_jump_threads, instrument_memory_accesses):
      	Likewise.
      	* ubsan.c (ubsan_pass): Likewise.
      	* value-prof.c (verify_histograms, gimple_value_profile_transformations,
      	gimple_find_values_to_profile): Likewise.
      	* var-tracking.c (vt_find_locations, dump_dataflow_sets, vt_emit_notes,
      	vt_initialize, delete_debug_insns, vt_finalize): Likewise.
      
      gcc/testsuite/
      	* g++.dg/plugin/selfassign.c (execute_warn_self_assign): Eliminate
      	use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun
      	explicit.
      	* gcc.dg/plugin/selfassign.c (execute_warn_self_assign): Likewise.
      
      From-SVN: r205828
      David Malcolm committed
    • Eliminate last_basic_block macro. · 8b1c6fd7
      	* basic-block.h (last_basic_block): Eliminate macro.
      
      	* asan.c (transform_statements): Eliminate use of last_basic_block
      	in favor of last_basic_block_for_fn, in order to make use of cfun
      	explicit.
      	* bb-reorder.c (copy_bb, reorder_basic_blocks): Likewise.
      	* bt-load.c (compute_defs_uses_and_gen, compute_kill, compute_out,
      	link_btr_uses, build_btr_def_use_webs, migrate_btr_defs): Likewise.
      	* cfg.c (compact_blocks): Likewise.
      	* cfganal.c (mark_dfs_back_edges,
      	control_dependences::control_dependences, post_order_compute,
      	pre_and_rev_post_order_compute_fn, dfs_enumerate_from, compute_idf,
      	single_pred_before_succ_order): Likewise.
      	* cfgbuild.c (make_edges): Likewise.
      	* cfgexpand.c (add_scope_conflicts, gimple_expand_cfg): Likewise.
      	* cfghooks.c (verify_flow_info): Likewise.
      	* cfgloop.c (verify_loop_structure): Likewise.
      	* cfgloopanal.c (just_once_each_iteration_p,
      	mark_irreducible_loops): Likewise.
      	* cfgloopmanip.c (fix_bb_placements, remove_path,
      	update_dominators_in_loop): Likewise.
      	* cfgrtl.c (create_basic_block_structure, rtl_create_basic_block,
      	break_superblocks, rtl_flow_call_edges_add): Likewise.
      	* config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise.
      	* config/frv/frv.c (frv_optimize_membar): Likewise.
      	* config/mips/mips.c (r10k_insert_cache_barriers): Likewise.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
      	* cprop.c (compute_local_properties, find_implicit_sets,
      	bypass_conditional_jumps, one_cprop_pass): Likewise.
      	* cse.c (cse_main): Likewise.
      	* df-core.c (rest_of_handle_df_initialize, df_worklist_dataflow,
      	df_analyze, df_grow_bb_info, df_compact_blocks): Likewise.
      	* df-problems.c (df_lr_verify_solution_start,
      	df_live_verify_solution_start, df_md_local_compute): Likewise.
      	* dominance.c (init_dom_info, calc_dfs_tree_nonrec, calc_dfs_tree,
      	calc_idoms): Likewise.
      	* domwalk.c (dom_walker::walk): Likewise.
      	* dse.c (dse_step0, dse_step3): Likewise.
      	* function.c (epilogue_done): Likewise.
      	* gcse.c (alloc_gcse_mem, compute_local_properties,
      	prune_insertions_deletions, compute_pre_data,
      	pre_expr_reaches_here_p, one_pre_gcse_pass,
      	compute_code_hoist_vbeinout, should_hoist_expr_to_dom, hoist_code,
      	one_code_hoisting_pass): Likewise.
      	* graph.c (draw_cfg_nodes_no_loops): Likewise.
      	* graphite-sese-to-poly.c (build_scop_bbs): Likewise.
      	* haifa-sched.c (unlink_bb_notes): Likewise.
      	* ipa-split.c (execute_split_functions): Likewise.
      	* ira-build.c (create_loop_tree_nodes,
      	remove_unnecessary_regions): Likewise.
      	* ira-emit.c (ira_emit): Likewise.
      	* ira.c (find_moveable_pseudos, ira): Likewise.
      	* lcm.c (compute_antinout_edge, compute_laterin,
      	compute_insert_delete, pre_edge_lcm, compute_available,
      	compute_nearerout, compute_rev_insert_delete,
      	pre_edge_rev_lcm): Likewise.
      	* loop-unroll.c (opt_info_start_duplication,
      	apply_opt_in_copies): Likewise.
      	* lower-subreg.c (decompose_multiword_subregs): Likewise.
      	* lra-lives.c (lra_create_live_ranges): Likewise.
      	* lra.c (lra): Likewise.
      	* mode-switching.c (optimize_mode_switching): Likewise.
      	* recog.c (split_all_insns): Likewise.
      	* regcprop.c (copyprop_hardreg_forward): Likewise.
      	* regrename.c (regrename_analyze): Likewise.
      	* reload1.c (reload): Likewise.
      	* resource.c (init_resource_info): Likewise.
      	* sched-rgn.c (haifa_find_rgns, extend_rgns, compute_trg_info,
      	realloc_bb_state_array, schedule_region, extend_regions): Likewise.
      	* sel-sched-ir.c (sel_extend_global_bb_info, extend_region_bb_info,
      	recompute_rev_top_order, sel_init_pipelining,
      	make_regions_from_the_rest): Likewise.
      	* store-motion.c (remove_reachable_equiv_notes,build_store_vectors)
      	Likewise.
      	* tracer.c (tail_duplicate): Likewise.
      	* trans-mem.c (tm_region_init, get_bb_regions_instrumented): Likewise.
      	* tree-cfg.c (create_bb, cleanup_dead_labels, gimple_dump_cfg,
      	gimple_flow_call_edges_add): Likewise.
      	* tree-cfgcleanup.c (split_bbs_on_noreturn_calls,
      	cleanup_tree_cfg_1): Likewise.
      	* tree-complex.c (tree_lower_complex): Likewise.
      	* tree-inline.c (copy_cfg_body): Likewise.
      	* tree-into-ssa.c (mark_phi_for_rewrite, rewrite_into_ssa,
      	prepare_def_site_for, update_ssa): Likewise.
      	* tree-ssa-dce.c (tree_dce_init, perform_tree_ssa_dce): Likewise.
      	* tree-ssa-dom.c (record_edge_info): Likewise.
      	* tree-ssa-live.c (new_tree_live_info, live_worklist): Likewise.
      	* tree-ssa-loop-im.c (fill_always_executed_in_1): Likewise.
      	* tree-ssa-loop-manip.c (copy_phi_node_args
      	gimple_duplicate_loop_to_header_edge): Likewise.
      	* tree-ssa-pre.c (compute_antic): Likewise.
      	* tree-ssa-propagate.c (ssa_prop_init): Likewise.
      	* tree-ssa-reassoc.c (init_reassoc): Likewise.
      	* tree-ssa-sccvn.c (init_scc_vn): Likewise.
      	* tree-ssa-tail-merge.c (init_worklist): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
      	* tree-stdarg.c (reachable_at_most_once): Likewise.
      	* tree-vrp.c (find_assert_locations): Likewise.
      	* var-tracking.c (vt_find_locations): Likewise.
      
      From-SVN: r205826
      David Malcolm committed
  34. 29 Nov, 2013 1 commit
  35. 28 Nov, 2013 1 commit
    • re PR target/57293 (not needed frame pointers on IA-32 (performance regression?)) · 8d49e7ef
      2013-11-28  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/57293
      	* ira.h (ira_setup_eliminable_regset): Remove parameter.
      	* ira.c (ira_setup_eliminable_regset): Ditto.  Add
      	SUPPORTS_STACK_ALIGNMENT for crtl->stack_realign_needed.
      	Don't call lra_init_elimination.
      	(ira): Call ira_setup_eliminable_regset without arguments.
      	* loop-invariant.c (calculate_loop_reg_pressure): Remove argument
      	from ira_setup_eliminable_regset call.
      	* gcse.c (calculate_bb_reg_pressure): Ditto.
      	* haifa-sched.c (sched_init): Ditto.
      	* lra.h (lra_init_elimination): Remove the prototype.
      	* lra-int.h (lra_insn_recog_data): New member sp_offset.  Move
      	used_insn_alternative upper.
      	(lra_eliminate_regs_1): Add one more parameter.
      	(lra-eliminate): Ditto.
      	* lra.c (lra_invalidate_insn_data): Set sp_offset.
      	(setup_sp_offset): New.
      	(lra_process_new_insns): Call setup_sp_offset.
      	(lra): Add argument to lra_eliminate calls.
      	* lra-constraints.c (get_equiv_substitution): Rename to get_equiv.
      	(get_equiv_with_elimination): New.
      	(process_addr_reg): Call get_equiv_with_elimination instead of
      	get_equiv_substitution.
      	(equiv_address_substitution): Ditto.
      	(loc_equivalence_change_p): Ditto.
      	(loc_equivalence_callback, lra_constraints): Ditto.
      	(curr_insn_transform): Ditto.  Print the sp offset
      	(process_alt_operands): Prevent stack pointer reloads.
      	(lra_constraints): Remove one argument from lra_eliminate call.
      	Move it up.  Mark used hard regs bfore it.  Use
      	get_equiv_with_elimination instead of get_equiv_substitution.
      	* lra-eliminations.c (lra_eliminate_regs_1): Add parameter and
      	assert for param values combination.  Use sp offset.  Add argument
      	to lra_eliminate_regs_1 calls.
      	(lra_eliminate_regs): Add argument to lra_eliminate_regs_1 call.
      	(curr_sp_change): New static var.
      	(mark_not_eliminable): Add parameter.  Update curr_sp_change.
      	Don't prevent elimination to sp if we can calculate its change.
      	Pass the argument to mark_not_eliminable calls.
      	(eliminate_regs_in_insn): Add a parameter.  Use sp offset.  Add
      	argument to lra_eliminate_regs_1 call.
      	(update_reg_eliminate): Move calculation of hard regs for spill
      	lower.  Switch off lra_in_progress temporarily to generate regs
      	involved into elimination.
      	(lra_init_elimination): Rename to init_elimination.  Make it
      	static.  Set up insn sp offset, check the offsets at the end of
      	BBs.
      	(process_insn_for_elimination): Add parameter.  Pass its value to
      	eliminate_regs_in_insn.
      	(lra_eliminate): : Add parameter.  Pass its value to
      	process_insn_for_elimination.  Add assert for param values
      	combination.  Call init_elimination.  Don't update offsets in
      	equivalence substitutions.
      	* lra-spills.c (assign_mem_slot): Don't call lra_eliminate_regs_1
      	for created stack slot.
      	(remove_pseudos): Call lra_eliminate_regs_1 before changing memory
      	onto stack slot.
      
      2013-11-28  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/57293
      	* gcc.target/i386/pr57293.c: New.
      
      From-SVN: r205498
      Vladimir Makarov committed