1. 08 Sep, 2011 10 commits
    • Improve AGU stalls avoidance optimization. · d275ab8b
      2011-09-08  Enkovich Ilya  <ilya.enkovich@intel.com>
      
      	* config/i386/i386-protos.h (ix86_lea_outperforms): New.
      	(ix86_avoid_lea_for_add): Likewise.
      	(ix86_avoid_lea_for_addr): Likewise.
      	(ix86_split_lea_for_addr): Likewise.
      
      	* config/i386/i386.c (LEA_MAX_STALL): New.
      	(increase_distance): Likewise.
      	(insn_defines_reg): Likewise.
      	(insn_uses_reg_mem): Likewise.
      	(distance_non_agu_define_in_bb): Likewise.
      	(distance_agu_use_in_bb): Likewise.
      	(ix86_lea_outperforms): Likewise.
      	(ix86_ok_to_clobber_flags): Likewise.
      	(ix86_avoid_lea_for_add): Likewise.
      	(ix86_avoid_lea_for_addr): Likewise.
      	(ix86_split_lea_for_addr): Likewise.
      	(distance_non_agu_define): Search in pred BBs added.
      	(distance_agu_use): Search in succ BBs added.
      	(IX86_LEA_PRIORITY): Value changed from 2 to 0.
      	(LEA_SEARCH_THRESHOLD): Now depends on LEA_MAX_STALL.
      	(ix86_lea_for_add_ok): Use ix86_lea_outperforms to make decision.
      
      	* config/i386/i386.md: Split added to transform non destructive
      	add into move and add.
      	(lea_1): transformed into insn_and_split to avoid AGU stalls.
      	(lea<mode>_2): Likewise.
      
      From-SVN: r178689
      Enkovich Ilya committed
    • re PR tree-optimization/50287 (FAIL:… · 86814190
      re PR tree-optimization/50287 (FAIL: gcc.c-torture/execute/builtins/vsnprintf-chk.c compilation, -O2 -flto)
      
      2011-09-08  Martin Jambor  <mjambor@suse.cz>
      
      	PR tree-optimization/50287
      	* ipa-split.c (split_function): Do not create SSA names for
      	non-gimple-registers.
      
      	* testsuite/gcc.dg/torture/pr50287.c: New test.
      
      From-SVN: r178688
      Martin Jambor committed
    • re PR tree-optimization/19831 (Missing DSE/malloc/free optimization) · 996e1de5
      2011-09-08  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/19831
      	* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Also
      	skip builtins with vdefs that do not really store something.
      	(propagate_necessity): For calls to free that we can associate
      	with an allocation function do not mark the freed pointer
      	definition necessary.
      	(eliminate_unnecessary_stmts): Remove a call to free if
      	the associated call to an allocation function is not necessary.
      
      	* gcc.dg/tree-ssa/pr19831-1.c: New testcase.
      	* gcc.dg/tree-ssa/pr19831-2.c: Likewise.
      	* gcc.dg/tree-ssa/pr19831-3.c: Likewise.
      	* gcc.dg/errno-1.c: Adjust.
      
      From-SVN: r178687
      Richard Guenther committed
    • re PR tree-optimization/19831 (Missing DSE/malloc/free optimization) · c22c0db2
      2011-09-08  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/19831
      	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark
      	allocation functions as necessary.
      
      	* gcc.dg/tree-ssa/ssa-dce-8.c: New testcase.
      
      From-SVN: r178683
      Richard Guenther committed
    • part of restore of powerpc-darwin Ada bootstrap · 88b76013
      	* traceback.c (Darwin) USE_GCC_UNWINDER for Darwin
      	versions >= 8.
      
      From-SVN: r178682
      Iain Sandoe committed
    • make darwin port a little more cross & cross native build friendly. · 558c362a
      	*config/darwin-driver.c (darwin_find_version_from_kernel): New routine 
      	cut from ... (darwin_default_min_version): Amended to provide defaults
      	for the cross directory case.
      	(darwin_driver_init): call darwin_default_min_version unconditionally.
      	* config/darwin.h (DEF_MIN_OSX_VERSION): New.
      	* config/darwin9.h: Likewise.
      	* config/darwin10.h: Likewise.
      	* config/rs6000/darwin7.h: Likewise.
      
      From-SVN: r178679
      Iain Sandoe committed
    • re PR fortran/44646 ([F08] Implement DO CONCURRENT) · 8c6a85e3
      gcc/fortran/
      2011-09-08  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/44646
              * decl.c (gfc_match_entry, gfc_match_end): Handle
              * COMP_DO_CONCURRENT.
              * dump-parse-tree.c (show_code_node): Handle EXEC_DO_CONCURRENT.
              * gfortran.h (gfc_exec_op): Add EXEC_DO_CONCURRENT.
              * match.c (gfc_match_critical, match_exit_cycle,
              * gfc_match_stopcode,
              lock_unlock_statement, sync_statement, gfc_match_allocate,
              gfc_match_deallocate, gfc_match_return): Add DO CONCURRENT diagnostic.
              (gfc_match_do): Match DO CONCURRENT.
              (match_derived_type_spec, match_type_spec, gfc_free_forall_iterator,
              match_forall_iterator, match_forall_header, match_simple_forall,
              gfc_match_forall): Move up in the file.
              * parse.c (check_do_closure, parse_do_block): Handle do
              * concurrent.
              * parse.h (gfc_compile_state): Add COMP_DO_CONCURRENT.
              * resolve.c (do_concurrent_flag): New global variable.
              (resolve_function, pure_subroutine, resolve_branch,
              gfc_resolve_blocks, resolve_code, resolve_types): Add do concurrent
              diagnostic.
              * st.c (gfc_free_statement): Handle EXEC_DO_CONCURRENT.
              * trans-stmt.c (gfc_trans_do_concurrent): New function.
              (gfc_trans_forall_1): Handle do concurrent.
              * trans-stmt.h (gfc_trans_do_concurrent): New function
              * prototype.
              * trans.c (trans_code): Call it.
              * frontend-passes.c (gfc_code_walker): Handle
              * EXEC_DO_CONCURRENT.
      
      gcc/testsuite/
      2011-09-08  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/44646
              * gfortran.dg/do_concurrent_1.f90: New.
              * gfortran.dg/do_concurrent_2.f90: New.
      
      From-SVN: r178677
      Tobias Burnus committed
    • re PR target/50310 (ICE: in gen_vcondv2div2df, at config/i386/sse.md:1435 with… · 1542d97a
      re PR target/50310 (ICE: in gen_vcondv2div2df, at config/i386/sse.md:1435 with -O -ftree-vectorize and __builtin_isunordered())
      
      	PR target/50310
      	* config/i386/i386.c (ix86_prepare_sse_fp_compare_args): Return
      	code early if TARGET_AVX.
      	(ix86_expand_fp_vcond): Handle LTGT and UNEQ.
      
      	* gcc.c-torture/execute/ieee/pr50310.c: New test.
      	* gcc.dg/pr50310-2.c: New test.
      
      From-SVN: r178673
      Jakub Jelinek committed
    • at.cc: Revert to... · 02dce1e9
      2011-09-07  François Dumont  <francois.cppdevs@free.fr>
      
      	* testsuite/23_containers/array/at.cc: Revert to...
      	* testsuite/23_containers/array/at_neg.cc: ...this.
      
      From-SVN: r178670
      François Dumont committed
    • Daily bump. · 92b4c822
      From-SVN: r178669
      GCC Administrator committed
  2. 07 Sep, 2011 25 commits
  3. 06 Sep, 2011 5 commits