1. 16 Aug, 2012 25 commits
    • re PR target/39423 ([SH] performance regression: lost mov @(disp,Rn)) · 9839afaf
      	PR target/39423
      	* config/sh/sh.md (*movsi_index_disp, *movhi_index_disp): Handle
      	potential T_REG clobber.  Convert zero extending split to
      	insn_and_split.
      
      From-SVN: r190458
      Oleg Endo committed
    • re PR target/54089 ([SH] Refactor shift patterns) · 043d627e
      	PR target/54089
      	* config/sh/sh.md (ashlsi3_d): Do not split if it would result
      	in a T_REG clobber.  Correct comment.
      	(ashlsi3_n): Correct comment.
      
      From-SVN: r190457
      Oleg Endo committed
    • * lib/target-supports.exp (check_effective_target_sync_int_long) · f5a53fc7
      	(check_effective_target_sync_char_short): Enable for crisv32-*
      	and cris-*.
      
      From-SVN: r190456
      Hans-Peter Nilsson committed
    • re PR middle-end/54261 (reverse sync/atomic operators when only… · af4bd920
      re PR middle-end/54261 (reverse sync/atomic operators when only sync_compare_and_swap_optab libfuncs implemented)
      
      	PR middle-end/54261
      	* gcc.dg/torture/pr54261-1.c: New test.
      
      From-SVN: r190455
      Hans-Peter Nilsson committed
    • re PR middle-end/54261 (reverse sync/atomic operators when only… · df1a3a7c
      re PR middle-end/54261 (reverse sync/atomic operators when only sync_compare_and_swap_optab libfuncs implemented)
      
      	PR middle-end/54261
      	* optabs.c (expand_atomic_fetch_op): Save and restore code when
      	retrying after failed attempt.
      
      From-SVN: r190454
      Hans-Peter Nilsson committed
    • i386-protos.h (ix86_split_lea_for_addr): Add additional argument. · af7c3fe7
      2012-08-16  Yuri Rumyantsev  <ysrumyan@gmail.com>
      
      	* config/i386/i386-protos.h (ix86_split_lea_for_addr) : Add
      	additional argument.
      	* config/i386/i386.md (ix86_split_lea_for_addr) : Add
      	additional argument curr_insn.
      	* config/i386/i386.c (ix86_split_lea_for_addr): Load base or index
      	register first, depending on their defintion distances.
      	(ix86_lea_outperforms): Prefer LEA only if split cost exceeds
      	AGU stall.
      	(find_nearest_reg-def): New function. Find register with
      	nearest definition.
      
      From-SVN: r190452
      Yuri Rumyantsev committed
    • Add a stub header file "feedback.h," needed to compile glibc and linux. · fd199491
      Add a stub header file "feedback.h," needed to compile glibc and
      linux.
      	* config.gcc (tilegx-*-linux*): Add feedback.h.
      	(tilepro-*-linux*): Likewise.
      	* config/tilegx/feedback.h: New file.
      	* config/tilepro/feedback.h: New file.
      
      From-SVN: r190451
      Walter Lee committed
    • revert: re PR bootstrap/54281 (Fails to bootstrap with --disable-nls) · 6c76b723
      2012-08-16   Diego Novillo  <dnovillo@google.com>
      
      	Revert
      
      	PR bootstrap/54281
      	* double-int.h: Move including of gmp.h ...
      	* system.h: ... here.
      	* realmpfr.h: Do not include gmp.h.
      	* tree-ssa-loop-niter.c: Do not include gmp.h.
      
      From-SVN: r190449
      Diego Novillo committed
    • darwin.h (TARGET_IEEE_QUAD): Fix comment. · e426fa99
      2012-08-16  Segher Boessenkool  <segher@kernel.crashing.org>
      
             * config/rs6000/darwin.h (TARGET_IEEE_QUAD): Fix comment.
      
      From-SVN: r190446
      Segher Boessenkool committed
    • re PR middle-end/54146 (Very slow compile with attribute((flatten))) · f5843d08
      2012-08-16  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/54146
      	* tree-ssa-loop-niter.c (find_loop_niter_by_eval): Free the
      	exit vector.
      	* ipa-pure-const.c (analyze_function): Use FOR_EACH_LOOP_BREAK.
      	* cfgloop.h (FOR_EACH_LOOP_BREAK): Fix.
      	* tree-ssa-structalias.c (handle_lhs_call): Properly free rhsc.
      	* tree-into-ssa.c (get_ssa_name_ann): Allocate info only when
      	needed.
      	* tree-ssa-loop-im.c (analyze_memory_references): Adjust.
      	(tree_ssa_lim_finalize): Free all mem_refs.
      	* tree-ssa-sccvn.c (extract_and_process_scc_for_name): Free
      	scc when bailing out.
      	* modulo-sched.c (sms_schedule): Use FOR_EACH_LOOP_BREAK.
      	* ira-build.c (loop_with_complex_edge_p): Free loop exit vector.
      	* graphite-sese-to-poly.c (scop_ivs_can_be_represented): Use
      	FOR_EACH_LOOP_BREAK.
      
      From-SVN: r190445
      Richard Guenther committed
    • re PR bootstrap/54281 (Fails to bootstrap with --disable-nls) · 0c8036f7
      2012-08-16  Diego Novillo  <dnovillo@google.com>
      
      	PR bootstrap/54281
      	* double-int.h: Move including of gmp.h ...
      	* system.h: ... here.
      	* realmpfr.h: Do not include gmp.h.
      	* tree-ssa-loop-niter.c: Do not include gmp.h.
      
      fortran/ChangeLog
      	* gfortran.h: Do not include gmp.h.
      
      From-SVN: r190444
      Diego Novillo committed
    • re PR middle-end/54146 (Very slow compile with attribute((flatten))) · 01273677
      	PR middle-end/54146
      	* tree-flow.h (compute_global_livein): Remove prototype.
      	* tree-into-ssa.c (compute_global_livein): Remove function.
      	* tree-ssa-loop-manip.c: Include gimple-pretty-print.h.
      	(find_sibling_superloop): New function.
      	(compute_live_loop_exits): New function.
      	(add_exit_phis_edge): Rename to add_exit_phi.  Do not allow
      	inserting a PHI in a block that is not a loop exit for VAR.
      	Add dumping if TDF_DETAILS.
      	(add_exit_phis_var): Rewrite.
      	(add_exit_phis): Update.
      	(get_loops_exits): Rewrite to return an array of per-loop exits
      	rather than one bitmap with all loop exits.
      	(find_uses_to_rename_bb): Ignore virtual PHI nodes.
      	(rewrite_into_loop_closed_ssa): Update.
      
      From-SVN: r190442
      Steven Bosscher committed
    • i386elf.h (ASM_OUTPUT_ASCII): Cast _ascii_bytes before passing it to ASM_OUTPUT_LIMITED_STRING. · ca9b1cd8
      	* config/i386/i386elf.h (ASM_OUTPUT_ASCII): Cast _ascii_bytes
      	before passing it to ASM_OUTPUT_LIMITED_STRING.
      
      From-SVN: r190441
      Nick Clifton committed
    • t-avr: Replace occurrences of $(CC) with $(COMPILER). · 1f85d2fb
      	* config/avr/t-avr: Replace occurrences of $(CC) with $(COMPILER).
      	* config/avr/avr.c (avr_legitimize_reload_address): Add casts
      	for reload_type enums.
              (DEF_BUILTIN): Cast the icode to enum insn_code.
      
      From-SVN: r190439
      Nick Clifton committed
    • Revert unintended change from last commit · d34e7d4f
      From-SVN: r190437
      Sandra Loosemore committed
    • Add missing ChangeLog entry for r190406 · a9d2a88c
      From-SVN: r190436
      Maxim Kuvyrkov committed
    • longlong.h: (powerpc): Delete _ARCH_PWR and _ARCH_COM handling. · 18efc0dd
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      libgcc/
             * longlong.h: (powerpc): Delete _ARCH_PWR and _ARCH_COM handling.
      
      From-SVN: r190434
      Segher Boessenkool committed
    • aix43.h (ASM_CPU_SPEC): Use %(asm_default) instead of -mppc. · 800d16e9
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/
              * config/rs6000/aix43.h (ASM_CPU_SPEC): Use %(asm_default)
              instead of -mppc.
              * config/rs6000/aix51.h (ASM_CPU_SPEC): Ditto.
      
      From-SVN: r190433
      Segher Boessenkool committed
    • aix43.h (TARGET_DEFAULT): Delete MASK_NEW_MNEMONICS. · 6b39bc38
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/
      	* config/rs6000/aix43.h (TARGET_DEFAULT): Delete MASK_NEW_MNEMONICS.
      	(RS6000_CALL_GLUE): Adjust for single assembler syntax.
      	* config/rs6000/aix51.h (TARGET_DEFAULT, RS6000_CALL_GLUE):
      	Ditto.
      	* config/rs6000/aix52.h (TARGET_DEFAULT, RS6000_CALL_GLUE):
      	Ditto.
      	* config/rs6000/aix53.h (TARGET_DEFAULT, RS6000_CALL_GLUE):
      	Ditto.
      	* config/rs6000/aix61.h (TARGET_DEFAULT, RS6000_CALL_GLUE):
      	Ditto.
      	* config/rs6000/darwin.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/darwin.md (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/darwin64.h (TARGET_DEFAULT): Delete
      	MASK_NEW_MNEMONICS.
      	* config/rs6000/default64.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/dfp.md: (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/eabi.h (TARGET_DEFAULT): Delete
      	MASK_NEW_MNEMONICS.
      	* config/rs6000/eabialtivec.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/eabispe.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/linuxspe.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/rs6000-cpus.def (whole file): Delete
      	POWERPC_BASE_MASK.
      	* config/rs6000/rs6000-tables.opt: Regenerate.
      	* config/rs6000/rs6000.c (POWERPC_BASE_MASK): Delete.
      	(num_insns_constant_wide): Adjust comments.
      	(whole file): Adjust to single assembler syntax.
      	(output_cbranch): Adjust comment.
      	* config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Delete.
      	* config/rs6000/rs6000.md: (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/rs6000.opt (mnew-mnemonics): Delete.
      	(mold-mnemonics): Delete.
      	* config/rs6000/spe.md: (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/sync.md: (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/sysv4.h (TARGET_DEFAULT): Delete
      	MASK_NEW_MNEMONICS.
      	(ASM_OUTPUT_REG_PUSH): Adjust.
      	(ASM_OUTPUT_REG_POP): Adjust.
      	* config/rs6000/sysv4le.h (TARGET_DEFAULT): Delete
      	MASK_NEW_MNEMONICS.
      	* config/rs6000/vsx.md: (whole file): Adjust to single
      	assembler syntax.
      	* config/rs6000/vxworks.h (TARGET_DEFAULT): Delete
      	MASK_NEW_MNEMONICS.
      	* doc/invoke.texi: Adjust documentation to reflect the
      	removal of -mnew-mnemonics and -mold-mnemonics.
      
      libgcc/
      	* longlong.h: (whole file, powerpc): Adjust to single assembler syntax.
      
      From-SVN: r190432
      Segher Boessenkool committed
    • rs6000-common.c (rs6000_handle_option): Delete handling for -mno-powerpc and -mpowerpc. · a441dedb
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/
      	* common/config/rs6000/rs6000-common.c (rs6000_handle_option):
      	Delete handling for -mno-powerpc and -mpowerpc.
      	* config/rs6000/aix43.h (ASM_CPU_SPEC): Similar.
      	(ASM_DEFAULT_SPEC): Use -mppc instead of -mcom.
      	* config/rs6000/aix51.h (ASM_CPU_SPEC, ASM_DEFAULT_SPEC): Ditto.
      	* config/rs6000/aix52.h (TARGET_DEFAULT): Delete MASK_POWERPC.
      	* config/rs6000/aix53.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/aix61.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/darwin.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/darwin64.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/default64.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/driver-rs6000.c (asm_names): Delete handling
      	for -mcpu=common and -mpowerpc.
      	* config/rs6000/eabi.h (TARGET_DEFAULT): Delete MASK_POWERPC.
      	* config/rs6000/eabialtivec.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/eabispe.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/linuxspe.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_CFSTRING):
      	Use RS6000_BTM_ALWAYS instead of RS6000_BTM_POWERPC.
      	* config/rs6000/rs6000-c.c (rs6000_target_modify_macros):
      	Adjust.
      	(rs6000_cpu_cpp_builtins): Adjust.
      	* config/rs6000/rs6000.c (POWERPC_BASE_MASK): Delete MASK_POWERPC.
      	(rs6000_builtin_mask_calculate): Adjust.
      	(rs6000_emit_move): Delete code for ! TARGET_POWERPC.
      	(rs6000_init_libfuncs): Ditto.
      	(rs6000_output_function_prologue): Ditto.
      	(rs6000_opt_masks): Delete MASK_POWERPC.
      	(rs6000_builtin_mask_names): Delete RS6000_BTM_POWERPC.
      	* config/rs6000/rs6000.h (ASM_CPU_SPEC): Delete handling for
      	-mpowerpc.
      	(RS6000_BTM_POWERPC): Delete.
      	(RS6000_BTM_COMMON): Delete RS6000_BTM_POWERPC.
      	* config/rs6000/rs6000.md (extendqisi2 patterns): Adjust for
      	TARGET_POWERPC always on.
      	(extendqihi2 patterns): Similar.
      	(various unnamed subtract patterns): Similar.
      	(bswaphi2 patterns): Similar.
      	(divmodsi4): Similar.
      	(udiv<GPR:mode>3): Similar.
      	(div<GPR:mode>3 patterns): Similar.
      	(udivmodsi4): Similar.
      	(mulhcall): Delete.
      	(mullcall): Delete.
      	(divss_call): Delete.
      	(divus_call): Delete.
      	(quoss_call): Delete.
      	(quous_call): Delete.
      	(insvsi patterns): Adjust.
      	(addsf3 patterns): Adjust.
      	(subsf3 patterns): Adjust.
      	(mulsf3 patterns): Adjust.
      	(divsf3 patterns): Adjust.
      	(*fmasf4_fpr): Adjust.
      	(*fmssf4_fpr): Adjust.
      	(*nfmasf4_fpr): Adjust.
      	(*nfmssf4_fpr): Adjust.
      	(*floatunssidf2_internal): Adjust.
      	(fix_trunc<SFDF:mode>si2_internal): Adjust.
      	(fctiwz_<SFDF:mode>): Adjust.
      	(mulsidi3 patterns): Adjust.
      	(smulsi3_highpart patterns): Adjust.
      	(umulsi3_highpart patterns): Adjust.
      	(fix_trunctfsi2 patterns): Adjust.
      	(prefetch): Adjust.
      	* config/rs6000/rs6000.opt (mpowerpc): Replace by stub option.
      	(mno-powerpc): Delete.
      	* config/rs6000/sync.md (load_locked<ATOMIC:mode>): Adjust.
      	(store_conditional<ATOMIC:mode>): Adjust.
      	(atomic_compare_and_swap<ATOMIC:mode>): Adjust.
      	(atomic_exchange<ATOMIC:mode>): Adjust.
      	(atomic_<fetchop_name><ATOMIC:mode>): Adjust.
      	(atomic_nand<ATOMIC:mode>): Adjust.
      	(atomic_fetch_<fetchop_name><ATOMIC:mode>): Adjust.
      	(atomic_fetch_nand<ATOMIC:mode>): Adjust.
      	(atomic_<fetchop_name>_fetch<ATOMIC:mode>): Adjust.
      	(atomic_nand_fetch<ATOMIC:mode>): Adjust.
      	* config/rs6000/sysv4.h (TARGET_DEFAULT): Delete MASK_POWERPC.
      	* config/rs6000/sysv4le.h (TARGET_DEFAULT): Ditto.
      	* config/rs6000/vxworks.h (TARGET_DEFAULT): Ditto.
      	* doc/invoke.texi: Adjust documentation.
      
      From-SVN: r190430
      Segher Boessenkool committed
    • rs6000.h (RS6000_BTM_ALWAYS): New. · 4b705221
      2012-08-15  Segher Boessenkool <segher@kernel.crashing.org>
      
      gcc/
              * config/rs6000/rs6000.h (RS6000_BTM_ALWAYS): New.
      
      From-SVN: r190429
      Segher Boessenkool committed
    • aix52.h (ASM_CPU_SPEC): Fix typo. · 687e9f1f
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/
              * config/rs6000/aix52.h (ASM_CPU_SPEC): Fix typo.
              * config/rs6000/aix53.h (ASM_CPU_SPEC): Ditto.
              * config/rs6000/aix61.h (ASM_CPU_SPEC): Ditto.
              * config/rs6000/driver-rs6000.c (asm_names): Ditto.
      
      From-SVN: r190428
      Segher Boessenkool committed
    • re PR target/54142 (ppc64 build failure - Unrecognized opcode: `sldi' (and `srdi`)) · 1e9aaffb
      2012-08-15  Segher Boessenkool  <segher@kernel.crashing.org>
      
      gcc/
              PR target/54142
              * config/rs6000/driver-rs6000.c (asm_names): Use %(asm_default)
              instead of -mcom.
              * config/rs6000/rs6000.h (ASM_CPU_SPEC): Ditto.
      
      From-SVN: r190427
      Segher Boessenkool committed
    • Daily bump. · 0c0f815b
      From-SVN: r190426
      GCC Administrator committed
  2. 15 Aug, 2012 15 commits
    • MIPS Technologies, Inc. · ef2e5300
      2012-08-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Maxim Kuvyrkov  <maxim@codesourcery.com>
      	    Julian Brown  <julian@codesourcery.com>
      	    MIPS Technologies, Inc.
      
      	gcc/
      	* config/mips/mips.md (dspmac, dspmacsat, accext, accmod, dspalu)
      	(dspalusat): Add insn types.
      	* config/mips/mips-dsp.md (add<DSPV:mode>3)
      	(mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>)
      	(sub<DSPV:mode>3, mips_sub<DSP:dspfmt1>_s_<DSP:dspfmt2>, mips_addsc)
      	(mips_addwc, mips_modsub, mips_raddu_w_qb, mips_absq_s_<DSPQ:dspfmt2>)
      	(mips_precrq_qb_ph, mips_precrq_ph_w, mips_precrq_rs_ph_w)
      	(mips_precrqu_s_qb_ph, mips_preceq_w_phl, mips_preceq_w_phr)
      	(mips_precequ_ph_qbl, mips_precequ_ph_qbr, mips_precequ_ph_qbla)
      	(mips_precequ_ph_qbra, mips_preceu_ph_qbl, mips_preceu_ph_qbr)
      	(mips_preceu_ph_qbla, mips_preceu_ph_qbra, mips_shll_<DSPV:dspfmt2>)
      	(mips_shll_s_<DSPQ:dspfmt2>, mips_shll_s_<DSPQ:dspfmt2>, mips_shrl_qb)
      	(mips_shra_ph, mips_shra_r_<DSPQ:dspfmt2>, mips_bitrev, mips_insv)
      	(mips_repl_qb, mips_repl_ph)
      	(mips_cmp<DSPV:dspfmt1_1>_eq_<DSPV:dspfmt2>)
      	(mips_cmp<DSPV:dspfmt1_1>_lt_<DSPV:dspfmt2>)
      	(mips_cmp<DSPV:dspfmt1_1>_le_<DSPV:dspfmt2>, mips_cmpgu_eq_qb)
      	(mips_cmpgu_lt_qb, mips_cmpgu_le_qb, mips_pick_<DSPV:dspfmt2>)
      	(mips_packrl_ph, mips_wrdsp, mips_rddsp): Change type to dspalu.
      	(mips_dpau_h_qbl, mips_dpau_h_qbr, mips_dpsu_h_qbl, mips_dpsu_h_qbr)
      	(mips_dpaq_s_w_ph, mips_dpsq_s_w_ph, mips_mulsaq_s_w_ph)
      	(mips_maq_s_w_phl, mips_maq_s_w_phr, mips_maq_sa_w_phr): Set type to
      	dspmac.
      	(mips_dpaq_sa_l_w, mips_dpsq_sa_l_w, mips_maq_sa_w_phl): Set type to
      	dspmacsat.
      	(mips_extr_w, mips_extr_r_w, mips_extr_rs_w, mips_extp, mips_extpdp):
      	Set type to accext.
      	(mips_shilo, mips_mthlip): Set type to accmod.
      	* config/mips/mips-dspr2.md (mips_absq_s_qb, mips_addu_s_ph)
      	(mips_adduh_r_qb): Set type to dspalusat.
      	(mips_addu_ph, mips_adduh_qb, mips_append, mips_balign)
      	(mips_cmpgdu_eq_qb, mips_cmpgdu_lt_qb, mips_cmpgdu_le_qb)
      	(mips_precr_qb_ph, mips_precr_sra_ph_w, mips_precr_sra_r_ph_w)
      	(mips_prepend, mips_shra_qb, mips_shra_r_qb, mips_shrl_ph)
      	(mips_subu_ph, mips_subuh_qb, mips_subuh_r_qb, mips_addqh_ph)
      	(mips_addqh_r_ph, mips_addqh_w, mips_addqh_r_w, mips_subqh_ph)
      	(mips_subqh_r_ph, mips_subqh_w, mips_subqh_r_w): Set type to dspalu.
      	(mips_dpa_w_ph, mips_dps_w_ph, mips_mulsa_w_ph, mips_dpax_w_ph)
      	(mips_dpsx_w_ph, mips_dpaqx_s_w_ph, mips_dpsqx_s_w_ph): Set type to
      	dspmac.  Set accum_in attribute.
      	(mips_subu_s_ph): Set type to dspalusat. 
      	(mips_dpaqx_sa_w_ph, mips_dpsqx_sa_w_ph): Set type to dspmacsat.
      	Set accum_in attribute.
      	* config/mips/mips-protos.h (mips_dspalu_bypass_p): Add prototype.
      	* config/mips/mips.c (dspalu_bypass_table): New.
      	(mips_dspalu_bypass_p): New.
      	* config/mips/24k.md (r24k_dsp_alu, r24k_dsp_mac, r24k_dsp_mac_sat)
      	(r24k_dsp_acc_ext, r24k_dsp_acc_mod): New insn reservations.
      	(r24k_int_mult, r24k_int_mthilo, r24k_dsp_mac, r24k_dsp_mac_sat)
      	(r24k_dsp_acc_ext, r24k_dsp_acc_mod, r24k_dsp_alu): New bypasses.
      	* config/mips/74k.md (r74k_dsp_alu, r74k_dsp_alu_sat, r74k_dsp_mac)
      	(r74k_dsp_mac_sat, r74k_dsp_acc_ext, r74k_dsp_acc_mod): New insn
      	reservations.
      	(r74k_dsp_mac, r74k_dsp_mac_sat, r74k_int_mult, r74k_int_mul3)
      	(r74k_dsp_mac, r74k_dsp_mac_sat): New bypasses.
      
      Co-Authored-By: Julian Brown <julian@codesourcery.com>
      Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com>
      
      From-SVN: r190423
      Sandra Loosemore committed
    • spu.c: Include "cfgloop.h". · 66b038ce
      	* config/spu/spu.c: Include "cfgloop.h".
      	(spu_machine_dependent_reorg): Call loop_optimizer_init and
      	loop_optimizer_finalize.  Use bb_loop_depth instead of loop_depth.
      	Directly compare loop_father values where appropriate.
      	* config/spu/t-spu-elf (spu.o): Update dependencies.
      
      From-SVN: r190421
      Ulrich Weigand committed
    • re PR fortran/54243 ([OOP] ICE (segfault) in gfc_type_compatible for invalid BT_CLASS) · 0b2d443b
      2012-08-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/54243
      	PR fortran/54244
      	* resolve.c (check_typebound_baseobject): Check for class_ok attribute.
      	(resolve_procedure_interface,resolve_fl_derived0): Copy class_ok
      	attribute.
      
      2012-08-15  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/54243
      	PR fortran/54244
      	* gfortran.dg/typebound_call_24.f03: New.
      
      From-SVN: r190420
      Janus Weil committed
    • Add missing entry for merge from cxx-conversion branch. · 4b78ca9d
      From-SVN: r190419
      Eric Botcazou committed
    • cxx11.cc (struct datum): New. · c4269a63
      	* testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
      	New.
      	(global): New global.
      	(main): Add test for unique_ptr.
      	* python/libstdcxx/v6/printers.py
      	(UniquePointerPrinter.to_string): Extract the pointer and also
      	print its type.
      
      From-SVN: r190417
      Tom Tromey committed
    • Add $(TARGET_H) dependency to tree-cfg.o · 5dfe1ad4
      	* Makefile.in (tree-cfg.o): Also depend on $(TARGET_H).
      
      From-SVN: r190416
      H.J. Lu committed
    • re PR tree-optimization/54245 (incorrect optimisation) · 6b5eea61
      gcc:
      
      2012-08-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/54245
      	* gimple-ssa-strength-reduction.c (legal_cast_p_1): New function.
      	(legal_cast_p): Split out logic to legal_cast_p_1.
      	(analyze_increments): Avoid introducing multiplies in smaller types.
      
      
      gcc/testsuite:
      
      2012-08-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/54245
      	* gcc.dg/tree-ssa/pr54245.c: New test.
      
      From-SVN: r190412
      Bill Schmidt committed
    • re PR tree-optimization/54240 (Routine hoist_adjacent_loads does not work properly after r189366) · 0a5f2683
      gcc:
      
      2012-08-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/54240
      	* tree-ssa-phiopt.c (hoist_adjacent_loads): Correct test for
      	existence of conditional move with given mode.
      
      
      gcc/testsuite:
      
      2012-08-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/54240
      	* gcc.target/powerpc/pr54240.c: New test.
      	* gcc.target/mips/pr54240.c: Likewise.
      
      From-SVN: r190411
      Bill Schmidt committed
    • double-int.h (double_int::from_unsigned): Rename to ... · 6d67b4c7
      2012-08-15  Richard Guenther  <rguenther@suse.de>
      
      	* double-int.h (double_int::from_unsigned): Rename to ...
      	(double_int::from_uhwi): ... this.
      	(double_int::from_signed): Rename to ...
      	(double_int::from_shwi): ... this.
      	(double_int::to_signed): Rename to ...
      	(double_int::to_shwi): ... this.
      	(double_int::to_unsigned): Rename to ...
      	(double_int::to_uhwi): ... this.
      	(double_int::fits_unsigned): Rename to ...
      	(double_int::fits_uhwi): ... this.
      	(double_int::fits_signed): Rename to ...
      	(double_int::fits_shwi): ... this.
      	(double_int::fits): Rename to ...
      	(double_int::fits_hwi): ... this.
      	* double-int.c: Likewise.
      
      From-SVN: r190410
      Richard Guenther committed
    • timevar.def (TV_VARPOOL, [...]): Remove. · 63ef63bf
      	* timevar.def (TV_VARPOOL, TV_WHOPR_WPA_LTRANS_EXEC, TV_LIFE,
      	TV_LIFE_UPDATE, TV_DF_UREC, TV_INLINE_HEURISTICS,
      	TV_TREE_LINEAR_TRANSFORM, TV_TREE_LOOP_INIT, TV_TREE_LOOP_FINI,
      	TV_VPT, TV_LOCAL_ALLOC, TV_GLOBAL_ALLOC, TV_SEQABSTR): Remove.
      	(TV_IPA_INLINING, TV_FLATTEN_INLINING, TV_EARLY_INLINING,
      	TV_INLINE_PARAMETERS, TV_LOOP_INIT, TV_LOOP_FINI): New.
      	* timevar.c (timevar_print): Make printing width of timevar names
      	more flexible, but enforce maximum length.
      	* ipa-inline.c (pass_early_inline): Use TV_EARLY_INLINING.
      	(pass_ipa_inline): Use TV_IPA_INLINING.
      	* ipa-inline-analysis.c (pass_inline_parameters): Use
      	TV_INLINE_HEURISTICS.
      	* tree-ssa-loop.c (pass_tree_loop_init): No timevar for wrapper pass.
      	(pass_tree_loop_done): Likewise.
      	* final.c (pass_shorten_branches): Use TV_SHORTEN_BRANCH.
      	* loop-init.c (loop_optimizer_init): Push/pop TV_LOOP_INIT.
      	(loop_optimizer_finalize): Push/pop TV_LOOP_FINI.
      
      From-SVN: r190409
      Steven Bosscher committed
    • Canonicalize operand to vaba and vabal. · 5b28d821
      2012-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	* config/arm/neon.md (neon_vaba<mode> VDQIW): Canonicalize
      	operands.
      	(neon_vabal<mode> VDQIW): Likewise.
      
      From-SVN: r190408
      Ramana Radhakrishnan committed
    • re PR target/54212 (ARM: invalid instruction (vdupeq.32) generated) · c3b1709a
      Fix PR target/54212
      
      2012-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	PR target/54212
      	* config/arm/neon.md (vec_set<mode>_internal VD,VQ): Do not
      	mark as predicable. Adjust asm template.
      	(vec_setv2di_internal): Likewise.
      	(vec_extract<mode> VD, VQ): Likewise.
      	(vec_extractv2di): Likewise.
      	(neon_vget_lane<mode>_sext_internal VD, VQ): Likewise.
      	(neon_vset_lane<mode>_sext_internal VD, VQ): Likewise.
      	(neon_vdup_n<mode> VX, V32): Likewise.
      	(neon_vdup_nv2di): Likewise.
      
      From-SVN: r190407
      Ramana Radhakrishnan committed
    • mips.md (define_attr accum_in): New instruction attribute. · 73590b4f
      	* config/mips/mips.md (define_attr accum_in): New instruction attribute.
      	Set it for imadd and fmadd patterns.
      	* config/mips/mips.c (mips_linked_madd_p): Use accum_in to extract
      	accumulator register.
      
      From-SVN: r190406
      Maxim Kuvyrkov committed
    • compiler: Adjust for GCC always being built with C++. · f5cc3cbb
      From-SVN: r190405
      Ian Lance Taylor committed
    • Add an xfail manifest for x86_64-unknown-linux-gnu to trunk. · 18da4303
      This patch adds an xfail manifest for trunk for x86_64 builds. I find
      this useful to determine whether my patch has introduced new failures.
      The failures in these manifest are always present in trunk and
      deciding what to ignore is not very straightforward.
      
      I will keep maintaining this manifest out of clean builds. They are
      not hard to maintain. Manifest files can be generated by going to the
      top of the build directory and typing:
      
      $ cd <top-of-bld-dir>
      $ <path-to-src>/contrib/testsuite-management --produce_manifest
      
      This will generate a .xfail file with the triple name of the target
      you just built.  Once this file exist you can run the validator again
      on the build directory with no arguments.  It should produce the
      output:
      
      $ cd <top-of-bld-dir>
      $ <path-to-src>/contrib/testsuite-management/validate_failures.py
      Source directory: <path-to-src>
      Build target:     x86_64-unknown-linux-gnu
      Manifest:         <path-to-src>/contrib/testsuite-management/x86_64-unknown-linux-gnu.xfail
      Getting actual results from build
              ./x86_64-unknown-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum
              ./x86_64-unknown-linux-gnu/libffi/testsuite/libffi.sum
              ./x86_64-unknown-linux-gnu/libgomp/testsuite/libgomp.sum
              ./x86_64-unknown-linux-gnu/libgo/libgo.sum
              ./x86_64-unknown-linux-gnu/boehm-gc/testsuite/boehm-gc.sum
              ./x86_64-unknown-linux-gnu/libatomic/testsuite/libatomic.sum
              ./x86_64-unknown-linux-gnu/libmudflap/testsuite/libmudflap.sum
              ./x86_64-unknown-linux-gnu/libitm/testsuite/libitm.sum
              ./x86_64-unknown-linux-gnu/libjava/testsuite/libjava.sum
              ./gcc/testsuite/g++/g++.sum
              ./gcc/testsuite/gnat/gnat.sum
              ./gcc/testsuite/ada/acats/acats.sum
              ./gcc/testsuite/gcc/gcc.sum
              ./gcc/testsuite/gfortran/gfortran.sum
              ./gcc/testsuite/obj-c++/obj-c++.sum
              ./gcc/testsuite/go/go.sum
              ./gcc/testsuite/objc/objc.sum
      
      
      SUCCESS: No unexpected failures.
      
      
      If the output shows new failures, you investigate them. If they are
      not yours, you can add them to the xfail manifest (after reporting
      them) and then commit the modified .xfail file.
      
      Long term, I would like to have this script pull manifest files from
      postings made to gcc-testresults. This way, we won't have to maintain
      these .xfail files manually. In branches this is not a big problem,
      but in trunk it may be a tad annoying.
      
      From-SVN: r190404
      Diego Novillo committed