1. 31 Dec, 2006 7 commits
    • re PR tree-optimization/30137 (Missed folding of pointer comparison) · e015f578
      2006-12-31  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/30137
      	* fold-const.c (fold_comparison): Fold comparison of addresses
      	of components.
      
      	* testsuite/gcc.dg/pr30137-1.c: New testcase.
      	* testsuite/gcc.dg/pr30137-2.c: Likewise.
      
      From-SVN: r120301
      Richard Guenther committed
    • re PR middle-end/30322 (((-i-1) + i) +1) is turned into ~i + (i+1) and never… · 870aa1eb
      re PR middle-end/30322 (((-i-1) + i) +1) is turned into ~i + (i+1) and never into 0 on the tree level)
      
      
      	PR middle-end/30322
      	* fold-const.c (fold_binary): Fold X + ~X and ~X + X into -1 when
      	we don't care about trapping overflow.  Only convert -A - 1 into ~A
      	when we don't care about trapping overflow.
      
      	* gcc.dg/fold-plusnot-1.c: New test case.
      
      From-SVN: r120300
      Roger Sayle committed
    • re PR c++/29731 (ICE with statement expression as template parameter) · 7c2da05e
      2006-12-31  Simon Martin  <simartin@users.sourceforge.net>
      
      	PR c++/29731
      	* parser.c (cp_parser_primary_expression): Return error_mark_node when
      	a statement-expression is found outside of a function body.
      
      From-SVN: r120299
      Simon Martin committed
    • re PR middle-end/30338 (infinite loop in maybe_canonicalize_comparison) · 72ff1a96
      2006-12-31  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/30338
      	* fold-const.c (fold_binary): Fix type-mismatch in folding
      	of -1 - A to ~A.
      
      	* gcc.c-torture/compile/pr30338.c: New testcase.
      
      From-SVN: r120297
      Richard Guenther committed
    • re PR fortran/27900 ([4.1 only] ICE using intrinsics as arguments) · 20a037d5
      2006-12-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/27900
      	* resolve.c (resolve_actual_arglist): If all else fails and a
      	procedure actual argument has no type, see if a specific
      	intrinsic matches.
      
      	PR fortran/24325
      	* resolve.c (resolve_function): If the function reference is
      	FL_VARIABLE this is an error.
      
      2006-12-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/27900
      	* gfortran.dg/intrinsic_actual_4.f90: New test.
      
      	PR fortran/24325
      	* gfortran.dg/func_decl_3.f90: New test.
      
      From-SVN: r120296
      Paul Thomas committed
    • re PR fortran/23060 (%VAL, %REF and %DESCR constructs not implemented) · 7fcafa71
      2006-12-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/23060
      	* intrinsic.c (compare_actual_formal ): Distinguish argument
      	list functions from keywords.
      	* intrinsic.c (sort_actual): If formal is NULL, the presence of
      	an argument list function actual is an error.
      	* trans-expr.c (conv_arglist_function) : New function to
      	implement argument list functions %VAL, %REF and %LOC.
      	(gfc_conv_function_call): Call it.
      	* resolve.c (resolve_actual_arglist): Add arg ptype and check
      	argument list functions.
      	(resolve_function, resolve_call): Set value of ptype before
      	calls to resolve_actual_arglist.
      	* primary.c (match_arg_list_function): New function.
      	(gfc_match_actual_arglist): Call it before trying for a
      	keyword argument.
      
      2006-12-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/23060
      	* gfortran.dg/c_by_val.c: Called by c_by_val_1.f.
      	* gfortran.dg/c_by_val_1.f: New test.
      	* gfortran.dg/c_by_val_2.f: New test.
      	* gfortran.dg/c_by_val_3.f: New test.
      
      From-SVN: r120295
      Paul Thomas committed
    • Daily bump. · e7e9c63d
      From-SVN: r120293
      GCC Administrator committed
  2. 30 Dec, 2006 8 commits
    • * tree-inline.c: Fix a comment typo. · 5305a4cb
      From-SVN: r120288
      Kazu Hirata committed
    • re PR fortran/30321 (program crash for SUM applied to zero-size array) · 80ee04b9
      2006-12-30  Thomas Koenig  <Thomas.Koenig@online.de>
      
      	PR libfortran/30321
      	* m4/ifunction.m4 (name`'rtype_qual`_'atype_code):
      	Check for extents < 0 for zero-sized arrays.  If
      	no retarray has been specified and the size is zero,
      	return early.
      	(`m'name`'rtype_qual`_'atype_code): Likewise.
      	* generated/all_l16.c: Regenerated.
      	* generated/all_l4.c: Regenerated.
      	* generated/all_l8.c: Regenerated.
      	* generated/any_l16.c: Regenerated.
      	* generated/any_l4.c: Regenerated.
      	* generated/any_l8.c: Regenerated.
      	* generated/count_16_l16.c: Regenerated.
      	* generated/count_16_l4.c: Regenerated.
      	* generated/count_16_l8.c: Regenerated.
      	* generated/count_4_l16.c: Regenerated.
      	* generated/count_4_l4.c: Regenerated.
      	* generated/count_4_l8.c: Regenerated.
      	* generated/count_8_l16.c: Regenerated.
      	* generated/count_8_l4.c: Regenerated.
      	* generated/count_8_l8.c: Regenerated.
      	* generated/cshift1_16.c: Regenerated.
      	* generated/cshift1_4.c: Regenerated.
      	* generated/cshift1_8.c: Regenerated.
      	* generated/maxloc1_16_i16.c: Regenerated.
      	* generated/maxloc1_16_i4.c: Regenerated.
      	* generated/maxloc1_16_i8.c: Regenerated.
      	* generated/maxloc1_16_r10.c: Regenerated.
      	* generated/maxloc1_16_r16.c: Regenerated.
      	* generated/maxloc1_16_r4.c: Regenerated.
      	* generated/maxloc1_16_r8.c: Regenerated.
      	* generated/maxloc1_4_i16.c: Regenerated.
      	* generated/maxloc1_4_i4.c: Regenerated.
      	* generated/maxloc1_4_i8.c: Regenerated.
      	* generated/maxloc1_4_r10.c: Regenerated.
      	* generated/maxloc1_4_r16.c: Regenerated.
      	* generated/maxloc1_4_r4.c: Regenerated.
      	* generated/maxloc1_4_r8.c: Regenerated.
      	* generated/maxloc1_8_i16.c: Regenerated.
      	* generated/maxloc1_8_i4.c: Regenerated.
      	* generated/maxloc1_8_i8.c: Regenerated.
      	* generated/maxloc1_8_r10.c: Regenerated.
      	* generated/maxloc1_8_r16.c: Regenerated.
      	* generated/maxloc1_8_r4.c: Regenerated.
      	* generated/maxloc1_8_r8.c: Regenerated.
      	* generated/maxval_i16.c: Regenerated.
      	* generated/maxval_i4.c: Regenerated.
      	* generated/maxval_i8.c: Regenerated.
      	* generated/maxval_r10.c: Regenerated.
      	* generated/maxval_r16.c: Regenerated.
      	* generated/maxval_r4.c: Regenerated.
      	* generated/maxval_r8.c: Regenerated.
      	* generated/minloc1_16_i16.c: Regenerated.
      	* generated/minloc1_16_i4.c: Regenerated.
      	* generated/minloc1_16_i8.c: Regenerated.
      	* generated/minloc1_16_r10.c: Regenerated.
      	* generated/minloc1_16_r16.c: Regenerated.
      	* generated/minloc1_16_r4.c: Regenerated.
      	* generated/minloc1_16_r8.c: Regenerated.
      	* generated/minloc1_4_i16.c: Regenerated.
      	* generated/minloc1_4_i4.c: Regenerated.
      	* generated/minloc1_4_i8.c: Regenerated.
      	* generated/minloc1_4_r10.c: Regenerated.
      	* generated/minloc1_4_r16.c: Regenerated.
      	* generated/minloc1_4_r4.c: Regenerated.
      	* generated/minloc1_4_r8.c: Regenerated.
      	* generated/minloc1_8_i16.c: Regenerated.
      	* generated/minloc1_8_i4.c: Regenerated.
      	* generated/minloc1_8_i8.c: Regenerated.
      	* generated/minloc1_8_r10.c: Regenerated.
      	* generated/minloc1_8_r16.c: Regenerated.
      	* generated/minloc1_8_r4.c: Regenerated.
      	* generated/minloc1_8_r8.c: Regenerated.
      	* generated/minval_i16.c: Regenerated.
      	* generated/minval_i4.c: Regenerated.
      	* generated/minval_i8.c: Regenerated.
      	* generated/minval_r10.c: Regenerated.
      	* generated/minval_r16.c: Regenerated.
      	* generated/minval_r4.c: Regenerated.
      	* generated/minval_r8.c: Regenerated.
      	* generated/product_c10.c: Regenerated.
      	* generated/product_c16.c: Regenerated.
      	* generated/product_c4.c: Regenerated.
      	* generated/product_c8.c: Regenerated.
      	* generated/product_i16.c: Regenerated.
      	* generated/product_i4.c: Regenerated.
      	* generated/product_i8.c: Regenerated.
      	* generated/product_r10.c: Regenerated.
      	* generated/product_r16.c: Regenerated.
      	* generated/product_r4.c: Regenerated.
      	* generated/product_r8.c: Regenerated.
      	* generated/sum_c10.c: Regenerated.
      	* generated/sum_c16.c: Regenerated.
      	* generated/sum_c4.c: Regenerated.
      	* generated/sum_c8.c: Regenerated.
      	* generated/sum_i16.c: Regenerated.
      	* generated/sum_i4.c: Regenerated.
      	* generated/sum_i8.c: Regenerated.
      	* generated/sum_r10.c: Regenerated.
      	* generated/sum_r16.c: Regenerated.
      	* generated/sum_r4.c: Regenerated.
      	* generated/sum_r8.c: Regenerated.
      
      2006-12-30  Thomas Koenig  <Thomas.Koenig@online.de>
      
      	PR libfortran/30321
      	* gfortran.dg/sum_zero_array_1.f90:  New test.
      
      From-SVN: r120287
      Thomas Koenig committed
    • ipa-pure-const.c (check_operand): SSA_NAME is safe. · 54e7d067
      	* ipa-pure-const.c (check_operand): SSA_NAME is safe.
      	* ipa-type-escape.c (scan_for_refs): Look into SSA_NAMEs.
      
      From-SVN: r120286
      Jan Hubicka committed
    • tree.h (DECL_CALL_CLOBBERED): Remove. · b730fa61
      	* tree.h (DECL_CALL_CLOBBERED): Remove.
      	(tree_decl_common): Remove call_clobbered flag.
      	* tree-flow.h (struct var_ann_d): Add call_clobbered flag.
      	* tree-ssa-alias.c (mark_non_addressable, reset_cc_flags): Update.
      	* tree-flow-inline.h (is_call_clobbered, mark_call_clobbered,
      	clear_call_clobbered): Update.
      	* tree-ssa.c (verify_call_clobbering): Update.
      
      From-SVN: r120285
      Jan Hubicka committed
    • tree-ssa-alias.c (create_structure_vars): When in SSA, update operand caches. · d586d6d1
      	* tree-ssa-alias.c (create_structure_vars): When in SSA, update operand
      	caches.
      	* tree-ssa-operands.c (build_ssa_operands): Recompute addresses_taken
      	bitmap.
      
      From-SVN: r120284
      Jan Hubicka committed
    • emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential amount of… · 4b73962b
      emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential amount of copies of INSN_NOTEs list.
      
      	* emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential
      	amount of copies of INSN_NOTEs list.
      
      Co-Authored-By: Vladimir Yanovsky <volodyan@gmail.com>
      
      From-SVN: r120283
      Jan Hubicka committed
    • cgraph.c (cgraph_exapnd_queue): Rename to... · f45e0ad1
      
      	* cgraph.c (cgraph_exapnd_queue): Rename to...
      	(cgraph_new_nodes): ... this one.
      	(cgraph_state): New global variable.
      	(cgraph_add_new_function): Work in more cases.
      	* cgraph.h (cgraph_expand_queue): Rename to ...
      	(cgraph_new_nodes): ... this one.
      	(cgraph_state): New enum and static variable.
      	(cgraph_add_new_function): Update prototype.
      	(cgraph_process_new_functions): New.
      	* omp-low.c (expand_omp_parallel): Update.
      	* cgraphunit.c (initialize_inline_failed): Declare early.
      	(cgraph_process_new_functions): New function.
      	(cgraph_assemble_pending_functions): Use it.
      	(cgraph_expand_all_functions): Use it.
      	(cgraph_optimize): Use it; set cgraph_state.
      	* passes.c (execute_one_pass, execute_ipa_pass_list): Process new
      	functions
      
      From-SVN: r120282
      Jan Hubicka committed
    • Daily bump. · e288c21a
      From-SVN: r120279
      GCC Administrator committed
  3. 29 Dec, 2006 12 commits
  4. 28 Dec, 2006 13 commits