Martin Liska [Wed, 8 Jul 2015 12:25:40 +0000 (14:25 +0200)]
re PR bootstrap/66744 (Bootstrap failure due to conflicting access() on i686-w64-mingw32)
Fix PR bootstrap/66744.
PR bootstrap/66744
* tree-sra.c (create_access_1): Call ctor without brackets.
(create_artificial_child_access): Likewise.
From-SVN: r225547
Richard Biener [Wed, 8 Jul 2015 11:54:28 +0000 (11:54 +0000)]
re PR ipa/66793 (ICE at -Os and above on x86_64-linux-gnu (verify_flow_info failed))
2015-07-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/66793
* gimple-ssa-isolate-paths.c (insert_trap_and_remove_trailing_statemen):
Properly split the block after stmts ending it.
* gcc.dg/torture/pr66793.c: New testcase.
From-SVN: r225546
Richard Biener [Wed, 8 Jul 2015 11:47:42 +0000 (11:47 +0000)]
re PR tree-optimization/66794 (ICE at -O2 and -O3 on x86_64-linux-gnu)
2015-07-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/66794
* passes.c (execute_function_todo): Assert that post-dominators
are not computed.
* gimple-ssa-isolate-paths.c (gimple_ssa_isolate_erroneous_paths):
Free post-dominators.
* gcc.dg/torture/pr66794.c: New testcase.
From-SVN: r225545
Andreas Krebbel [Wed, 8 Jul 2015 10:59:32 +0000 (10:59 +0000)]
S/390: Remove assertion in s390_init_frame_layout.
gcc/ChangeLog:
2015-07-08 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390.c (s390_init_frame_layout): Replace assertion
with early exit.
From-SVN: r225542
Marek Polacek [Wed, 8 Jul 2015 10:36:26 +0000 (10:36 +0000)]
re PR c++/66748 (Crash with abi_tag attribute)
PR c++/66748
* tree.c (handle_abi_tag_attribute): Check for CLASS_TYPE_P before
accessing TYPE_LANG_SPECIFIC node.
* g++.dg/abi/abi-tag15.C: New test.
From-SVN: r225541
Andrew Bennett [Wed, 8 Jul 2015 09:40:35 +0000 (09:40 +0000)]
MIPS: Fix failing branch range checks for micromips.
The current branch range tests assume that the MIPS branch instructions
have a 16 bit branch offset which is shifted by 2. Unfortunately for microMIPS
this offset is shifted by 1 which reduces the branch range and caused the
branch-*.c tests to fail.
testsuite/
* gcc.target/mips/branch-2.c: Change NOMIPS16 to NOCOMPRESSION.
* gcc.target/mips/branch-3.c: Ditto
* gcc.target/mips/branch-4.c: Ditto.
* gcc.target/mips/branch-5.c: Ditto.
* gcc.target/mips/branch-6.c: Ditto.
* gcc.target/mips/branch-7.c: Ditto.
* gcc.target/mips/branch-8.c: Ditto.
* gcc.target/mips/branch-9.c: Ditto.
* gcc.target/mips/branch-10.c: Ditto.
* gcc.target/mips/branch-11.c: Ditto.
* gcc.target/mips/branch-12.c: Ditto.
* gcc.target/mips/branch-13.c: Ditto.
* gcc.target/mips/umips-branch-5.c: New file.
* gcc.target/mips/umips-branch-6.c: New file.
* gcc.target/mips/umips-branch-7.c: New file.
* gcc.target/mips/umips-branch-8.c: New file.
* gcc.target/mips/umips-branch-9.c: New file.
* gcc.target/mips/umips-branch-10.c: New file.
* gcc.target/mips/umips-branch-11.c: New file.
* gcc.target/mips/umips-branch-12.c: New file.
* gcc.target/mips/umips-branch-13.c: New file.
* gcc.target/mips/umips-branch-14.c: New file.
* gcc.target/mips/umips-branch-15.c: New file.
* gcc.target/mips/umips-branch-16.c: New file.
* gcc.target/mips/branch-helper.h (OCCUPY_0x10000): New define.
(OCCUPY_0xfffc): New define.
From-SVN: r225540
Uros Bizjak [Wed, 8 Jul 2015 09:31:34 +0000 (11:31 +0200)]
i386.md (*jcc_bt<mode>): Only allow const_int values more than or equal 8 and less than 32 when...
* config/i386/i386.md (*jcc_bt<mode>): Only allow const_int values
more than or equal 8 and less than 32 when optimizing for size.
From-SVN: r225539
Renlin Li [Wed, 8 Jul 2015 09:15:31 +0000 (09:15 +0000)]
[PATCH][ARM]Adjust compiling options for "gcc.target/arm/unsigned-float.c"
with hardfloat toolchain.
gcc/testsuite/
2015-07-08 Renlin Li <renlin.li@arm.com>
* gcc.target/arm/unsignedned-float.c: Different options for hf toolchain.
From-SVN: r225538
Kyrylo Tkachov [Wed, 8 Jul 2015 09:14:24 +0000 (09:14 +0000)]
[ARM] Initialise cost to COSTS_N_INSNS (1) and increment in arm rtx costs
* config/arm/arm.c (arm_new_rtx_costs): Initialise cost to
COSTS_N_INSNS (1) and increment it appropriately throughout the
function.
From-SVN: r225537
Andrew Bennett [Wed, 8 Jul 2015 08:37:22 +0000 (08:37 +0000)]
MIPS: Do not build the stack-1.c testcase for micromips.
testsuite/
* gcc.target/mips/stack-1.c: Do not build the testcase for micromips.
From-SVN: r225536
Richard Biener [Wed, 8 Jul 2015 08:16:50 +0000 (08:16 +0000)]
fold-const.c (fold_widened_comparison): Fix inverted comparison.
2015-07-08 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_widened_comparison): Fix inverted comparison.
From-SVN: r225535
Uros Bizjak [Wed, 8 Jul 2015 07:05:11 +0000 (09:05 +0200)]
getruntime.c (get_run_time): Use RUSAGE_SELF as argument 1 of getrusage call.
* getruntime.c (get_run_time) [__USE_GNU]: Use RUSAGE_SELF as
argument 1 of getrusage call.
From-SVN: r225534
Alan Modra [Wed, 8 Jul 2015 03:27:08 +0000 (12:57 +0930)]
fix changelog pasto
From-SVN: r225533
Alan Modra [Wed, 8 Jul 2015 03:02:27 +0000 (12:32 +0930)]
target.def (rtx_costs): Remove "code" param, add "mode".
* target.def (rtx_costs): Remove "code" param, add "mode".
* rtl.h (rtx_cost, get_full_rtx_cost): Update prototype.
(set_src_cost, get_full_set_src_cost): Likewise. Move later in file.
(set_rtx_cost, get_full_set_rtx_cost): Move later in file.
* rtlanal.c (rtx_cost): Add "mode" parameter. Update targetm.rtx_costs
call. Track mode when given in rtx.
(get_full_rtx_cost): Add "mode" parameter. Update rtx_cost calls.
(default_address_cost): Pass Pmode to rtx_cost.
(insn_rtx_cost): Pass dest mode of set to set_src_cost.
* cprop.c (try_replace_reg): Ensure set_rtx_cost is not called
with NULL set.
* cse.c (COST, COST_IN): Add MODE param. Update all uses.
(notreg_cost): Add mode param. Use it.
* gcse.c (want_to_gcse_p): Delete forward declaration. Add
mode param and pass to set_src_cost. Update all calls.
(hash_scan_set): Formatting.
* hooks.c (hook_bool_rtx_int_int_int_intp_bool_false): Delete.
(hook_bool_rtx_mode_int_int_intp_bool_false): New function.
* hooks.h: Ditto.
* expmed.c (init_expmed_one_conv, init_expmed_one_mode,
init_expmed, expand_mult, mult_by_coeff_cost, expand_smod_pow2,
emit_store_flag): Update set_src_cost and rtx_cost calls.
* auto-inc-dec.c (attempt_change): Likewise.
* calls.c (precompute_register_parameters): Likewise.
* combine.c (expand_compound_operation, make_extraction,
force_to_mode, distribute_and_simplify_rtx): Likewise.
* dojump.c (prefer_and_bit_test): Likewise.
* dse.c (find_shift_sequence): Likewise.
* expr.c (compress_float_constant): Likewise.
* fwprop.c (should_replace_address, try_fwprop_subst): Likewise.
* ifcvt.c (noce_try_sign_mask): Likewise.
* loop-doloop.c (doloop_optimize): Likewise.
* loop-invariant.c (create_new_invariant): Likewise.
* lower-subreg.c (shift_cost, compute_costs): Likewise.
* optabs.c (avoid_expensive_constant, prepare_cmp_insn,
lshift_cheap_p): Likewise.
* postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands,
try_replace_in_use, reload_cse_move2add): Likewise.
* reload1.c (calculate_elim_costs_all_insns, note_reg_elim_costly):
Likewise.
* simplify-rtx.c (simplify_binary_operation_1): Likewise.
* tree-ssa-loop-ivopts.c (computation_cost): Likewise.
* tree-ssa-reassoc.c (optimize_range_tests_to_bit_test): Likewise.
* tree-switch-conversion.c (emit_case_bit_tests): Likewise.
* config/aarch64/aarch64.c (aarch64_rtx_costs): Delete "code" param,
add "mode" param. Use "mode: in place of GET_MODE (x). Pass mode
to rtx_cost calls.
* config/alpha/alpha.c (alpha_rtx_costs): Likewise.
* config/arc/arc.c (arc_rtx_costs): Likewise.
* config/arm/arm.c (arm_rtx_costs): Likewise.
* config/avr/avr.c (avr_rtx_costs, avr_rtx_costs_1): Likewise.
* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
* config/c6x/c6x.c (c6x_rtx_costs): Likewise.
* config/cris/cris.c (cris_rtx_costs): Likewise.
* config/epiphany/epiphany.c (epiphany_rtx_costs): Likewise.
* config/frv/frv.c (frv_rtx_costs): Likewise.
* config/h8300/h8300.c (h8300_rtx_costs): Likewise.
* config/i386/i386.c (ix86_rtx_costs): Likewise.
* config/ia64/ia64.c (ia64_rtx_costs): Likewise.
* config/iq2000/iq2000.c (iq2000_rtx_costs): Likewise.
* config/lm32/lm32.c (lm32_rtx_costs): Likewise.
* config/m32c/m32c.c (m32c_rtx_costs): Likewise.
* config/m32r/m32r.c (m32r_rtx_costs): Likewise.
* config/m68k/m68k.c (m68k_rtx_costs): Likewise.
* config/mcore/mcore.c (mcore_rtx_costs): Likewise.
* config/mep/mep.c (mep_rtx_cost): Likewise.
* config/microblaze/microblaze.c (microblaze_rtx_costs): Likewise.
* config/mips/mips.c (mips_rtx_costs): Likewise.
* config/mmix/mmix.c (mmix_rtx_costs): Likewise.
* config/mn10300/mn10300.c (mn10300_rtx_costs): Likewise.
* config/msp430/msp430.c (msp430_rtx_costs): Likewise.
* config/nds32/nds32-cost.c (nds32_rtx_costs_impl): Likewise.
* config/nds32/nds32-protos.h (nds32_rtx_costs_impl): Likewise.
* config/nds32/nds32.c (nds32_rtx_costs): Likewise.
* config/nios2/nios2.c (nios2_rtx_costs): Likewise.
* config/pa/pa.c (hppa_rtx_costs): Likewise.
* config/pdp11/pdp11.c (pdp11_rtx_costs): Likewise.
* config/rl78/rl78.c (rl78_rtx_costs): Likewise.
* config/rs6000/rs6000.c (rs6000_rtx_costs): Likewise.
* config/s390/s390.c (s390_rtx_costs): Likewise.
* config/sh/sh.c (sh_rtx_costs): Likewise.
* config/sparc/sparc.c (sparc_rtx_costs): Likewise.
* config/spu/spu.c (spu_rtx_costs): Likewise.
* config/stormy16/stormy16.c (xstormy16_rtx_costs): Likewise.
* config/tilegx/tilegx.c (tilegx_rtx_costs): Likewise.
* config/tilepro/tilepro.c (tilepro_rtx_costs): Likewise.
* config/v850/v850.c (v850_rtx_costs): Likewise.
* config/vax/vax.c (vax_rtx_costs): Likewise.
* config/visium/visium.c (visium_rtx_costs): Likewise.
* config/xtensa/xtensa.c (xtensa_rtx_costs): Likewise.
* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Change type of
"code" param, and pass as outer_code to first rtx_cost call. Pass
mode to rtx_cost calls.
(aarch64_address_cost, aarch64_if_then_else_costs): Update rtx_cost
calls.
(aarch64_rtx_costs_wrapper): Update.
* config/arm/arm.c (arm_rtx_costs_1, arm_size_rtx_costs,
arm_unspec_cost, arm_new_rtx_costs, arm_slowmul_rtx_costs): Update
rtx_cost calls.
* config/avr/avr.c (avr_final_prescan_insn): Update set_src_cost
and rtx_cost calls.
(avr_operand_rtx_cost): Similarly.
(avr_rtx_costs_1): Correct mode passed to avr_operand_rtx_cost
for subexpressions of ZERO_EXTEND, SIGN_EXTEND and COMPARE.
* config/mips/mips.c (mips_stack_address_p): Comment typo.
(mips_binary_cost): Update rtx_cost and set_src_cost calls.
(mips_rtx_costs): Use GET_MODE (x) to detect const_int.
* config/mn10300/mn10300.c (mn10300_address_cost): Pass Pmode to
rtx_cost.
(mn10300_rtx_costs): Correct mode passed to mn10300_address_cost.
* config/rs6000/rs6000.c (rs6000_debug_rtx_costs): Update.
* config/sh/sh.c (and_xor_ior_costs): Update rtx_cost call.
* doc/tm.texi: Regenerate.
From-SVN: r225532
Andrew MacLeod [Wed, 8 Jul 2015 00:53:03 +0000 (00:53 +0000)]
tree-core.h: Include symtab.h.
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* tree-core.h: Include symtab.h.
* rtl.h: Include hard-reg-set.h but not flags.h.
(HARD_CONST): Remove condition compilation involving HARD_CONST since
hard-reg-set.h is always included.
* regs.h: Don't include hard-reg-set.h or rtl.h.
* cfg.h: Include dominance.h.
* gimple.h: Include tree-ssa-alias.h and gimple-expr.h.
* backend.h: New. Aggregate commonly used backend header files.
* gimple-ssa.h: Don't include tree-hasher.h.
* ssa.h: New. Aggregate commonly used SSA header files.
* regset.h: Remove bitmap.h and hard-reg-set.h #includes.
* sel-sched-ir.h: Flatten includes.
* lra-int.h: Flatten completely.
* sel-sched-dump.h: Flatten includes.
* ira-int.h: Flatten includes.
* gimple-streamer.h: Remove all includes.
* cfgloop.h: Remove all #includes except cfgloopmanip.h.
* resource.h: Flatten hard-reg-set.h and df.h.
* sched-int.h: Flatten insn-arrt.h and df.h.
* valtrack.h: flatten bitmap.h, df.h, and rtl.h
* df.h: Flatten includes, leaving regset.h, alloc-pool.h and timevar.h.
* genattrtab.c (write_header): Adjust generated includes.
* genautomata.c (main): Likewise.
* genconditions.c (write-header): Likewise.
* genemit.c (main): Likewise.
* gengtype.c (open_base_files): Likewise.
* genopinit.c (main): Likewise.
* genoutput.c (output_prologue): Likewise.
* genpeep.c (main): Likewise.
* genpreds.c (write_insn_preds_c): Likewise.
* genrecog.c (write_header): Likewise.
* alias.c: Adjust includes.
* asan.c: Likewise.
* attribs.c: Likewise.
* auto-inc-dec.c: Likewise.
* auto-profile.c: Likewise.
* bb-reorder.c: Likewise.
* bt-load.c: Likewise.
* builtins.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* ccmp.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgbuild.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraphbuild.c: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* convert.c: Likewise.
* coverage.c: Likewise.
* cppbuiltin.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* data-streamer-in.c: Likewise.
* data-streamer-out.c: Likewise.
* data-streamer.c: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* ddg.c: Likewise.
* debug.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* dfp.c: Likewise.
* dojump.c: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* double-int.c: Likewise.
* dse.c: Likewise.
* dumpfile.c: Likewise.
* dwarf2asm.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* emit-rtl.c: Likewise.
* et-forest.c: Likewise.
* except.c: Likewise.
* explow.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* fixed-value.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* fwprop.c: Likewise.
* gcc-plugin.h: Likewise.
* gcse-common.c: Likewise.
* gcse.c: Likewise.
* generic-match-head.c: Likewise.
* ggc-page.c: Likewise.
* gimple-builder.c: Likewise.
* gimple-expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-iterator.c: Likewise.
* gimple-low.c: Likewise.
* gimple-match-head.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple-streamer-out.c: Likewise.
* gimple-walk.c: Likewise.
* gimple.c: Likewise.
* gimplify-me.c: Likewise.
* gimplify.c: Likewise.
* godump.c: Likewise.
* graph.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* hw-doloop.c: Likewise.
* ifcvt.c: Likewise.
* init-regs.c: Likewise.
* internal-fn.c: Likewise.
* ipa-chkp.c: Likewise.
* ipa-comdats.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-icf-gimple.c: Likewise.
* ipa-icf.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-polymorphic-call.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-ref.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ipa-visibility.c: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-lives.c: Likewise.
* ira.c: Likewise.
* jump.c: Likewise.
* langhooks.c: Likewise.
* lcm.c: Likewise.
* loop-doloop.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-assigns.c: Likewise.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-lives.c: Likewise.
* lra-remat.c: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-compress.c: Likewise.
* lto-opts.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* mcf.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omega.c: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* opts-global.c: Likewise.
* passes.c: Likewise.
* plugin.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* print-rtl.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* real.c: Likewise.
* realmpfr.c: Likewise.
* recog.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* reginfo.c: Likewise.
* regrename.c: Likewise.
* regstat.c: Likewise.
* reload.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* resource.c: Likewise.
* rtl-chkp.c: Likewise.
* rtlanal.c: Likewise.
* rtlhooks.c: Likewise.
* sanopt.c: Likewise.
* sched-deps.c: Likewise.
* sched-ebb.c: Likewise.
* sched-rgn.c: Likewise.
* sched-vis.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* shrink-wrap.c: Likewise.
* simplify-rtx.c: Likewise.
* stack-ptr-mod.c: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* stringpool.c: Likewise.
* symtab.c: Likewise.
* target-globals.c: Likewise.
* targhooks.c: Likewise.
* toplev.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-browser.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chkp-opt.c: Likewise.
* tree-chkp.c: Likewise.
* tree-chrec.c: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-dfa.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-dump.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-scopedtables.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* ubsan.c: Likewise.
* valtrack.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vmsdbgout.c: Likewise.
* vtable-verify.c: Likewise.
* web.c: Likewise.
* wide-int.cc: Likewise.
* xcoffout.c: Likewise.
* config/aarch64/aarch64-builtins.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/aarch64/cortex-a57-fma-steering.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arc/arc.c: Likewise.
* config/arm/aarch-common.c: Likewise.
* config/arm/arm-builtins.c: Likewise.
* config/arm/arm-c.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr-c.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.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/ft32/ft32.c: Likewise.
* config/h8300/h8300.c: Likewise.
* config/i386/i386-c.c: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/msformat-c.c: Likewise.
* config/i386/winnt-cxx.c: Likewise.
* config/i386/winnt-stubs.c: Likewise.
* config/i386/winnt.c: Likewise.
* config/ia64/ia64-c.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/iq2000/iq2000.c: Likewise.
* config/lm32/lm32.c: Likewise.
* config/m32c/m32c-pragma.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.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.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/nvptx/nvptx.c: Likewise.
* config/pa/pa.c: Likewise.
* config/pdp11/pdp11.c: Likewise.
* config/rl78/rl78-c.c: Likewise.
* config/rl78/rl78.c: Likewise.
* config/rs6000/rs6000-c.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/s390/s390-c.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh-c.c: Likewise.
* config/sh/sh-mem.cc: Likewise.
* config/sh/sh.c: Likewise.
* config/sh/sh_optimize_sett_clrt.cc: Likewise.
* config/sh/sh_treg_combine.cc: Likewise.
* config/sol2-c.c: Likewise.
* config/sol2-cxx.c: Likewise.
* config/sol2-stubs.c: Likewise.
* config/sol2.c: Likewise.
* config/sparc/sparc-c.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/mul-tables.c: Likewise.
* config/tilegx/tilegx-c.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/mul-tables.c: Likewise.
* config/tilepro/tilepro-c.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/v850/v850-c.c: Likewise.
* config/v850/v850.c: Likewise.
* config/vax/vax.c: Likewise.
* config/visium/visium.c: Likewise.
* config/vms/vms-c.c: Likewise.
* config/vms/vms.c: Likewise.
* config/vxworks.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
ada
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* gcc-interface/cuintp.c: Adjust includes.
* gcc-interface/decl.c: Likewise.
* gcc-interface/misc.c: Likewise.
* gcc-interface/targtyps.c: Likewise.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils.c: Likewise.
* gcc-interface/utils2.c: Likewise.
c
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* c-array-notation.c: Adjust includes.
* c-aux-info.c: Likewise.
* c-convert.c: Likewise.
* c-decl.c: Likewise.
* c-errors.c: Likewise.
* c-lang.c: Likewise.
* c-objc-common.c: Likewise.
* c-parser.c: Likewise.
* c-typeck.c: Likewise.
c-family
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* array-notation-common.c: Adjust includes.
* c-ada-spec.c: Likewise.
* c-cilkplus.c: Likewise.
* c-common.h: Likewise.
* c-cppbuiltin.c: Likewise.
* c-dump.c: Likewise.
* c-format.c: Likewise.
* c-gimplify.c: Likewise.
* c-indentation.c: Likewise.
* c-lex.c: Likewise.
* c-omp.c: Likewise.
* c-opts.c: Likewise.
* c-pch.c: Likewise.
* c-ppoutput.c: Likewise.
* c-pragma.c: Likewise.
* c-pretty-print.c: Likewise.
* c-semantics.c: Likewise.
* c-ubsan.c: Likewise.
* cilk.c: Likewise.
* stub-objc.c: Likewise.
cp
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* call.c: Adjust includes.
* class.c: Likewise.
* constexpr.c: Likewise.
* cp-array-notation.c: Likewise.
* cp-gimplify.c: Likewise.
* cp-lang.c: Likewise.
* cp-objcp-common.c: Likewise.
* cp-ubsan.c: Likewise.
* cvt.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* dump.c: Likewise.
* error.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* friend.c: Likewise.
* init.c: Likewise.
* lambda.c: Likewise.
* lex.c: Likewise.
* mangle.c: Likewise.
* method.c: Likewise.
* name-lookup.c: Likewise.
* optimize.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* ptree.c: Likewise.
* repo.c: Likewise.
* rtti.c: Likewise.
* search.c: Likewise.
* semantics.c: Likewise.
* tree.c: Likewise.
* typeck.c: Likewise.
* typeck2.c: Likewise.
fortran
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* convert.c: Adjust includes.
* cpp.c: Likewise.
* decl.c: Likewise.
* f95-lang.c: Likewise.
* iresolve.c: Likewise.
* match.c: Likewise.
* module.c: Likewise.
* options.c: Likewise.
* target-memory.c: Likewise.
* trans-array.c: Likewise.
* trans-common.c: Likewise.
* trans-const.c: Likewise.
* trans-decl.c: Likewise.
* trans-expr.c: Likewise.
* trans-intrinsic.c: Likewise.
* trans-io.c: Likewise.
* trans-openmp.c: Likewise.
* trans-stmt.c: Likewise.
* trans-types.c: Likewise.
* trans.c: Likewise.
go
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* go-backend.c: Adjust includes.
* go-gcc.cc: Likewise.
* go-lang.c: Likewise.
java
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* boehm.c: Adjust includes.
* builtins.c: Likewise.
* class.c: Likewise.
* constants.c: Likewise.
* decl.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* java-gimplify.c: Likewise.
* jcf-dump.c: Likewise.
* jcf-io.c: Likewise.
* jcf-parse.c: Likewise.
* jvgenmain.c: Likewise.
* lang.c: Likewise.
* mangle.c: Likewise.
* mangle_name.c: Likewise.
* resource.c: Likewise.
* typeck.c: Likewise.
* verify-glue.c: Likewise.
jit
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* dummy-frontend.c: Adjust includes.
* jit-common.h: Likewise.
* jit-playback.c: Likewise.
lto
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* lto-lang.c: Adjust includes.
* lto-object.c: Likewise.
* lto-partition.c: Likewise.
* lto-symtab.c: Likewise.
* lto.c: Likewise.
objc
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* objc-act.c: Adjust includes.
* objc-encoding.c: Likewise.
* objc-gnu-runtime-abi-01.c: Likewise.
* objc-lang.c: Likewise.
* objc-map.c: Likewise.
* objc-next-runtime-abi-01.c: Likewise.
* objc-next-runtime-abi-02.c: Likewise.
* objc-runtime-shared-support.c: Likewise.
objcp
2015-07-07 Andrew MacLeod <amacleod@redhat.com>
* objcp-decl.c: Adjust includes.
* objcp-lang.c: Likewise.
From-SVN: r225531
GCC Administrator [Wed, 8 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r225530
Uros Bizjak [Tue, 7 Jul 2015 21:03:02 +0000 (23:03 +0200)]
i386.md (*jcc_bt<mode>): Only split before reload.
* config/i386/i386.md (*jcc_bt<mode>): Only split before reload.
Remove operand constraints. Change operand 2 predicate to
nonmemory operand. Limit const_int values to mode bitsize. Only
allow const_int values less than 32 when optimizing for size.
(*jcc_bt<mode>_1, *jcc_bt<mode>_mask): Only split before reload.
Remove operand constraints.
(*bt<mode>): Use SImode for const_int values less than 32.
(regmode): Remove mode attribute.
testsuite/ChangeLog:
* gcc.target/i386/bt-3.c: New test.
* gcc.target/i386/bt-4.c: Ditto.
From-SVN: r225527
Eric Botcazou [Tue, 7 Jul 2015 20:13:59 +0000 (20:13 +0000)]
c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
c-family/
* c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR.
* c-ada-spec.c (print_ada_declaration): Skip move constructors.
cp/
* decl2.c (cpp_check): Deal with IS_MOVE_CONSTRUCTOR.
From-SVN: r225525
Anatoly Sokolov [Tue, 7 Jul 2015 19:46:14 +0000 (22:46 +0300)]
[MOXIE] Hookize GO_IF_LEGITIMATE_ADDRESS
From-SVN: r225524
David Malcolm [Tue, 7 Jul 2015 19:29:58 +0000 (19:29 +0000)]
PR jit/66783: prevent use of opaque structs
gcc/jit/ChangeLog:
PR jit/66783
* jit-recording.h: Within namespace gcc:jit::recording...
(type::has_known_size): New virtual function.
(struct_has_known_size): New function.
* libgccjit.c (gcc_jit_context_new_field): Verify that the type
has a known size.
(gcc_jit_context_new_global): Likewise.
(gcc_jit_function_new_local): Likewise.
gcc/testsuite/ChangeLog:
PR jit/66783
* jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c: New
test case.
* jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c:
New test case.
* jit.dg/test-error-gcc_jit_function_new_local-opaque-struct.c:
New test case.
* jit.dg/test-error-mismatching-types-in-call.c (create_code):
Avoid using an opaque struct for local "f".
From-SVN: r225523
David Malcolm [Tue, 7 Jul 2015 19:22:01 +0000 (19:22 +0000)]
PR jit/66779: fix segfault
gcc/jit/ChangeLog:
PR jit/66779
* dummy-frontend.c (jit_langhook_type_for_mode): Ensure that we
handle modes QI, HI, SI, DI, TI.
gcc/testsuite/ChangeLog:
PR jit/66779
* jit.dg/all-non-failing-tests.h: Add test-pr66779.c.
* jit.dg/test-pr66779.c: New testcase.
From-SVN: r225522
Tom de Vries [Tue, 7 Jul 2015 16:25:22 +0000 (16:25 +0000)]
Add empty loop exit block in transform_to_exit_first_loop_alt
2015-07-07 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/66642
* tree-parloops.c (transform_to_exit_first_loop_alt): Update function
header comment. Rename split_edge variable to edge_at_split. Split
exit edge to create new loop exit bb. Insert loop exit phis in new loop
exit bb.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
iteration count case.
* testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
function, factor out of ...
(main): ... here. Test low iteration count case.
From-SVN: r225521
Tom de Vries [Tue, 7 Jul 2015 16:25:12 +0000 (16:25 +0000)]
Add rewrite_virtuals_into_loop_closed_ssa
2015-07-07 Tom de Vries <tom@codesourcery.com>
* tree-cfg.c (get_virtual_phi): New function.
* tree-cfg.h (get_virtual_phi): Declare.
* tree-ssa-loop-manip.c (replace_uses_in_dominated_bbs)
(rewrite_virtuals_into_loop_closed_ssa): New function.
* tree-ssa-loop-manip.h (rewrite_virtuals_into_loop_closed_ssa):
Declare.
* tree-parloops.c (replace_uses_in_bbs_by): Remove.
(transform_to_exit_first_loop_alt): Use
rewrite_virtuals_into_loop_closed_ssa.
From-SVN: r225520
Andrew Bennett [Tue, 7 Jul 2015 16:07:51 +0000 (16:07 +0000)]
MIPS: Do not generate micromips code for the no-smartmips-lwxs.c testcase
The LWXS instruction is part of the micromips ISA which means it is
valid to generate it for the no-smartmips-lwxs.c testcase.
testsuite/
* gcc.target/mips/no-smartmips-lwxs.c: Change NOMIPS16 to
NOCOMPRESSION.
From-SVN: r225519
Richard Biener [Tue, 7 Jul 2015 14:12:44 +0000 (14:12 +0000)]
fold-const.c (fold_binary_loc): Move (X & C2) << C1 -> (X << C1) & (C2 << C1) simplification ...
2015-07-07 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_binary_loc): Move
(X & C2) << C1 -> (X << C1) & (C2 << C1) simplification ...
* match.pd: ... here.
Add (X * C1) % C2 -> 0 simplification pattern derived from
extract_muldiv_1.
* gcc.dg/vect/vect-over-widen-3-big-array.c: Adjust.
From-SVN: r225517
Andrew Bennett [Tue, 7 Jul 2015 14:01:53 +0000 (14:01 +0000)]
MIPS: Fix the call-[1,5,6].c tests to allow the jrc instruction to be matched when testing with microMIPS.
When building the call-[1,5,6].c tests for micromips the jrc rather than the
jr instruction is used to call the tail* functions.
testsuite/
* gcc.target/mips/call-1.c: Allow testcase to match the jrc instruction.
* gcc.target/mips/call-5.c: Ditto.
* gcc.target/mips/call-6.c: Ditto.
From-SVN: r225516
Kaz Kojima [Tue, 7 Jul 2015 12:29:16 +0000 (12:29 +0000)]
re PR target/66780 (Compiling with -fstack-protector-strong causes binary to segfault)
PR target/66780
* config/sh/sh.md (symGOT_load): Revert a part of 2015-03-03 change for target/65249.
From-SVN: r225512
Paulo Matos [Tue, 7 Jul 2015 11:25:35 +0000 (11:25 +0000)]
symtab.c (address_matters_1): Fix typo in comment above.
2015-07-07 Paulo Matos <pmatos@broadcom.com>
* symtab.c (address_matters_1): Fix typo in comment above.
(can_increase_alignment_p): Likewise.
From-SVN: r225509
Prathamesh Kulkarni [Tue, 7 Jul 2015 11:19:27 +0000 (11:19 +0000)]
function.c (free_after_compilation): Clear PROP_cfg in f->curr_properties.
2015-07-07 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* function.c (free_after_compilation): Clear PROP_cfg in f->curr_properties.
testsuite/
* gcc.dg/dx-test.c: New test-case.
From-SVN: r225508
Andre Vehreschild [Tue, 7 Jul 2015 11:10:12 +0000 (13:10 +0200)]
re PR fortran/66578 ([F2008] Invalid free on allocate(...,source=a(:)) in block)
gcc/testsuite/ChangeLog:
2015-07-07 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/66578
* gfortran.dg/allocate_with_source_9.f08: New test.
gcc/fortran/ChangeLog:
2015-07-07 Mikael Morin <mikael@gcc.gnu.org>
Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/66578
* trans-array.c (gfc_conv_expr_descriptor): Ensure array descriptor
is one-based for non-full array refs. Correct the offset when a
rank_remap occurs.
From-SVN: r225507
Richard Biener [Tue, 7 Jul 2015 07:59:40 +0000 (07:59 +0000)]
tree-ssa-propagate.c (add_ssa_edge): Dump what edge list we add which use to.
2015-07-07 Richard Biener <rguenther@suse.de>
* tree-ssa-propagate.c (add_ssa_edge): Dump what edge list we
add which use to.
(add_control_edge): Remove excessive vertical space in dumping.
(process_ssa_edge_worklist): Simulate at most one statement and
return whether we did. Do not simulate PHIs if they are in a
BB not yet simulated.
(ssa_propagate): Adjust to always drain the BB worklist whenever
a BB is available there, likewise the VARYING edges list before
the interesting edge list.
From-SVN: r225504
Christian Bruel [Tue, 7 Jul 2015 07:56:10 +0000 (09:56 +0200)]
Cleanup arch file directive.
PR target/52144
* config/arm/elf.h (TARGET_ASM_FILE_START_APP_OFF): Delete.
PR target/52144
* gcc.target/arm/flip-thumb.c: Fix scan.
* gcc.target/arm/attr_thumb.c: Test for all targets. Fix scan.
* gcc.target/arm/attr_arm.c: Test for all targets. Fix scan.
* gcc.target/arm/attr_thumb-static.c: Test for all targets.
Fix return value.
From-SVN: r225503
Richard Biener [Tue, 7 Jul 2015 07:46:57 +0000 (07:46 +0000)]
re PR tree-optimization/66739 (FAIL: gcc.target/aarch64/subs.c scan-assembler subs\tw[0-9])
2015-07-07 Richard Biener <rguenther@suse.de>
PR middle-end/66739
* match.pd: Condition A - B ==/!= 0 -> A ==/!= B on single-use
A - B.
From-SVN: r225502
GCC Administrator [Tue, 7 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r225501
Jason Merrill [Mon, 6 Jul 2015 22:13:42 +0000 (18:13 -0400)]
pt.c (reduce_template_parm_level): Also build the TYPE_DECL for a template template parameter.
* pt.c (reduce_template_parm_level): Also build the TYPE_DECL
for a template template parameter.
(tsubst_decl) [TEMPLATE_DECL]: Use the TEMPLATE_DECL built
by reduce_template_parm_level.
From-SVN: r225495
Jason Merrill [Mon, 6 Jul 2015 22:13:37 +0000 (18:13 -0400)]
pt.c (argument_pack_element_is_expansion_p): A decl pack is an expansion.
* pt.c (argument_pack_element_is_expansion_p): A decl pack is an
expansion.
From-SVN: r225494
Uros Bizjak [Mon, 6 Jul 2015 21:26:12 +0000 (23:26 +0200)]
i386.md (insv<mode>): Rename from insv.
* config/i386/i386.md (insv<mode>): Rename from insv. Use SWI48
modes for operands 0 and 3. Use SImode for operands 2 and 3.
Copy operand 0 to a temporary if !ext_register_operand. Remove
ancient extract_bit_field workaround.
(insv<mode>_1): Rename from mov<mode>_insv_1.
(*insvqi): Rename from *movqi_insv_2.
* config/i386/i386.c (emit_i386_cw_initialization): Update calls
for renamed insvsi_1.
(promote_duplicated_reg): Ditto for renamed insv<mode>_1.
From-SVN: r225484
Nathan Sidwell [Mon, 6 Jul 2015 20:53:34 +0000 (20:53 +0000)]
nvptx.c (nvptx_reorg): Remove unused vars.
* config/nvptx/nvptx.c (nvptx_reorg): Remove unused vars. Fix
call to nvptx_reorg_subreg.
From-SVN: r225481
John Marino [Mon, 6 Jul 2015 20:51:40 +0000 (20:51 +0000)]
* s-oscons-tmplt.c: Add support for DragonFly alongside FreeBSD.
From-SVN: r225480
Jim Wilson [Mon, 6 Jul 2015 20:37:44 +0000 (20:37 +0000)]
graphite-blocking.c (HAVE_isl): Include <stddef.h>.
gcc/
* graphite-blocking.c (HAVE_isl): Include <stddef.h>.
* graphite-dependencies.c, graphite-interchange.c,
graphite-isl-ast-to-gimple.c, graphite-optimize-isl.c, graphite-poly.c,
graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c:
Likewise.
From-SVN: r225478
Marc Glisse [Mon, 6 Jul 2015 18:19:41 +0000 (20:19 +0200)]
match.pd: Remove element_mode inside HONOR_*.
2015-07-06 Marc Glisse <marc.glisse@inria.fr>
* match.pd: Remove element_mode inside HONOR_*.
(~ (-A) -> A - 1, ~ (A - 1) -> -A): Handle complex types.
(~X | X -> -1, ~X ^ X -> -1): Merge.
* tree.c (build_each_one_cst): New function.
* tree.h (build_each_one_cst): Likewise.
From-SVN: r225473
H.J. Lu [Mon, 6 Jul 2015 17:51:12 +0000 (10:51 -0700)]
Handle PROCESSOR_IAMCU in ix86_target_macros_internal
Define __i586__/__pentium__ for -march=iamcu and __tune_iamcu__ for
-mtune=iamcu.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
PROCESSOR_IAMCU.
From-SVN: r225471
Steve Ellcey [Mon, 6 Jul 2015 17:29:33 +0000 (17:29 +0000)]
config.gcc: Add fused-madd.opt.
2015-07-06 Steve Ellcey <sellcey@imgtec.com>
* config.gcc <mips*-*-*>: Add fused-madd.opt.
* config/mips/mips.opt (mfused-madd): Remove.
* config/mips/mips.c (mips_rtx_costs): Update cost calculations.
* config/mips/mips.h (TARGET_MIPS8000): New.
(ISA_HAS_FP_MADD4_MSUB4): Remove.
(ISA_HAS_FP_MADDF_MSUBF): Remove.
(ISA_HAS_FP_MADD3_MSUB3): Remove.
(ISA_HAS_NMADD4_NMSUB4): Remove.
(ISA_HAS_NMADD3_NMSUB3): Remove.
(ISA_HAS_FUSED_MADD4): New.
(ISA_HAS_UNFUSED_MADD4): New.
(ISA_HAS_FUSED_MADDF): New.
(ISA_HAS_FUSED_MADD3): New.
* config/mips/mips.md: (fma<mode>4) Change from insn to expand.
(*fma<mode>4_madd3) New.
(*fma<mode>4_madd4) New.
(*fma<mode>4_maddf) New.
(fms<mode>4) New.
(*fms<mode>4_msub3) New.
(*fms<mode>4_msub4) New.
(fnma<mode>4) New.
(*fnma<mode>4_nmadd3) New.
(*fnma<mode>4_nmadd4) New.
(fnms<mode>4) New.
(*fnms<mode>4_nmsub3) New.
(*fnms<mode>4_nmsub4) New.
(*madd4<mode>) Modify to be unfused only.
(*msub4<mode>) Modify to be unfused only.
(*nmadd4<mode>) Modify to be unfused only.
(*nmsub4<mode>) Modify to be unfused only.
(*madd3<mode>) Remove.
(*msub3<mode>) Remove.
(*nmadd3<mode>) Remove.
(*nmsub3<mode>) Remove.
(*nmadd3<mode>_fastmath) Remove.
(*nmsub3<mode>_fastmath) Remove.
(*nmadd4<mode>_fastmath) Update condition.
(*nmsub4<mode>_fastmath) Update condition.
From-SVN: r225468
Jakub Jelinek [Mon, 6 Jul 2015 17:06:00 +0000 (19:06 +0200)]
Fix eipa_src AAPCS issue (PR target/65956)
2015-05-05 Jakub Jelinek <jakub@redhat.com>
PR target/65956
* gcc.c-torture/execute/pr65956.c: New test.
From-SVN: r225466
Alan Lawrence [Mon, 6 Jul 2015 16:58:16 +0000 (16:58 +0000)]
[ARM] PR/65956 AAPCS update for alignment attribute
gcc/:
PR target/65956
* config/arm/arm.c (arm_needs_doubleword_align): Drop any outer
alignment attribute, exploring one level down for records and arrays.
gcc/testsuite/:
* gcc.target/arm/aapcs/align1.c: New.
* gcc.target/arm/aapcs/align_rec1.c: New.
* gcc.target/arm/aapcs/align2.c: New.
* gcc.target/arm/aapcs/align_rec2.c: New.
* gcc.target/arm/aapcs/align3.c: New.
* gcc.target/arm/aapcs/align_rec3.c: New.
* gcc.target/arm/aapcs/align4.c: New.
* gcc.target/arm/aapcs/align_rec4.c: New.
* gcc.target/arm/aapcs/align_vararg1.c: New.
* gcc.target/arm/aapcs/align_vararg2.c: New.
From-SVN: r225465
H.J. Lu [Mon, 6 Jul 2015 16:56:11 +0000 (09:56 -0700)]
Optimize i?86-*-elfiamcu for iamcu by default
Default -mtune=/-march= to iamcu for i[34567]86-*-elfiamcu targets.
* config.gcc (x86_archs): Add iamcu.
(with_cpu): Default to iamcu for i[34567]86-*-elfiamcu.
(with_arch): Likewise.
* doc/invoke.texi: Add iamcu.
From-SVN: r225464
Uros Bizjak [Mon, 6 Jul 2015 16:43:33 +0000 (18:43 +0200)]
i386.md (extv<mode>): Rename from extv.
* config/i386/i386.md (extv<mode>): Rename from extv. Use SWI24
modes for operands 0 and 1. Use SImode for operands 2 and 3.
Copy operand 1 to a temporary if !ext_register_operand. Remove
ancient extract_bit_field workaround.
(*extv<mode>): Rename from *mov<mode>_extv_1.
(*extvqi): Rename from *movqi_extv_q.
(extzv<mode>): Rename from extzv. Use SWI248 modes for
operands 0 and 1. Use SImode for operands 2 and 3. Copy operand 1
to a temporary if !ext_register_operand. Remove ancient
extract_bit_field workaround.
(*extzv<mode>): Rename from *mov<mode>_extzv_1.
(*extzvqi): Rename from *movqi_extzv_1.
(*testqi_ext_3): Remove modes from const_int_operand predicated
operands. Add "n" constraint.
(*btsq, *btrq, *btcq): Remove mode from const_0_to_63 predicated
operand. Add "J" constraint.
(*btsq, *btrq, *btcq peephole2s): Remove mode from
const_0_to_63 predicated operand.
(regmode): New insn attribute.
(*bt<mode>): Use SImode for operand 1. Change operand 1 predicate
to nonmemory_operand. Use regmode insn attribute.
(*jcc_bt<mode>_1): Convert operand 2 to SImode.
(*jcc_bt<mode>_mask): Remove mode from operand 3.
(*jcc_btsi_1, *jcc_btsi_mask_1): Remove patterns.
(tbm_bextri_<mode>): Remove modes from const_0_to_255 predicated
operands. Use "N" constraint instead of "n".
From-SVN: r225463
Steven G. Kargl [Mon, 6 Jul 2015 16:33:38 +0000 (16:33 +0000)]
io.c (check_char_variable): New function.
2015-07-06 Steven G. Kargl <kargl@gcc.gnu.org>
* io.c (check_char_variable): New function.
(match_open_element, match_close_element, match_file_element,
match_dt_element, match_inquire_element, match_wait_element): Use it.
2015-07-06 Steven G. Kargl <kargl@gcc.gnu.org>
* gfortran.dg/iomsg_2.f90: New test.
From-SVN: r225462
Alan Lawrence [Mon, 6 Jul 2015 16:21:55 +0000 (16:21 +0000)]
[ARM] fix movdi expander to avoid illegal ldrd/strd
* config/arm/arm.md (movdi): Avoid odd-number ldrd/strd in ARM state.
From-SVN: r225461
H.J. Lu [Mon, 6 Jul 2015 15:17:44 +0000 (08:17 -0700)]
Add -march=iamcu to optimize for IA MCU
IA MCU is based on Intel Pentium ISA without x87 and passing parameters
in registers. We want to optimize for IA MCU without changing existing
Pentium codegen. This patch adds PROCESSOR_IAMCU for -march=iamcu,
which is based on -march=pentium with updated cost tables.
gcc/
PR target/66749
* config/i386/i386.c (iamcu_cost): New.
(m_IAMCU): Likewise.
(initial_ix86_arch_features): Disable X86_ARCH_CMOV for m_IAMCU.
(processor_target_table): Add an entry for "iamcu".
(processor_alias_table): Likewise.
(ix86_issue_rate): Handle PROCESSOR_IAMCU.
(ix86_adjust_cost): Likewise.
(ia32_multipass_dfa_lookahead): Likewise.
* config/i386/i386.h (processor_type): Add PROCESSOR_IAMCU.
* config/i386/x86-tune.def: Updated for m_IAMCU.
gcc/testsuite/
PR target/66749
* gcc.target/i386/pr66749.c: New test.
From-SVN: r225460
Richard Biener [Mon, 6 Jul 2015 14:41:22 +0000 (14:41 +0000)]
re PR tree-optimization/66772 (ICE at -O2 and -O3 on x86_64-linux-gnu)
2015-07-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/66772
* tree-ssa-ccp.c (ccp_visit_phi_node): Make sure that copy
values are available in the PHI node BB when there are
still unexecutable edges.
* gcc.dg/torture/pr66772-1.c: New testcase.
* gcc.dg/torture/pr66772-2.c: Likewise.
From-SVN: r225459
Andrew Bennett [Mon, 6 Jul 2015 14:16:14 +0000 (14:16 +0000)]
MIPS: For micromips allow the near-far-3.c test to use the jals instruction to call near_func.
testsuite/
* gcc.target/mips/near-far-3.c: Allow the call to near_func to use
the jals instruction.
From-SVN: r225457
Richard Biener [Mon, 6 Jul 2015 13:12:39 +0000 (13:12 +0000)]
re PR tree-optimization/66767 (FAIL: gcc.dg/vect/vect-align-1.c execution test)
2015-07-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/66767
* tree-vect-loop-manip.c (vect_create_cond_for_align_checks):
Make sure to build the alignment test on a SSA name without
final alignment info valid only if the alignment test
evaluates to true.
From-SVN: r225454
Bernd Schmidt [Mon, 6 Jul 2015 12:49:26 +0000 (12:49 +0000)]
Fix assert caused by bad cfg manipulation in bfin.
PR target/66620
* config/bfin/bfin.c (hwloop_optimize): Create new bb between jump and
loop start when inserting LSETUP.
From-SVN: r225453
H.J. Lu [Mon, 6 Jul 2015 11:50:47 +0000 (11:50 +0000)]
Allow -mincoming-stack-boundary=3 with -mno-sse
Similar to -mpreferred-stack-boundary=3, -mincoming-stack-boundary=3 is
allowed with -mno-sse in 64-bit mode.
gcc/
PR target/53383
* config/i386/i386.c (ix86_option_override_internal): Allow
-mincoming-stack-boundary=3 for 64-bit if SSE is disabled.
gcc/testsuite/
PR target/53383
* gcc.target/i386/pr53383-1.c: New file.
* gcc.target/i386/pr53383-2.c: Likewise.
* gcc.target/i386/pr53383-3.c: Likewise.
From-SVN: r225452
Rainer Orth [Mon, 6 Jul 2015 11:43:07 +0000 (11:43 +0000)]
Rename read-md.c:decimal_string
* read-md.c (decimal_string): Rename to ...
(md_decimal_string): ... this.
(handle_enum): Reflect this.
From-SVN: r225451
Szabolcs Nagy [Mon, 6 Jul 2015 11:00:03 +0000 (11:00 +0000)]
[AArch64] PR target/66731 Fix fnmul insn with -frounding-math
gcc/Changelog:
2015-07-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
PR target/66731
* config/aarch64/aarch64.md (fnmul<mode>3): Handle -frounding-math.
gcc/testsuite/Changelog:
2015-07-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
* gcc.target/aarch64/fnmul-1.c: New.
* gcc.target/aarch64/fnmul-2.c: New.
* gcc.target/aarch64/fnmul-3.c: New.
* gcc.target/aarch64/fnmul-4.c: New.
From-SVN: r225450
Richard Biener [Mon, 6 Jul 2015 10:37:33 +0000 (10:37 +0000)]
re PR tree-optimization/66759 (ICE in generic-match.c on 456.hmmer)
2015-07-06 Richard Biener <rguenther@suse.de>
PR middle-end/66759
* match.pd: Add missing constraint of y to REAL_CST in
REAL_CST - x CMP y to y - CST CMP x simplification.
* gcc.dg/torture/pr66759.c: New testcase.
From-SVN: r225449
Andre Vehreschild [Mon, 6 Jul 2015 10:27:38 +0000 (12:27 +0200)]
Added missing Changelog entry for testsuite.
From-SVN: r225448
Andre Vehreschild [Mon, 6 Jul 2015 10:26:12 +0000 (12:26 +0200)]
re PR fortran/58586 (ICE with derived type with allocatable component passed by value)
gcc/testsuite/ChangeLog:
2015-07-06 Andre Vehreschild <vehre@gmx.de>
PR fortran/58586
* gfortran.dg/alloc_comp_class_3.f03: New test.
* gfortran.dg/alloc_comp_class_4.f03: New test.
gcc/fortran/ChangeLog:
2015-07-06 Andre Vehreschild <vehre@gmx.de>
PR fortran/58586
* resolve.c (resolve_symbol): Non-private functions in modules
with allocatable or pointer components are marked referenced
now. Furthermore is the default init especially for those
components now done in gfc_conf_procedure_call preventing
duplicate code.
* trans-decl.c (gfc_generate_function_code): Generate a fake
result decl for functions returning an object with allocatable
components and initialize them.
* trans-expr.c (gfc_conv_procedure_call): For value typed trees
use the tree without indirect ref. And for non-decl trees
add a temporary variable to prevent evaluating the tree
multiple times (prevent multiple function evaluations).
* trans.h: Made gfc_trans_structure_assign () protoype
available, which is now needed by trans-decl.c:gfc_generate_
function_code(), too.
From-SVN: r225447
Eric Botcazou [Mon, 6 Jul 2015 08:43:58 +0000 (08:43 +0000)]
re PR tree-optimization/66757 (wrong code at -O1 and above on x86_64-linux-gnu)
PR tree-optimization/66757
* match.pd: Add missing condition to ~X ^ C -> X ^ ~C.
From-SVN: r225446
Francois-Xavier Coudert [Mon, 6 Jul 2015 08:22:34 +0000 (08:22 +0000)]
re PR libfortran/40267 (Eventually get rid of libgfortranbegin.a)
PR libfortran/40267
* Makefile.am: Remove libgfortranbegin targets.
* Makefile.in: Regenerate.
* fmain.c: Remove.
From-SVN: r225445
Sebastian Huber [Mon, 6 Jul 2015 07:21:48 +0000 (07:21 +0000)]
libgomp: Add comment to clarify last_team usage
libgomp/ChangeLog
2015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libgomp.h (gomp_thread_pool): Comment last_team field.
From-SVN: r225444
Bin Cheng [Mon, 6 Jul 2015 05:57:56 +0000 (05:57 +0000)]
re PR testsuite/66720 (gcc.dg/vect/pr48052.c FAILs)
PR tree-optimization/66720
* gcc.dg/vect/pr48052.c: Use dg-require-effective-target
vect_int_mult.
From-SVN: r225443
GCC Administrator [Mon, 6 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r225440
Chung-Lin Tang [Sun, 5 Jul 2015 21:49:08 +0000 (21:49 +0000)]
nios2-protos.h (nios2_symbol_ref_in_small_data_p): Delete extern declaration.
2015-07-05 Chung-Lin Tang <cltang@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/nios2/nios2-protos.h (nios2_symbol_ref_in_small_data_p):
Delete extern declaration.
(gprel_constant_p): Add extern declaration.
* config/nios2/constraints.md ("S"): Use gprel_constant_p
instead of nios2_symbol_ref_in_small_data_p.
* config/nios2/nios2.c (nios2_legitimate_address_p): Likewise.
(nios2_symbol_ref_in_small_data_p): Make static.
(gprel_constant_p): Make non-static.
gcc/testsuite/
* gcc.target/nios2/gprel-offset.c: New test.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r225437
François Dumont [Sun, 5 Jul 2015 21:16:07 +0000 (21:16 +0000)]
hashtable.h (_Hashtable<>::__rehash_policy): Do not rehash container.
2015-07-05 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Do not
rehash container.
* testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
Adapt.
From-SVN: r225436
Gerald Pfeifer [Sun, 5 Jul 2015 20:36:22 +0000 (20:36 +0000)]
fragments.texi (Target Fragment): Convert debian.org link to use https.
* doc/fragments.texi (Target Fragment): Convert debian.org
link to use https.
* doc/install.texi (Configuration): Ditto.
From-SVN: r225435
Jakub Jelinek [Sun, 5 Jul 2015 12:14:41 +0000 (14:14 +0200)]
re PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)
PR tree-optimization/66718
* tree-vect-stmts.c (vectorizable_call): Replace uses of
GOMP_SIMD_LANE outside of loop with vf - 1 rather than 0.
From-SVN: r225434
Jakub Jelinek [Sun, 5 Jul 2015 12:11:57 +0000 (14:11 +0200)]
re PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)
PR tree-optimization/66718
* tree-vect-stmts.c (vectorizable_assignment, vectorizable_store,
vectorizable_load, vectorizable_condition): Move vectype,
nunits, ncopies computation after checking what kind of statement
stmt is.
From-SVN: r225433
Richard Sandiford [Sun, 5 Jul 2015 08:02:59 +0000 (08:02 +0000)]
target-insns.def (extv, [...]): New targetm instruction patterns.
gcc/
* target-insns.def (extv, extzv, insv): New targetm instruction
patterns.
* optabs.c (get_extraction_insn): Use them instead of HAVE_*/gen_*
interface.
* recog.c (simplify_while_replacing): Likewise.
From-SVN: r225432
Richard Sandiford [Sun, 5 Jul 2015 08:01:48 +0000 (08:01 +0000)]
target-insns.def (doloop_begin, doloop_end): New targetm instruction patterns.
gcc/
* target-insns.def (doloop_begin, doloop_end): New targetm
instruction patterns.
* loop-init.c: Include target.h.
(pass_loop2::gate): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(pass_rtl_doloop::gate): Likewise.
(pass_rtl_doloop::execute): Remove preprocessor condition.
* hw-doloop.c: Build unconditionally.
* loop-doloop.c: Likewise.
(doloop_optimize): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(doloop_modify): Likewise. Change type of doloop_seq to rtx_insn *.
* modulo-sched.c (doloop_register_get): Likewise.
From-SVN: r225431
Richard Sandiford [Sun, 5 Jul 2015 07:59:14 +0000 (07:59 +0000)]
target-insns.def (clear_cache): New targetm instruction pattern.
gcc/
* target-insns.def (clear_cache): New targetm instruction pattern.
* builtins.c (expand_builtin___clear_cache): Use it instead of
HAVE_*/gen_* interface.
From-SVN: r225430
Richard Sandiford [Sun, 5 Jul 2015 07:58:30 +0000 (07:58 +0000)]
gcc/
* target-insns.def (allocate_stack, check_stack, probe_stack)
(probe_stack_address, split_stack_prologue, split_stack_space_check):
New targetm instruction patterns.
* explow.c (allocate_dynamic_stack_space): Use them instead of
HAVE_*/gen_* interface.
(emit_stack_probe): Likewise.
(probe_stack_range): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
From-SVN: r225429
Richard Sandiford [Sun, 5 Jul 2015 07:56:45 +0000 (07:56 +0000)]
target-insns.def (stack_protect_set, [...]): New targetm instruction patterns.
gcc/
* target-insns.def (stack_protect_set, stack_protect_test): New
targetm instruction patterns.
* cfgexpand.c (stack_protect_prologue): Use them instead of
HAVE_*/gen_* interface.
* function.c (stack_protect_epilogue): Likewise.
From-SVN: r225428
Richard Sandiford [Sun, 5 Jul 2015 07:55:03 +0000 (07:55 +0000)]
expr.h (gen_move_insn_uncast): Delete.
gcc/
* expr.h (gen_move_insn_uncast): Delete.
* expr.c (gen_move_insn_uncast): Delete.
From-SVN: r225427
Richard Sandiford [Sun, 5 Jul 2015 07:52:32 +0000 (07:52 +0000)]
gcc/
* target-insns.def (restore_stack_block, restore_stack_function)
(restore_stack_nonlocal, save_stack_block, save_stack_function)
(save_stack_nonlocal): New targetm instruction patterns.
* builtins.c (expand_builtin_apply): Use them instead of
HAVE_*/gen_* interface.
* explow.c (emit_stack_save, emit_stack_restore): Likewise.
From-SVN: r225426
Richard Sandiford [Sun, 5 Jul 2015 07:51:07 +0000 (07:51 +0000)]
target-insns.def (trap): New targetm instruction pattern.
gcc/
* target-insns.def (trap): New targetm instruction pattern.
* builtins.c (expand_builtin_trap): Use it instead of HAVE_*/gen_*
interface.
* explow.c (allocate_dynamic_stack_space): Likewise.
* ifcvt.c (find_if_header): Likewise.
From-SVN: r225425
Richard Sandiford [Sun, 5 Jul 2015 07:50:31 +0000 (07:50 +0000)]
target-insns.def (prefetch): New targetm instruction pattern.
gcc/
* target-insns.def (prefetch): New targetm instruction pattern.
* tree-ssa-loop-prefetch.c: Include targeth.
(tree_ssa_prefetch_arrays): Use prefetch targetm pattern instead
of HAVE_*/gen_* interface.
* builtins.c (expand_builtin_prefetch): Likewise.
* toplev.c (process_options): Likewise.
From-SVN: r225424
Richard Sandiford [Sun, 5 Jul 2015 07:49:16 +0000 (07:49 +0000)]
target-insns.def (untyped_call, [...]): New targetm instruction patterns.
gcc/
* target-insns.def (untyped_call, untyped_return): New targetm
instruction patterns.
* builtins.c (expand_builtin_apply): Use them instead of
HAVE_*/gen_* interface.
(result_vector): Define unconditionally.
From-SVN: r225423
Richard Sandiford [Sun, 5 Jul 2015 07:48:04 +0000 (07:48 +0000)]
gcc/
* target-insns.def (builtin_longjmp, builtin_setjmp_receiver)
(builtin_setjmp_setup, exception_receiver, nonlocal_goto)
(nonlocal_goto_receiver): New targetm instruction patterns.
* builtins.c (expand_builtin_setjmp_setup): Use them instead
of HAVE_*/gen_* interface.
(expand_builtin_setjmp_receiver): Likewise.
(expand_builtin_longjmp, expand_builtin_nonlocal_goto): Likewise.
* except.c (expand_dw2_landing_pad_for_region): Likewise.
From-SVN: r225422
Richard Sandiford [Sun, 5 Jul 2015 07:44:45 +0000 (07:44 +0000)]
target.def: Add code_for_* hooks.
gcc/
* target.def: Add code_for_* hooks.
* gentarget-def.c (def_target_insn): Add TARGET_CODE_FOR_* macros.
* defaults.h (HAVE_tablejump, gen_tablejump): Delete.
* target-insns.def (casesi, tablejump): New targetm instruction
patterns.
* expr.c (try_casesi): Use them instead of HAVE_*/gen_* interface.
(do_tablejump): Likewise.
* stmt.c (expand_switch_as_decision_tree_p): Likewise.
(expand_sjlj_dispatch_table): Likewise.
* targhooks.c (default_case_values_threshold): Likewise.
From-SVN: r225421
Sandra Loosemore [Sun, 5 Jul 2015 02:56:18 +0000 (22:56 -0400)]
nios2.c (save_reg, [...]): Use plus_constant.
2015-07-04 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/nios2/nios2.c (save_reg, restore_reg): Use plus_constant.
Use rtx_insn * instead of rtx.
(nios2_emit_add_constant): Use rtx_insn * instead of rtx.
(nios2_expand_prologue, nios2_expand_epilogue): Likewise.
(nios2_call_tls_get_addr): Likewise.
(nios2_emit_expensive_div): Likewise.
(nios2_emit_move_sequence): Change return type to bool.
* config/nios2/nios2-protos.h (nios2_emit_move_sequence):
Change return type to bool.
From-SVN: r225420
GCC Administrator [Sun, 5 Jul 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r225419
Bernd Edlinger [Sat, 4 Jul 2015 19:02:18 +0000 (19:02 +0000)]
re PR target/66747 (The commit r225260 broke the builds of the mips-{mti,img}-linux-gnu tool chains.)
2015-07-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR target/66747
* config/mips/mips.c (mips_find_gp_ref): Handle instruction sequences.
From-SVN: r225416
Steven G. Kargl [Sat, 4 Jul 2015 15:37:04 +0000 (15:37 +0000)]
[multiple changes]
2015-07-04 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66725
* io.c (is_char_type): New function to test for BT_CHARACTER
(gfc_match_open, gfc_match_close, match_dt_element): Use it.
2015-07-03 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66725
* gfortran.dg/pr66725.f90: New test.
From-SVN: r225415
John David Anglin [Sat, 4 Jul 2015 13:42:55 +0000 (13:42 +0000)]
re PR target/66114 (some indirect_jump patterns use operands[] in their condition when they shouldn't)
PR target/66114
* config/pa/pa.md (indirect_jump): Use pmode_register_operand instead
of register_operand. Remove constraint.
From-SVN: r225412
Marc Glisse [Sat, 4 Jul 2015 11:15:33 +0000 (13:15 +0200)]
tree-cfg.c (verify_gimple_assign_ternary): Check the first argument.
2015-07-04 Marc Glisse <marc.glisse@inria.fr>
* tree-cfg.c (verify_gimple_assign_ternary) <VEC_COND_EXPR>: Check
the first argument.
From-SVN: r225411
GCC Administrator [Sat, 4 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r225409
Paolo Carlini [Fri, 3 Jul 2015 18:56:40 +0000 (18:56 +0000)]
attribs.c (decl_attributes): Guard inform with the return value of the preceding warning.
2015-07-03 Paolo Carlini <paolo.carlini@oracle.com>
* attribs.c (decl_attributes): Guard inform with the return value
of the preceding warning.
From-SVN: r225402
Carlos Sánchez de La Lama [Fri, 3 Jul 2015 17:28:43 +0000 (17:28 +0000)]
re PR libitm/52482 (libitm INVALID MNEMONIC in .S (powerpc asm))
2015-07-03 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
PR target/52482
* config/powerpc/sjlj.S: Port to Xcode 2.5.
From-SVN: r225388
James Greenhalgh [Fri, 3 Jul 2015 14:49:05 +0000 (14:49 +0000)]
[Patch docs obvious AArch64] Fix position of -moverride documentation
gcc/
* doc/invoke.texi (moverride): Move to correct section.
From-SVN: r225384
Jason Merrill [Fri, 3 Jul 2015 14:42:21 +0000 (10:42 -0400)]
wide-int_plugin.c (test_double_int_round_udiv): Avoid narrowing error.
* gcc.dg/plugin/wide-int_plugin.c (test_double_int_round_udiv):
Avoid narrowing error.
From-SVN: r225383
Segher Boessenkool [Fri, 3 Jul 2015 14:37:26 +0000 (16:37 +0200)]
re PR rtl-optimization/66706 (Redundant bitmask instruction on x >> (n & 32))
PR rtl-optimization/66706
* gcc.target/powerpc/shift-int.c: New testcase.
From-SVN: r225382
Jonathan Wakely [Fri, 3 Jul 2015 14:08:48 +0000 (15:08 +0100)]
status_cxx2017.xml: Update status table.
* doc/xml/manual/status_cxx2017.xml: Update status table.
* doc/html/manual/*: Regenerate.
From-SVN: r225380
Ville Voutilainen [Fri, 3 Jul 2015 14:08:37 +0000 (17:08 +0300)]
Implement std::experimental::fundamentals_v2::propagate_const.
2015-07-03 Ville Voutilainen <ville.voutilainen@gmail.com>
Implement std::experimental::fundamentals_v2::propagate_const.
* include/Makefile.am: Add propagate_const.
* include/Makefile.in: Regenerate.
* include/experimental/propagate_const: New.
* testsuite/experimental/propagate_const/assignment/copy.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move_neg.cc:
Likewise.
* testsuite/experimental/propagate_const/cons/copy.cc: Likewise.
* testsuite/experimental/propagate_const/cons/default.cc: Likewise.
* testsuite/experimental/propagate_const/cons/move.cc: Likewise.
* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
* testsuite/experimental/propagate_const/hash/1.cc: Likewise.
* testsuite/experimental/propagate_const/observers/1.cc: Likewise.
* testsuite/experimental/propagate_const/relops/1.cc: Likewise.
* testsuite/experimental/propagate_const/requirements1.cc: Likewise.
* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
* testsuite/experimental/propagate_const/swap/1.cc: Likewise.
* testsuite/experimental/propagate_const/typedefs.cc: Likewise.
From-SVN: r225379
Richard Biener [Fri, 3 Jul 2015 13:46:34 +0000 (13:46 +0000)]
genmatch.c (commutative_tree_code, [...]): Copy from tree.c
2015-07-03 Richard Biener <rguenther@suse.de>
* genmatch.c (commutative_tree_code, commutative_ternary_tree_code):
Copy from tree.c
(dt_operand::gen_gimple_expr): After valueizing operands
re-canonicalize operand order for commutative tree codes.
From-SVN: r225378
H.J. Lu [Fri, 3 Jul 2015 13:08:35 +0000 (06:08 -0700)]
Add the missing file
From-SVN: r225377
H.J. Lu [Fri, 3 Jul 2015 12:25:10 +0000 (12:25 +0000)]
Add IA MCU support to x86intrin.h
x86intrin.h has useful intrinsics for instructions for IA MCU. This
patch adds __iamcu__ check to x86intrin.h and ia32intrin.h.
gcc/
PR target/66746.
* config/i386/ia32intrin.h (__crc32b): Don't define if __iamcu__
is defined.
(__crc32w): Likewise.
(__crc32d): Likewise.
(__rdpmc): Likewise.
(__rdtscp): Likewise.
(_rdpmc): Likewise.
(_rdtscp): Likewise.
* config/i386/x86intrin.h: Only include ia32intrin.h if __iamcu__
is defined.
gcc/testsuite/
PR target/66746.
* gcc.target/i386/pr66746.c: New file.
From-SVN: r225376
Richard Biener [Fri, 3 Jul 2015 12:02:35 +0000 (12:02 +0000)]
fold-const.c (fold_mathfn_compare): Remove.
2015-07-03 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_mathfn_compare): Remove.
(fold_inf_compare): Likewise.
(fold_comparison): Move floating point comparison simplifications...
* match.pd: ... to patterns here. Introduce simple_comparisons
operator list and use it for patterns formerly in fold_comparison.
From-SVN: r225375