1. 27 Oct, 2014 11 commits
    • 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
    • [AArch64] Temporarily remove aarch64_gimple_fold_builtin code for reduction operations · 20924b4c
      	* config/aarch64/aarch64.c (TARGET_GIMPLE_FOLD_BUILTIN): Comment out.
      	* config/aarch64/aarch64-builtins.c (aarch64_gimple_fold_builtin):
      	Remove using preprocessor directives.
      
      From-SVN: r216734
      Alan Lawrence committed
    • match.pd (0 % X): Properly use the iterator iterating over all modulo operators. · 60e09045
      2014-10-27  Richard Biener  <rguenther@suse.de>
      
      	* match.pd (0 % X): Properly use the iterator iterating over
      	all modulo operators.
      	(X % 1): Likewise.
      
      From-SVN: r216732
      Richard Biener committed
    • misc.c (gnat_init_options_struct): Parameterize errno support here instead of... · 98ae260d
      	* gcc-interface/misc.c (gnat_init_options_struct): Parameterize errno
      	support here instead of...
      	Do not set flag_delete_dead_exceptions to 1 unconditionally.
      	(gnat_init_gcc_eh): Set flag_delete_dead_exceptions to 1.
      	(gnat_init_gcc_fp): ...here.
      
      From-SVN: r216731
      Eric Botcazou committed
    • utils.c (create_var_decl_1): For a variable declared in the unit... · 5fe48b3d
      	* gcc-interface/utils.c (create_var_decl_1): For a variable declared
      	in the unit, set TREE_PUBLIC only if it has static storage duration.
      
      From-SVN: r216729
      Eric Botcazou committed
    • tree-ssa-forwprop.c: Include tree-cfgcleanup.h and tree-into-ssa.h. · 016adb05
      2014-10-27  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-forwprop.c: Include tree-cfgcleanup.h and tree-into-ssa.h.
      	(lattice): New global.
      	(fwprop_ssa_val): New function.
      	(fold_all_stmts): Likewise.
      	(pass_forwprop::execute): Finally fold all stmts.
      
      	* gcc.dg/tree-ssa/forwprop-6.c: Scan ccp1 dump instead.
      	* gcc.dg/strlenopt-8.c: Adjust and XFAIL for non_strict_align
      	target due to memcpy inline-expansion.
      
      From-SVN: r216728
      Richard Biener committed
    • decl.c (gnat_to_gnu_entity): Apply special treatment of derived packed array… · 8c44fc0f
      decl.c (gnat_to_gnu_entity): Apply special treatment of derived packed array types to constrained subtypes only.
      
      	* gcc-interface/decl.c (gnat_to_gnu_entity): Apply special treatment
      	of derived packed array types to constrained subtypes only.
      
      From-SVN: r216727
      Eric Botcazou committed
    • decl.c (gnat_to_gnu_entity): Remove superfluous computation for the max size. · 33ccc536
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Remove
      	superfluous computation for the max size.
      	<E_Array_Subtype>: Likewise.  Make sure that the max size calculation
      	does not overflow at compile time.
      
      From-SVN: r216725
      Eric Botcazou committed
    • Daily bump. · 0a2e22ec
      From-SVN: r216723
      GCC Administrator committed
  2. 26 Oct, 2014 21 commits
    • In cp/error.c... · d723bb7c
      In cp/error.c, I separate the initialization of the diagnostic context
      from the initialization of the scratch pretty-printer (cxx_pp).  This
      was suggested by Gabriel in the last review of the patch and now I
      realize it was a good idea. Now cxx_initialize_diagnostics is the
      equivalent version of c_initialize_diagnostics.  To avoid having to
      make extern a bunch of functions, I moved it from cp-objcp-common.c to
      error.c.
      
      I moved the setting of diagnostic_format_decoder (global_dc) =
      c_tree_printer, from c_objc_common_init to c_initialize_diagnostics,
      and right after c_common_diagnostics_set_defaults.  This
      mimics what is done in cxx_initialize_diagnostics.
      
      Moreover, in both c_initialize_diagnostics and
      cxx_initialize_diagnostics, the FE-specific pretty-printer is
      initialized first and then other settings are applied. This does not
      make a difference right now, but if in the future one wishes to touch
      something in the pretty-printer, it will not get overriden
      immediately.
      
      In fact, the code I removed in c_common_initialize_diagnostics, which
      sets line_cutoff to 80, is useless because the pretty-printer created
      here is actually never used, but overriden by the FE-specific
      pretty-printers. This also means that doc/invoke.texi was wrong.
      
      Finally, it is useless to set the maximum line length to 0 in the
      constructor of cxx_pretty_printer.  It is the default anyway.
      
      gcc/c/ChangeLog:
      
      2014-10-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/53061
      	* c-objc-common.c (c_objc_common_init): Do not do diagnostics
      	initialization here...
      	(c_initialize_diagnostics): ... but here. Set defaults after
      	building pretty-printer.
      
      gcc/ChangeLog:
      
      2014-10-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/53061
      	* doc/invoke.texi (fmessage-length): Update text to match reality.
      
      gcc/cp/ChangeLog:
      
      2014-10-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/53061
      	* cp-objcp-common.c: Do not include new.
      	(cxx_initialize_diagnostics): Move from here to ...
      	* error.c (cxx_initialize_diagnostics): : ... here. Move
      	diagnostics initialization here from init_error.
      	(cxx_pp): Use a real pointer not a macro.
      	(init_error): Just initialize cxx_pp.
      	* cxx-pretty-print.c (cxx_pretty_printer::cxx_pretty_printer): Do
      	not set maximum line length.
      
      gcc/c-family/ChangeLog:
      
      2014-10-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/53061
      	* c-opts.c (c_common_diagnostics_set_defaults): Renamed from
      	c_common_initialize_diagnostics.
      	* c-common.h: Likewise.
      
      From-SVN: r216720
      Manuel López-Ibáñez committed
    • microblaze.c: Include rtl-iter.h. · 23487675
      gcc/
      	* config/microblaze/microblaze.c: Include rtl-iter.h.
      	(microblaze_tls_referenced_p_1): Delete.
      	(microblaze_tls_referenced_p): Use FOR_EACH_SUBRTX.
      
      From-SVN: r216719
      Richard Sandiford committed
    • linux-unwind.h (pa32_read_access_ok): New function. · ef2810c1
      	* config/pa/linux-unwind.h (pa32_read_access_ok): New function.
      	(pa32_fallback_frame_state): Use pa32_read_access_ok to check if
      	memory read accesses are ok.
      
      From-SVN: r216716
      John David Anglin committed
    • mips.c (mips_at_reg_p): Delete. · d44f6d93
      gcc/
      	* config/mips/mips.c (mips_at_reg_p): Delete.
      	(mips_need_noat_wrapper_p): Use FOR_EACH_SUBRTX.
      
      From-SVN: r216715
      Richard Sandiford committed
    • mips.c (mips_record_lo_sum): Replace with... · 01333d81
      gcc/
      	* config/mips/mips.c (mips_record_lo_sum): Replace with...
      	(mips_record_lo_sums): ...this new function.
      	(mips_reorg_process_insns): Update accordingly.
      
      From-SVN: r216714
      Richard Sandiford committed
    • mips.c (mips_sim_insn): Update comment. · 9b8317b4
      gcc/
      	* config/mips/mips.c (mips_sim_insn): Update comment.
      	(mips_sim_wait_regs_2): Delete.
      	(mips_sim_wait_regs_1): Use FOR_EACH_SUBRTX_VAR.
      
      From-SVN: r216713
      Richard Sandiford committed
    • mips.c (r10k_needs_protection_p_call): Take a const_rtx and return a bool. · d0cac36f
      gcc/
      	* config/mips/mips.c (r10k_needs_protection_p_call): Take a const_rtx
      	and return a bool.  Iterate over all subrtxes here.
      	(r10k_needs_protection_p): Update accordingly.
      
      From-SVN: r216712
      Richard Sandiford committed
    • mips.c (r10k_needs_protection_p_1): Take an rtx rather than an rtx pointer. · 9989ddc8
      gcc/
      	* config/mips/mips.c (r10k_needs_protection_p_1): Take an rtx
      	rather than an rtx pointer.  Change type of insn from "void *"
      	to its real type.  Return bool rather than int.  Iterate over
      	all subrtxes here.
      	(r10k_needs_protection_p_store): Update accordingly.
      	(r10k_needs_protection_p): Likewise.
      
      From-SVN: r216711
      Richard Sandiford committed
    • mips.c (mips16_rewrite_pool_refs_info): Delete. · 9b3dd001
      gcc/
      	* config/mips/mips.c (mips16_rewrite_pool_refs_info): Delete.
      	(mips16_rewrite_pool_refs): Take the insn and constant pool as
      	parameters.  Iterate over the instruction's pattern and return void.
      	(mips16_lay_out_constants): Update accordingly.
      
      From-SVN: r216710
      Richard Sandiford committed
    • mips.c (mips_kernel_reg_p): Replace with... · eacbf7bd
      gcc/
      	* config/mips/mips.c (mips_kernel_reg_p): Replace with...
      	(mips_refers_to_kernel_reg_p): ...this new function.
      	(mips_expand_prologue): Update accordingly.
      
      From-SVN: r216709
      Richard Sandiford committed
    • mips.c (mips_rewrite_small_data_1): Take the context as a parameter instead of the containing MEM. · 3854efe8
      gcc/
      	* config/mips/mips.c (mips_rewrite_small_data_1): Take the context
      	as a parameter instead of the containing MEM.  Iterate over all
      	subrtxes.  Don't return a value.
      	(mips_rewrite_small_data): Update call accordingly.
      
      From-SVN: r216708
      Richard Sandiford committed
    • mips.c: Include rtl-iter.h. · 187804d4
      gcc/
      	* config/mips/mips.c: Include rtl-iter.h.
      	(mips_small_data_pattern_1): Take an rtx rather than an rtx pointer.
      	Take the context as a parameter instead of the containing MEM.
      	Iterate over all subrtxes.
      	(mips_small_data_pattern_p): Update call accordingly.
      
      From-SVN: r216707
      Richard Sandiford committed
    • mep.c (mep_mul_hilo_bypass_1): Delete. · 21ffb958
      gcc/
      	* config/mep/mep.c (mep_mul_hilo_bypass_1): Delete.
      	(mep_mul_hilo_bypass_p): Use FOR_EACH_SUBRTX.
      
      From-SVN: r216706
      Richard Sandiford committed
    • mep.c (mep_store_find_set): Take a const_rtx and return a bool. · d2053f5e
      gcc/
      	* config/mep/mep.c (mep_store_find_set): Take a const_rtx and
      	return a bool.  Replace "void *" with specific type.  Iterate
      	over all subrtxes.
      	(mep_store_data_bypass_1): Update calls accordingly.
      
      From-SVN: r216705
      Richard Sandiford committed
    • mep.c: Include rtl-iter.h. · f0ac02c0
      gcc/
      	* config/mep/mep.c: Include rtl-iter.h.
      	(global_reg_mentioned_p_1): Take a const_rtx and return a bool.
      	(xtensa_tls_referenced_p): Return a bool.  Use FOR_EACH_SUBRTX.
      
      From-SVN: r216704
      Richard Sandiford committed
    • xtensa.c: Include rtl-iter.h. · 2f36a994
      gcc/
      	* config/xtensa/xtensa.c: Include rtl-iter.h.
      	(xtensa_tls_referenced_p_1): Delete.
      	(xtensa_tls_referenced_p): Use FOR_EACH_SUBRTX.
      
      From-SVN: r216703
      Richard Sandiford committed
    • sh.c (sh_contains_memref_p_1): Delete. · 2caafc44
      gcc/
      	* config/sh/sh.c (sh_contains_memref_p_1): Delete.
      	(sh_contains_memref_p): Use FOR_EACH_SUBRTX.
      
      From-SVN: r216702
      Richard Sandiford committed
    • sh-protos.h (shmedia_cleanup_truncate): Take an rtx as argument and return the number of changes. · 5dabe5a9
      gcc/
      	* config/sh/sh-protos.h (shmedia_cleanup_truncate): Take an
      	rtx as argument and return the number of changes.
      	* config/sh/sh.c: Include rtl-iter.h.
      	(shmedia_cleanup_truncate): Take an rtx as argument and iterate
      	over all subrtxes.  Return the number of changes made.
      	* config/sh/sh.md: Update caller accordingly.
      
      From-SVN: r216701
      Richard Sandiford committed
    • m68k.c (m68k_tls_reference_p_1): Delete. · a5784152
      gcc/
      	* config/m68k/m68k.c (m68k_tls_reference_p_1): Delete.
      	(m68k_tls_reference_p): Use FOR_EACH_SUBRTX_VAR.
      
      From-SVN: r216700
      Richard Sandiford committed
    • m68k.c: Include rtl-iter.h. · 82eee4f1
      gcc/
      	* config/m68k/m68k.c: Include rtl-iter.h.
      	(m68k_final_prescan_insn_1): Delete.
      	(m68k_final_prescan_insn): Use FOR_EACH_SUBRTX_VAR.
      
      From-SVN: r216699
      Richard Sandiford committed
    • Daily bump. · ae2607e8
      From-SVN: r216696
      GCC Administrator committed
  3. 25 Oct, 2014 8 commits
    • re PR tree-optimization/63641 (Invalid shift leads to incorrect code on 32-bit system) · 46a54708
      	PR tree-optimization/63641
      	* tree-ssa-reassoc.c (optimize_range_tests_to_bit_test): Set high
      	to low + prec - 1 - clz (mask) instead of low + prec - clz (mask).
      
      	* gcc.c-torture/execute/pr63641.c: New test.
      
      From-SVN: r216693
      Jakub Jelinek committed
    • status_cxx2011.xml: Update unordered container specific behavior. · 608b9c88
      2014-10-25  François Dumont  <fdumont@gcc.gnu.org>
      
      	* doc/xml/manual/status_cxx2011.xml: Update unordered container
      	specific behavior.
      
      From-SVN: r216692
      François Dumont committed
    • re PR rtl-optimization/63615 (FAIL: gcc.target/i386/addr-sel-1.c) · f27dfe87
      	PR rtl-optimization/63615
      	* simplify-rtx.c (simplify_plus_minus): Set "canonicalized" on
      	decomposing PLUS or MINUS if operands are not placed adjacent
      	in the "ops" array.
      
      From-SVN: r216689
      Alan Modra committed
    • Only allow e500 double in SPE_SIMD_REGNO_P registers. · 4aa19422
      rs6000_hard_regno_nregs_internal allows SPE vectors in single
      registers satisfying SPE_SIMD_REGNO_P (i.e. register numbers 0 to
      31).  However, the corresponding test for e500 double treats all
      registers as being able to store a 64-bit value, rather than just
      those GPRs.
      
      Logically this inconsistency is wrong; in addition, it causes problems
      unwinding from signal handlers.  linux-unwind.h uses
      ARG_POINTER_REGNUM as a place to store the return address from a
      signal handler, but this logic in rs6000_hard_regno_nregs_internal
      results in that being considered an 8-byte register, resulting in
      assertion failures.
      (<https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02625.html> first
      needs to be applied for unwinding to work in general on e500.)  This
      patch makes rs6000_hard_regno_nregs_internal handle the e500 double
      case consistently with SPE vectors.
      
      Tested with no regressions with cross to powerpc-linux-gnuspe (given
      the aforementioned patch applied).  Failures of signal handling
      unwinding tests such as gcc.dg/cleanup-{8,9,10,11}.c are fixed by this
      patch.
      
      	* config/rs6000/rs6000.c (rs6000_hard_regno_nregs_internal): Do
      	not allow e500 double in registers not satisyfing
      	SPE_SIMD_REGNO_P.
      
      From-SVN: r216688
      Joseph Myers committed
    • Optimize powerpc*-*-linux* 32-bit classic hard/soft float hardfp/soft-fp use. · d80c2bea
      Continuing the cleanups of libgcc soft-fp configuration for
      powerpc*-*-linux* in preparation for implementing
      TARGET_ATOMIC_ASSIGN_EXPAND_FENV for soft-float and e500, this patch
      optimizes the choice of which functions to build for the 32-bit
      classic hard-float and soft-float cases.  (e500 will be dealt with in
      a separate patch which will need to add new features to t-hardfp and
      t-softfp; this patch keeps the status quo for e500.)
      
      For hard-float, while the functions in question are part of the libgcc
      ABI there is no need for them to contain software floating point code:
      no newly built code should use them, and if anything does use them
      it's most efficient (space and speed) for them to pass straight
      through to floating-point hardware instructions; this case is made to
      use t-hardfp to achieve that.  For soft-float, direct use of soft-fp
      functions for operations involving DImode or unsigned integers is more
      efficient than using the libgcc2.c versions of those operations to
      convert to operations on other types (which then end up calling
      soft-fp functions for those other types, possibly more than once);
      this case is thus stopped from using t-softfp-excl.  (A future patch
      will stop the e500 cases from using t-softfp-excl as well.)
      
      Tested with no regressions for crosses to powerpc-linux-gnu (soft
      float and classic hard float); also checked that the same set of
      symbols and versions is exported from shared libgcc before and after
      the patch.
      
      	* configure.ac (ppc_fp_type): Set variable on powerpc*-*-linux*.
      	* configure: Regenerate.
      	* config.host (powerpc*-*-linux*): Use $ppc_fp_type to determine
      	additions to tmake_file.  Use t-hardfp-sfdf and t-hardfp instead
      	of soft-fp for 32-bit classic hard float.  Do not use
      	t-softfp-excl for soft float.
      
      From-SVN: r216687
      Joseph Myers committed
    • Daily bump. · 0f849c16
      From-SVN: r216686
      GCC Administrator committed
    • dwarf2out.c (declare_in_namespace): Only emit external declarations in the local scope once. · c22354fd
      	* dwarf2out.c (declare_in_namespace): Only emit external
      	declarations in the local scope once.
      
      From-SVN: r216683
      Aldy Hernandez committed