1. 15 Jan, 2015 40 commits
    • explow.h: Remove duplicate contents. · 548c43e7
      2015-01-15  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
      
      	* explow.h: Remove duplicate contents.
      	* dojump.h: Likewise.
      
      From-SVN: r219680
      Prathamesh Kulkarni committed
    • arm.c (arm_xgene_tune): Add default initializer for instruction fusion. · 7c21d0ff
      	* arm.c (arm_xgene_tune): Add default initializer for instruction
      	fusion.
      
      From-SVN: r219679
      Richard Earnshaw committed
    • inline_1.c: Rename gcc.dg/inline_[1-4].c to inline-3[6-9].c. · 37767f4f
      	* gcc.dg/inline_1.c: Rename gcc.dg/inline_[1-4].c to inline-3[6-9].c.
      	* gcc.dg/inline_2.c: Likewise.
      	* gcc.dg/inline_3.c: Likewise.
      	* gcc.dg/inline_4.c: Likewise.
      
      From-SVN: r219678
      Mike Stump committed
    • Fix ChangeLog entry. · 869b656c
      From-SVN: r219677
      Steve Ellcey committed
    • re PR fortran/58023 ([F03] ICE on invalid with bad PPC declaration) · cab283f5
      2015-01-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/58023
      	* resolve.c (resolve_fl_derived0): Continue resolving next component
      	after error.
      
      2015-01-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/58023
      	* gfortran.dg/proc_ptr_comp_43.f90: New.
      
      From-SVN: r219676
      Janus Weil committed
    • unroll_1.c: Rename gcc.dg/unroll_[1-5].c to unroll-[2-6]. · 1357c6e1
      	* gcc.dg/unroll_1.c: Rename gcc.dg/unroll_[1-5].c to unroll-[2-6].
      	* gcc.dg/unroll_2.c: Likewise.
      	* gcc.dg/unroll_3.c: Likewise.
      	* gcc.dg/unroll_4.c: Likewise.
      	* gcc.dg/unroll_5.c: Likewise.
      
      From-SVN: r219675
      Mike Stump committed
    • re PR testsuite/63971 (Some of gcc.target/aarch64/test_frame_*.c tests fail now) · b472082a
      2015-01-15  Tejas Belagod  <tejas.belagod@arm.com>
      
      	PR target/63971
      	* gcc.target/aarch64/test_frame_1.c: Revert to 3 loads of x30
      	in epilogue.
      	* gcc.target/aarch64/test_frame_6.c: Likewise.
      	* gcc.target/aarch64/test_frame_2.c: Revert to 2 pair loads of
      	x30 and x19 (in the epilogue).
      	* gcc.target/aarch64/test_frame_4.c: Likewise.
      	* gcc.target/aarch64/test_frame_7.c: Likewise.
      
      From-SVN: r219674
      Tejas Belagod committed
    • Make test2/test1 static in libitm.c/stackundo.c · 3a07b160
      libitm.c/stackundo.c fails with -fpic since test1 and test2 may be
      preempted with -fpic.  This patch makes those 2 functions static.
      
      	PR libitm/64360
      	* libitm.c/stackundo.c (test2): Make it static.
      	(test1): Likewise.
      
      From-SVN: r219673
      H.J. Lu committed
    • Fix for PR64068 and PR64559. · c23127ce
      	* g++.dg/ipa/pr64068.C: New test.
      	* gcc.dg/ipa/PR64559.c: New test.
      	PR ipa/64068
      	PR ipa/64559
      	* ipa.c (symbol_table::remove_unreachable_nodes):
      	Do not put abstract origins into boundary.
      
      From-SVN: r219672
      Martin Liska committed
    • gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage. · 40d54d24
      2015-01-15  Evgeny Stupachenko  <evstupac@gmail.com>
      
      	* config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage.
      	* config/i386/sysv4.h (CRT_GET_RFIB_DATA): Ditto.
      
      From-SVN: r219671
      Evgeny Stupachenko committed
    • Makefile.in (PLUGIN_HEADERS): Add dominance.h... · 6fb5f2f5
      2015-01-15  Steve Ellcey  <sellcey@mips.com>
      
      	* Makefile.in (PLUGIN_HEADERS): Add dominance.h, cfg.h, cfgrtl.h,
      	cfganal.h, cfgbuild.h, cfgcleanup.h, lcm.h, cfgloopmanip.h,
      	builtins.def, chkp-builtins.def, and pass-instances.def.
      
      From-SVN: r219670
      Steve Ellcey committed
    • Ignore additional linker messages on Linux/x86 with PIE · d86cfdb8
      g++.dg/other/anon5.C is expected to fail to link.  On Linux/x86 with PIE
      and the new linker, there are additional messages from linker:
      
      [hjl@gnu-tools-1 gcc]$ g++  -fPIE -pie
      /export/gnu/import/git/sources/gcc/gcc/testsuite/g++.dg/other/anon5.C
      /tmp/ccwg53fj.o: In function `f()': anon5.C:(.text+0x7): undefined reference to `(anonymous namespace)::c::t'
      /usr/local/bin/ld: /tmp/ccwg53fj.o: relocation R_X86_64_PC32 against undefined symbol `_ZN12_GLOBAL__N_11c1tE' can not be used when making a shared object; recompile with -fPIC
      /usr/local/bin/ld: final link failed: Bad value
      collect2: error: ld returned 1 exit status
      [hjl@gnu-tools-1 gcc]$ 
      
      This patch ignores additional linker messages on Linux/x86 with PIE.
      
      	* g++.dg/other/anon5.C: Ignore additional messages on Linux/x86
      	with PIE.
      
      From-SVN: r219667
      H.J. Lu committed
    • default64.h (TARGET_DEFAULT): Use ISA 2.7 (POWER8). · 34a8f242
              * config/rs6000/default64.h (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use
              ISA 2.7 (POWER8).
      
      From-SVN: r219665
      David Edelsohn committed
    • re PR tree-optimization/61743 (Complete unroll is not happened for loops with short upper bound) · 42c6b3ca
      2015-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/61743
      	* tree-ssa-pre.c (insert_into_preds_of_block): Preserve range
      	information on PHIs for some simple cases.
      
      	* gcc.dg/tree-ssa/pr61743-1.c: New testcase.
      	* gcc.dg/tree-ssa/pr61743-2.c: Likewise.
      
      From-SVN: r219662
      Richard Biener committed
    • arm.md (generic_sched): Specify xgene1 in 'no' list. · cd3246ea
      2015-01-15  Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>
      
              * config/arm/arm.md (generic_sched): Specify xgene1 in 'no' list.
              Include xgene1.md.
              * config/arm/arm.c (arm_issue_rate): Specify 4 for xgene1.
              * config/arm/arm-cores.def (xgene1): New entry.
              * config/arm/arm-tables.opt: Regenerate.
              * config/arm/arm-tune.md: Regenerate.
              * config/arm/bpabi.h (BE8_LINK_SPEC): Specify mcpu=xgene1.
      
      From-SVN: r219661
      Philipp Tomsich committed
    • [AARCH64] Fix syntax error in target selector "-O2" for volatileloadpair-1.c & · f5422cbf
      volatileloadpair-2.c.
      
      testsuite/
      	* gcc.target/aarch64/volatileloadpair-1.c: Correct dg-options.
      	* gcc.target/aarch64/volatileloadpair-2.c: Likewise.
      
      From-SVN: r219660
      Renlin Li committed
    • Updated copyright year for 'xgene1.md'. · d304c815
      From-SVN: r219659
      Philipp Tomsich committed
    • tree-if-conv.c: Include hash-map.h. · e9d5a1a0
      gcc/
      
      	* tree-if-conv.c: Include hash-map.h.
      	(aggressive_if_conv): New variable.
      	(fold_build_cond_expr): Add simplification of non-zero condition.
      	(add_to_dst_predicate_list): Invoke add_to_predicate_list if edge
      	destination block is not always executed.
      	(if_convertible_phi_p): Fix commentary, allow phi nodes have more
      	than two predecessors if AGGRESSIVE_IF_CONV is true.
      	(if_convertible_stmt_p): Fix commentary.
      	(all_preds_critical_p): New function.
      	(has_pred_critical_p): New function.
      	(if_convertible_bb_p): Fix commentary, if AGGRESSIVE_IF_CONV is true
      	BB can have more than two predecessors and all incoming edges can be
      	critical.
      	(predicate_bbs): Skip predication for loop exit block, use build2_loc
      	to compute predicate for true edge.
      	(find_phi_replacement_condition): Delete this function.
      	(is_cond_scalar_reduction): Add arguments ARG_0, ARG_1 and EXTENDED.
      	Allow interchange PHI arguments if EXTENDED is false.
      	Change check that block containing reduction statement candidate
      	is predecessor of phi-block since phi may have more than two arguments.
      	(phi_args_hash_traits): New helper structure.
      	(struct phi_args_hash_traits): New type.
      	(phi_args_hash_traits::hash): New function.
      	(phi_args_hash_traits::equal_keys): New function.
      	(gen_phi_arg_condition): New function.
      	(predicate_scalar_phi): Add handling of phi nodes with more than two
      	arguments, delete COND and TRUE_BB arguments, insert body of
      	find_phi_replacement_condition to predicate ordinary phi nodes.
      	(predicate_all_scalar_phis): Skip blocks with the only predecessor,
      	delete call of find_phi_replacement_condition and invoke
      	predicate_scalar_phi with two arguments.
      	(insert_gimplified_predicates): Add assert that non-predicated block
      	don't have statements to insert.
      	(ifcvt_split_critical_edges): New function.
      	(ifcvt_split_def_stmt): Likewise.
      	(ifcvt_walk_pattern_tree): Likewise.
      	(stmt_is_root_of_bool_pattern): Likewise.
      	(ifcvt_repair_bool_pattern): Likewise.
      	(ifcvt_local_dce): Likewise.
      	(tree_if_conversion): Add initialization of AGGRESSIVE_IF_CONV which
      	is copy of inner or outer loop force_vectorize field, invoke
      	ifcvt_split_critical_edges, ifcvt_local_dce and
      	ifcvt_repair_bool_pattern for aggressive if-conversion.
      
      gcc/testsuite/
      
      	* gcc.dg/vect/vect-aggressive-1.c: New.
      	* gcc.target/i386/avx2-vect-aggressive.c: New.
      
      From-SVN: r219658
      Yuri Rumyantsev committed
    • aarch64.md: Include xgene1.md. · a0f06fc9
      2015-01-15  Philipp Tomsich  <ptomsich@theobroma-systems.com>
      
              * config/aarch64/aarch64.md: Include xgene1.md.
              * config/aarch64/xgene1.md: New file.
      
      From-SVN: r219657
      Philipp Tomsich committed
    • aarch64-cores.def (xgene1): Update/add the xgene1 (APM XGene-1) core definition. · 381e27aa
      2015-01-15  Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>
      
              * config/aarch64/aarch64-cores.def (xgene1): Update/add the
              xgene1 (APM XGene-1) core definition.
              * gcc/config/aarch64/aarch64.c: Add cost tables for APM XGene-1
              * config/arm/aarch-cost-tables.h: Add cost tables for APM XGene-1
              * doc/invoke.texi: Document -mcpu=xgene1.
      
      From-SVN: r219656
      Philipp Tomsich committed
    • 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
    • Adjust scan string for PIE · 645c25f6
      The order of address in the first operand is different due to different
      output orders of PLUS between output_addr_const and output_pic_addr_const.
      This patch adjusts scan string for PIE in gcc.target/i386/pr54445-2.c.
      
      	* gcc.target/i386/pr54445-2.c: Adjust scan string for PIE.
      
      From-SVN: r219654
      H.J. Lu committed
    • MAINTAINERS: (Write After Approval): Add myself. · c61fcfa6
      2015-01-15  Philipp Tomsich  <ptomsich@theobroma-systems.com>
      
              * MAINTAINERS: (Write After Approval): Add myself.
      
      From-SVN: r219653
      Philipp Tomsich committed
    • gengtype.c (create_user_defined_type): Workaround -Wmaybe-uninitialized false positives. · e54bd4ab
      	* gengtype.c (create_user_defined_type): Workaround
      	-Wmaybe-uninitialized false positives.
      	* cse.c (fold_rtx): Likewise.
      	* loop-invariant.c (gain_for_invariant): Likewise.
      
      From-SVN: r219652
      Jakub Jelinek committed
    • re PR middle-end/64415 (ICE: verify_ssa failed / segmentation fault with LTO) · 928923e7
      2015-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR lto/64415
      	* gcc.dg/lto/pr64415_0.c: Re-enable for darwin with
      	-Wl,-undefined,dynamic_lookup.
      
      From-SVN: r219651
      Richard Biener committed
    • Fix oversight in previous commit · 4c113f87
      From-SVN: r219649
      Eric Botcazou committed
    • expr.c (expand_expr_real_1): Use the expression to set the memory attributes in… · 3aabdc00
      expr.c (expand_expr_real_1): Use the expression to set the memory attributes in all cases but clear MEM_EXPR...
      
      	* expr.c (expand_expr_real_1) <normal_inner_ref>: Use the expression to
      	set the memory attributes in all cases but clear MEM_EXPR if need be.
      
      From-SVN: r219648
      Eric Botcazou committed
    • re PR middle-end/64415 (ICE: verify_ssa failed / segmentation fault with LTO) · 04d8b4dc
      2015-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR lto/64415
      	* gcc.dg/lto/pr64415_0.c: Skip on darwin.
      
      From-SVN: r219647
      Richard Biener committed
    • re PR tree-optimization/64434 (Performance regression after operand canonicalization (r216728).) · d2626c0b
      gcc/
      
      	PR tree-optimization/64434
      	* cfgexpand.c (reorder_operands): New function.
      	(expand_gimple_basic_block): Insert call of reorder_operands if
      	optimized is true.
      
      gcc/testsuite/
      
      	PR tree-optimization/64434
      	* gcc.dg/torture/pr64434.c: New test.
      
      From-SVN: r219646
      Yuri Rumyantsev committed
    • Ensure options incompatible with micromips imply -mno-micromips · 3387e614
      gcc/testsuite/
      
      	* gcc.target/mips/mips.exp (mips-dg-options): -mips3d requires
      	-mno-micromips.  MIPS32R1 and below require -mno-micromips.
      	-march=loongson* and -march=octeon* require -mno-micromips.
      
      From-SVN: r219641
      Matthew Fortune committed
    • Update the call-saved tests for micromips output · 63ecaca0
      gcc/testsuite/
      
      	* gcc.target/mips/call-saved-4.c (foo): Add NOCOMPRESSION.
      	* gcc.target/mips/call-saved-5.c (foo): Likewise.
      	* gcc.target/mips/call-saved-6.c (foo): Likewise.
      	* gcc.target/mips/call-saved-7.c: New file.
      	* gcc.target/mips/call-saved-8.c: New file.
      	* gcc.target/mips/call-saved-9.c: New file.
      
      Co-Authored-By: Matthew Fortune <matthew.fortune@imgtec.com>
      
      From-SVN: r219640
      Andrew Bennett committed
    • [MIPS] Remove all excess parallel constructs · 2c3bcf47
      gcc/
      
      	* config/mips/micromips.md (*swp): Remove explicit parallel.
      	(jraddiusp, *movep<MOVEP1:mode><MOVEP2:mode>): Likewise.
      	* config/mips/mips-dsp.md (add<DSPV:mode>3): Likewise.
      	(mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>, sub<DSPV:mode>3): Likewise.
      	(mips_sub<DSP:dspfmt1>_s_<DSP:dspfmt2>, mips_addsc): Likewise.
      	(mips_addwc, mips_absq_s_<DSPQ:dspfmt2>): Likewise.
      	(mips_precrq_rs_ph_w, mips_precrqu_s_qb_ph): Likewise.
      	(mips_shll_<DSPV:dspfmt2>, mips_shll_s_<DSPQ:dspfmt2>): Likewise.
      	(mips_muleu_s_ph_qbl, mips_muleu_s_ph_qbr): Likewise.
      	(mips_mulq_rs_ph, mips_muleq_s_w_phl, mips_muleq_s_w_phr): Likewise.
      	(mips_dpaq_s_w_ph, mips_dpsq_s_w_ph, mips_mulsaq_s_w_ph): Likewise.
      	(mips_dpaq_sa_l_w, mips_dpsq_sa_l_w, mips_maq_s_w_phl): Likewise.
      	(mips_maq_s_w_phr, mips_maq_sa_w_phl, mips_maq_sa_w_phr): Likewise.
      	(mips_extr_w, mips_extr_r_w, mips_extr_rs_w): Likewise.
      	(mips_extr_s_h, mips_extp, mips_extpdp, mips_mthlip): Likewise.
      	(mips_wrdsp): Likewise.
      	* config/mips/mips-dspr2.md (mips_absq_s_qb): Remove explicit
      	parallel.
      	(mips_addu_ph, mips_addu_s_ph, mips_cmpgdu_eq_qb): Likewise.
      	(mips_cmpgdu_lt_qb, mips_cmpgdu_le_qb, mulv2hi3): Likewise.
      	(mips_mul_s_ph, mips_mulq_rs_w, mips_mulq_s_ph): Likewise.
      	(mips_mulq_s_w, mips_subu_ph, mips_subu_s_ph): Likewise.
      	(mips_dpaqx_s_w_ph, mips_dpaqx_sa_w_ph): Likewise.
      	(mips_dpsqx_s_w_ph, mips_dpsqx_sa_w_ph): Likewise.
      	* config/mips/mips-fixed.md (usadd<mode>3): Remove explicit parallel.
      	(ssadd<mode>3, ussub<mode>3, sssub<mode>3, ssmul<mode>3): Likewise.
      	(ssmaddsqdq4, ssmsubsqdq4): Likewise.
      
      From-SVN: r219639
      Matthew Fortune committed
    • Add support for the R6 LSA and DLSA instructions · 954bdd58
      gcc/
      
      	* config/mips/mips.c (mips_rtx_costs): Set costs for LSA/DLSA.
      	(mips_print_operand): Support 'y' to print exact log2 in decimal
      	of a const_int.
      	* config/mips/mips.h (ISA_HAS_LSA): New define.
      	(ISA_HAS_DLSA): Likewise.
      	* config/mips/mips.md (<GPR:d>lsa): New define_insn.
      	* config/mips/predicates.md (const_immlsa_operand): New predicate.
      
      gcc/testsuite/
      
      	* gcc.target/mips/lsa.c: New file.
      	* gcc.target/mips/mips64-lsa.c: Likewise.
      	* gcc.target/mips/mulsize-2.c: Require !HAS_LSA.
      	* gcc.target/mips/mulsize-4.c: Likewise.
      	* gcc.target/mips/mulsize-5.c: New file.
      	* gcc.target/mips/mulsize-6.c: Likewise.
      	* gcc.target/mips/mips.exp (mips_option_groups): Support HAS_LSA
      	and !HAS_LSA as ghost options.
      	(mips-dg-options): Require rev 6 for HAS_LSA. Downgrade to rev 5
      	for !HAS_LSA.
      
      From-SVN: r219638
      Matthew Fortune committed
    • Fix oversized bitfield warning. · 953bcfa6
      testsuite/
      2015-01-15  Matthew Wahab  <matthew.wahab@arm.com>
      
      	* g++.dg/torture/20141013.C: Set -fno-short-enums.
      
      From-SVN: r219637
      Matthew Wahab committed
    • Target optimization nodes: add support for arrays. · 5e306f6e
      	PR target/64377
      	* optc-save-gen.awk: Add support for array types.
      
      From-SVN: r219636
      Martin Liska committed
    • re PR tree-optimization/64365 (Predictive commoning after loop vectorization… · d679e96b
      re PR tree-optimization/64365 (Predictive commoning after loop vectorization produces incorrect code.)
      
      2015-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/64365
      	* tree-data-ref.c (dr_analyze_indices): Make sure that accesses
      	for MEM_REF access functions with the same base can never partially
      	overlap.
      
      	* gcc.dg/torture/pr64365.c: New testcase.
      
      From-SVN: r219634
      Richard Biener committed
    • common.opt: New option -fstack-protector-explicit. · 5434dc07
      2015-01-14  Marcos Diaz <marcos.diaz@tallertechnologies.com>
      
      	* common.opt: New option -fstack-protector-explicit.
      	* cfgexpand.c (SPCT_FLAG_EXPLICIT): New enum.
      	(stack_protect_decl_phase): Handle stack_protect attribute for
      	explicit stack protection requests.
      	(expand_used_vars): Similarly.
      	* doc/cpp.texi (__SSP_EXPLICIT__): Document predefined macro.
      	* doc/extend.texi: Add documentation for "stack_protect" attribute.
      	* doc/invoke.texi: Add documentation for -fstack-protector-explicit.
      
      	* c-cppbuiltin.c (c_cpp_builtins): New cpp define __SSP_EXPLICIT__
      	for the new option fstack-protector_explicit.
      	* c-common.c (c_common_attribute_table): Add stack_protect attribute.
      	(handle_stack_protect_attribute): New function.
      
      	* gcc.dg/stackprotectexplicit1.c: New test.
      	* g++.dg/stackprotectexplicit2.c: New test.
      
      From-SVN: r219633
      Marcos Diaz committed
    • re PR fortran/61933 (Inquire on internal units) · 1a0c6983
      2015-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR target/61933
      	* gfortran.dg/inquire_internal.f90: New.
      	* gfortran.dg/negative_unit_check.f90: New.
      
      From-SVN: r219632
      Jerry DeLisle committed
    • re PR fortran/61933 (Inquire on internal units) · 351b4432
      2015-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/61933
      	* io/inquire.c (inquire_via_unit): Set existing to true if a
      	gfc_unit stucture was found for the given unit number.
      	* runtime/error.c (translate_error): Add case for
      	LIBERROR_INQUIRE_INTERNAL_UNIT.
      
      From-SVN: r219631
      Jerry DeLisle committed
    • re PR fortran/61933 (Inquire on internal units) · 2da229cb
      2015-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/61933
      	* io.c (gfc_match_inquire): Generate error if unit number in
      	inquire statement is a constant -1.  All other values allowed.
      	* trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
      	(create_dummy_iostat): Delete function no longer used.
      
      From-SVN: r219630
      Jerry DeLisle committed