1. 29 Apr, 2011 6 commits
  2. 28 Apr, 2011 28 commits
  3. 27 Apr, 2011 6 commits
    • re PR fortran/48788 (ICE: SIGSEGV in resolve_global_procedure (resolve.c:2190)… · fa9f7c70
      re PR fortran/48788 (ICE: SIGSEGV in resolve_global_procedure (resolve.c:2190) on invalid (?) fortran code)
      
      2011-04-27  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48788
              * resolve.c (resolve_global_procedure): Error recovery -
              avoid segfault for (non)character-returning functions.
      
      2011-04-27  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48788
              * gfortran.dg/whole_file_34.f90: New.
      
      From-SVN: r173048
      Tobias Burnus committed
    • move.h (move_if_noexcept): Add. · 1f428429
      2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/bits/move.h (move_if_noexcept): Add.
      	* testsuite/20_util/move_if_noexcept/requirements/
      	explicit_instantiation.cc: New.
      	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
      
      From-SVN: r173044
      Paolo Carlini committed
    • i386.md (ssemodesuffix): Merge with ssevecsize, ssemodefsuffix,… · cbb734aa
      i386.md (ssemodesuffix): Merge with ssevecsize, ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
      
      	* config/i386/i386.md (ssemodesuffix):  Merge with ssevecsize,
      	ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
      	Move from sse.md.
      	(ssemodefsuffix): Remove.
      	(ssevecmodesuffix): New mode attribute.
      	(fix_trunc<mode>di_sse, fix_trunc<mode>si_sse,
      	*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit,
      	*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit,
      	*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit,
      	*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit, setcc_<mode>_sse,
      	*sqrt<mode>2_sse, sse4_1_round<mode>2, <smaxmin:code><mode>3,
      	*ieee_smin<mode>3, *ieee_smax<mode>3): Adjust assembler templates for
      	ssemodesuffix mode attribute.
      	(float splitters): Use ssevecmodesuffix mode attribute.
      	* config/i386/sse.md (ssescalarmode): Merge with avxscalarmode.
      	(sseinsmode): Rename from avxvecmode.
      	(avxsizesuffix): Rename from avxmodesuffix.
      	(sseintvecmode): Rename from avxpermvecmode.
      	(ssedoublevecmode): Rename from ssedoublesizemode.
      	(ssehalfvecmode): Rename from avxhalfvecmode.
      	(ssescalarmode): Rename from avxscalarmode.
      	(<sse>_comi, <sse>_ucomi, sse4a_movnt<mode>): Adjust assembler
      	templates for ssemodesuffix mode attribute.
      	(*andnot<mode>3, *<any_logic:code><mode>3): Use ssevecmodesuffix
      	mode attribute.
      
      	Adjust RTX patterns globally for renamed mode attributes.
      
      From-SVN: r173043
      Uros Bizjak committed
    • inline-9.c: New testcase. · 991278ab
      	* testsuite/gcc.dg/tree-ssa/inline-9.c: New testcase.
      	* ipa-inline.h (struct inline_edge_summary): Add predicate pointer.
      	* ipa-inline-analysis.c: Include alloc-pool.h.
      	(edge_predicate_pool): New.
      	(trye_predicate_p): New function
      	(false_predicate_p): New function.
      	(add_clause): Sanity check that false clauses are "optimized";
      	never add clauses to predicate that is already known to be false.
      	(and_predicate): Use flase_predicate_p.
      	(evaulate_predicate): Rename to ...
      	(evaluate_predicate): ... this one; update all callers; assert
      	that false is not listed among possible truths.
      	(dump_predicate): Use true_predicate_p.
      	(account_size_time): Use false_predicate_p.
      	(evaulate_conditions_for_edge): Rename to ...
      	(evaluate_conditions_for_edge) ... this one.
      	(edge_set_predicate): New function.
      	(inline_edge_duplication_hook): Duplicate edge predicates.
      	(inline_edge_removal_hook): Free edge predicates.
      	(dump_inline_edge_summary): Add INFO parameter; dump
      	edge predicates.
      	(dump_inline_summary): Update.
      	(estimate_function_body_sizes): Set edge predicates.
      	(estimate_calls_size_and_time): Handle predicates.
      	(estimate_callee_size_and_time): Update.
      	(remap_predicate): Add toplev_predicate; update comment.
      	(remap_edge_predicates): New function.
      	(inline_merge_summary): Compute toplev predicate; update.
      	(read_predicate): New function.
      	(read_inline_edge_summary): Use it.
      	(inline_read_section): Likewise.
      	(write_predicate): New function.
      	(write_inline_edge_summary): Use it.
      	(inline_write_summary): Likewise.
      	(inline_free_summary): Free alloc pool and edge summary vec.
      
      From-SVN: r173042
      Jan Hubicka committed
    • tree-ssa-structalias.c (changed_count): Remove. · 648b5f85
      2011-04-27  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-structalias.c (changed_count): Remove.
      	(changed): Use a bitmap.
      	(unify_nodes): Adjust.
      	(do_sd_constraint): Likewise.
      	(do_ds_constraint): Likewise.
      	(do_complex_constraint): Likewise.
      	(solve_graph): Likewise.
      
      From-SVN: r173040
      Richard Guenther committed