1. 30 Sep, 2004 3 commits
  2. 29 Sep, 2004 27 commits
    • tree.h (INDIRECT_REF_P): New macro. · 1b096a0a
      2004-09-29  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree.h (INDIRECT_REF_P): New macro.
      	* alias.c (get_alias_set): Use it
      	(nonoverlapping_memrefs_p): Ditto.
      	* emit-rtl.c (mem_expr_equal_p): Ditto.
      	(set_mem_attributes_minus_bitpos): Ditto.
      	(is_gimple_addressable): Ditto.
      	(get_base_address): Ditto.
      	* tree-ssa-alias.c (find_ptr_derefernece): Ditto.
      	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Ditto.
      	* tree-ssa-dom.c (record_equivalences_from_stmt): Ditto.
      	* tree-ssa-loop-im.c (is_call_clobbered_ref): Ditto.
      	* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Ditto.
      	(add_address_candidates): Ditto.
      	(rewrite_address_base): Ditto.
      
      From-SVN: r88309
      Daniel Berlin committed
    • tree-flow.h (struct bb_ann_d): Remove num_preds member. · 2a7cd686
      	* tree-flow.h (struct bb_ann_d): Remove num_preds member.
      	* tree-into-ssa.c (rewrite_into_ssa): Don't set it.
      	(rewrite_ssa_into_ssa): Likewise.
      	* tree-phinodes.c (create_phi_node): Access the number of
      	predecessor edges using EDGE_COUNT() and not num_preds.
      
      Co-Authored-By: Andrew Pinski <pinskia@physics.uc.edu>
      Co-Authored-By: Steven Bosscher <stevenb@suse.de>
      
      From-SVN: r88308
      Ben Elliston committed
    • std_sstream.h (basic_stringbuf(ios_base::openmode)): Don't use… · 983de0da
      std_sstream.h (basic_stringbuf(ios_base::openmode)): Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
      
      2004-09-29  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
      	Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
      	(str()): Slightly tweak, protect from pptr() == 0.
      	(_M_update_egptr()): Likewise.
      	* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
      	for an empty buffer use __beg instead of _M_string.capacity().
      	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
      	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
      
      	* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
      	* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
      	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
      	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
      
      2004-09-29  Paolo Carlini  <pcarlini@suse.de>
      	    Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/testsuite_io.h (class constraint_buf): New, extended
      	and templatized version of constraint_filebuf; add typedefs for
      	streambuf/stringbuf/filebuf and wchar_t counterparts.
      
      Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
      
      From-SVN: r88307
      Paolo Carlini committed
    • re PR c/7425 (deprecated attribute doesn't merge with multiple declarations) · 302a2cc5
      	PR c/7425
      	* c-decl.c (merge_decls): Merge TREE_DEPRECATED.
      
      cp:
      	* decl.c (duplicate_decls): Merge TREE_DEPRECATED.
      
      testsuite:
      	* gcc.dg/deprecated-3.c, g++.dg/warn/deprecated-2.C: New tests.
      
      From-SVN: r88303
      Joseph Myers committed
    • revert accidental checkin · 08272b85
      From-SVN: r88302
      Jason Merrill committed
    • re PR libgcj/17715 (.properties files missing from libgcj-4.0.0.jar) · 26aed923
      	PR libgcj/17715:
      	* Makefile.in: Rebuilt.
      	* Makefile.am (libgcj-@gcc_version@.jar): Include properties
      	files.
      	(all_property_files): New macro.
      
      From-SVN: r88300
      Tom Tromey committed
    • fold-const.c (tree_swap_operands_p): Remove duplicated code. · 3e6688a7
      2004-09-29  Eric Christopher  <echristo@redhat.com>
      
      	* fold-const.c (tree_swap_operands_p): Remove duplicated code.
      
      From-SVN: r88299
      Eric Christopher committed
    • cris.md (moverside, movemside): With MEM, make sure the address is (plus reg mem). · 8820e4be
      	* config/cris/cris.md (moverside, movemside): With MEM, make sure
      	the address is (plus reg mem).
      
      From-SVN: r88298
      Hans-Peter Nilsson committed
    • Makefile.in: Rebuilt. · c8dc36d6
      	* Makefile.in: Rebuilt.
      	* Makefile.am (ordinary_java_source_files): Re-sorted.
      	(libgcj.la): Moved to old location near lib-gnu-awt-xlib.la.
      
      From-SVN: r88294
      Tom Tromey committed
    • re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed) · 5cefa0d9
              PR tree-optimization/17697
              * decl.c (duplicate_decls): Copy TREE_NOTHROW from newdecl to olddecl.
      
      From-SVN: r88293
      Jason Merrill committed
    • * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Define. · d962e7ad
      From-SVN: r88290
      David Edelsohn committed
    • re PR java/17007 (Inconsistent builtin attributes set by Java front end) · eab3f38f
      2004-09-29  Andrew Haley  <aph@redhat.com>
      
              PR java/17007
              * parse.y (patch_binop): Don't mess with the TREE_SIDE_EFFECTS of the
              result of TRUNC_MOD_EXPR.
              (patch_unaryop): Likewise for CONVERT_EXPR, which may throw.
              * decl.c (java_init_decl_processing): Mark
              soft_lookupinterfacemethod_node and soft_instanceof_node pure.
      
      From-SVN: r88289
      Andrew Haley committed
    • tree.c (make_node_stat): Fix uninitialized warning. · c4b3f0eb
      	* tree.c (make_node_stat): Fix uninitialized warning.  Replace
      	cascaded if ... else if with a switch.
      
      From-SVN: r88288
      Nathan Sidwell committed
    • Regenerate. · dca3f2e9
      From-SVN: r88285
      Richard Sandiford committed
    • configure.in (--without-headers): Add missing double quotes. · 9082a750
      	* configure.in (--without-headers): Add missing double quotes.
      	* configure: Regenerate.
      
      From-SVN: r88284
      Michael Roth committed
    • tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD and TI_VA_LIST_FPR_COUNTER_FIELD. · 58c8adc1
      	* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
      	and TI_VA_LIST_FPR_COUNTER_FIELD.
      	(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
      	* tree-pass.h (pass_stdarg): Add.
      	* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
      	* tree-stdarg.c: New file.
      	* Makefile.in (OBJS-common): Add tree-stdarg.o.
      	(tree-stdarg.o): Add dependencies.
      	* function.h (struct function): Add va_list_gpr_size and
      	va_list_fpr_size fields.
      	* function.c (allocate_struct_function): Initialize them.
      
      	* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
      	va_list_{g,f}pr_counter_field.
      	(ix86_setup_incoming_varargs): Don't do anything if reg_save
      	area will not be used.  Only save registers that tree-stdarg.c
      	detected they need saving.
      	(ix86_va_start): Don't set up fields that won't be used.
      
      	* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
      	va_list_{g,f}pr_counter_field.
      	(setup_incoming_varargs): Don't do anything if reg_save
      	area will not be used.  Only save registers that tree-stdarg.c
      	detected they need saving.
      	(rs6000_va_start): Don't set up fields that won't be used.
      
      	* gcc.c-torture/execute/stdarg-1.c: New test.
      	* gcc.c-torture/execute/stdarg-2.c: New test.
      	* gcc.c-torture/execute/stdarg-3.c: New test.
      	* gcc.dg/tree-ssa/stdarg-1.c: New test.
      	* gcc.dg/tree-ssa/stdarg-2.c: New test.
      	* gcc.dg/tree-ssa/stdarg-3.c: New test.
      	* gcc.dg/tree-ssa/stdarg-4.c: New test.
      	* gcc.dg/tree-ssa/stdarg-5.c: New test.
      
      From-SVN: r88279
      Jakub Jelinek committed
    • builtins.def (BUILT_IN_FPUTC, [...]): Remove nothrow attribute. · 0d5b215c
      	* builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED,
      	BUILT_IN_FPUTS, BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FWRITE,
      	BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_PUTCHAR, BUILT_IN_PUTCHAR_UNLOCKED,
      	BUILT_IN_PUTS, BUILT_IN_PUTS_UNLOCKED): Remove nothrow attribute.
      	* builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_1_2,
      	ATTR_NONNULL_1_4): New.
      
      From-SVN: r88278
      Jakub Jelinek committed
    • re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed) · a7d6ba24
      	PR tree-optimization/17697
      	* tree-ssa-ccp.c (execute_fold_all_builtins): Update eh and cleanup
      	cfg if needed.
      
      	* g++.dg/opt/pr17697-1.C: New test.
      	* g++.dg/opt/pr17697-2.C: New test.
      	* g++.dg/opt/pr17697-3.C: New test.
      
      From-SVN: r88277
      Jakub Jelinek committed
    • Oops - fix typo in ChangeLog. · ac973ace
      From-SVN: r88272
      Per Bothner committed
    • profile.c (brnahc_prob): Pass correct value to output_location, even when USE_MAPPED_LOCATION. · 50fd1c97
      
      	* profile.c (brnahc_prob):  Pass correct value to output_location,
      	even when USE_MAPPED_LOCATION.  Fixes bug from 09-11.
      
      From-SVN: r88271
      Per Bothner committed
    • re PR middle-end/17525 (ICE in emit_move_insn (non-BLKmode arg)) · 550f100c
              PR middle-end/17525
              * class.c (build_base_field): Set TYPE_MODE.
      
      From-SVN: r88270
      Jason Merrill committed
    • re PR tree-optimization/15089 (local register variable with a specified register is bad) · aa24864c
              PR 15089
              * tree-ssa-copy.c (may_propagate_copy_into_asm): New.
              * tree-flow.h (may_propagate_copy_into_asm): Declare.
              * tree-ssa-ccp.c (replace_uses_in): Use it.
              * tree-ssa-dom.c (cprop_operand): Likewise.
      
      From-SVN: r88269
      Richard Henderson committed
    • tree-ssa-threadupdate.c (create_block_for_threading): Request that no outgoing… · e376fe58
      tree-ssa-threadupdate.c (create_block_for_threading): Request that no outgoing edges be left in the duplicate block.
      
      
      	* tree-ssa-threadupdate.c (create_block_for_threading):  Request
      	that no outgoing edges be left in the duplicate block.  Do no
      	update information on outgoing edges or PHI nodes in target
      	blocks here.
      	(remove_ctrl_stmt_and_useless_edges): Renamed from
      	remove_last_stmt_and_useless_edges.  Handle case where the
      	block is empty or has no control statements.  Do not update edge
      	flags here.
      	(thread_block): Create a template block rather than copying the
      	original block every time.  Create outgoing edges from the
      	duplicate blocks and update PHIs at the target of the outgoing
      	edges here.  Fix edge flags for the original block if necessary.
      	* cfghooks (duplicate_block): No longer assert that the original
      	block has incoming edges.
      
      From-SVN: r88267
      Jeff Law committed
    • extend.texi (Extended Asm): Add blurb about using Explicit Reg Vars to enforce… · 805c33df
      extend.texi (Extended Asm): Add blurb about using Explicit Reg Vars to enforce register allocation with...
      
      	* doc/extend.texi (Extended Asm): Add blurb about using Explicit
      	Reg Vars to enforce register allocation with general constraints.
      	(Explicit Reg Vars): Clarify relation to asm statements.
      	(Local Reg Vars): Similar.
      
      From-SVN: r88265
      Hans-Peter Nilsson committed
    • sched-rgn.c (haifa_edge, [...]): Remove. · dcda8480
      	* sched-rgn.c (haifa_edge, edge_table, NEXT_IN, NEXT_OUT, FROM_BLOCK,
      	TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, OUT_EDGES,
      	build_control_flow, new_edge): Remove.
      	(schedule_insns): Remove edge_table/in_edges/out_edges cleanup.
      	(bitlst, bitlst_table_last, bitlst_table): Remove.
      	(bblst): Store basic_block pointer instead of block index.
      	(bblst_table): Likewise.
      	(edgelst): Store edge pointer instead of edge index.
      	(edgelst_table, edgelst_last): New variables.
      	(extract_bitlst): Rename to ...
      	(extract_edgelst): ... this.  Return edge pointers, not indices.
      	(split_edges): Update call.
      	(rgn_edges): Store edge pointers instead of indices.
      	(edge_to_bit): Remove.
      	(EDGE_TO_BIT): Store per-region edge index in edge->aux.
      	(SET_EDGE_TO_BIT): New macro.
      	(is_cfg_nonregular): Check for simple cases of unreachable blocks.
      	(find_rgns): Remove edge_list parameter.  Traverse standard CFG
      	data structures instead of haifa_edge et al.  Use edge pointers
      	instead of edge indices everywhere.
      	(compute_dom_prob_ps): Use standard CFG data structures.  Account
      	for exit edges.
      	(compute_trg_info): Likewise.
      	(propagate_deps): Likewise.
      	(debug_candidate): Account for bblst data structure change.
      	(check_live_1, update_live_1, is_pfree): Likewise.
      	(IS_REACHABLE): Use standard CFG data structures.
      	(init_ready_list): Update bblst_table/edgelst_table allocation.
      	(schedule_region): Update alloc/cleanup code to data structure
      	changes.  Use edge->aux to store per-region edge index.
      	(init_regions): No longer call build_control_flow.  Do not
      	create edge list any more.
      
      From-SVN: r88264
      Ulrich Weigand committed
    • Daily bump. · f7deb4e9
      From-SVN: r88262
      GCC Administrator committed
  3. 28 Sep, 2004 10 commits