1. 28 Jul, 2004 10 commits
    • cp-tree.h (struct tree_pair_s): New. · 0871761b
      	* cp-tree.h (struct tree_pair_s): New.
      	(typedef tree_pair_p): New.
      	(DEF_VEC_O(tree_pair_s)): New.
      	(struct lang_type_class): Make vcall_indices a VEC(tree_pair_s).
      	(CLASSTYPE_VCALL_INDICES): Update documentation.
      	* class.c (get_vcall_index): Adjust.
      	(add_vcall_offset): Adjust.
      
      From-SVN: r85256
      Nathan Sidwell committed
    • tree-optimize.c (init_tree_optimization_passes): Schedule pass_may_alias right… · c1b763fa
      tree-optimize.c (init_tree_optimization_passes): Schedule pass_may_alias right after the program is renamed into SSA.
      
      
      	* tree-optimize.c (init_tree_optimization_passes): Schedule
      	pass_may_alias right after the program is renamed into SSA.
      	* tree-pass.h (PROP_alias): Define.
      	* tree-outof-ssa.c (pass_del_ssa): Require PROP_alias.
      	* tree-sra.c (pass_sra): Likewise.
      	* tree-ssa-ccp.c (pass_ccp): Likewise.
      	* tree-ssa-copyrename.c (pass_rename_ssa_ccp): Likewise.
      	* tree-ssa-dce.c (pass_dce): Likewise.
      	* tree-ssa-dom.c (pass_dominator): Likewise.
      	* tree-ssa-dse.c (pass_dse): Likewise.
      	* tree-ssa-forwprop.c (pass_forwprop): Likewise.
      	* tree-ssa-loop-ch.c (pass_ch): Likewise.
      	* tree-ssa-phiopt.c (pass_phiopt): Likewise.
      	* tree-ssa-pre.c (pass_pre): Likewise.
      	* tree-tailcall.c (pass_tail_recursion): Likewise.
      	* tree-ssa.c (pass_redundant_phi): Likewise.
      	* tree-ssa-alias.c (aliases_computed_p): Remove.
      	Update all users.
      	(init_alias_info): Do not mark all type tags for renaming
      	unconditionally.
      	Clear may_aliases from every symbol.
      	(setup_pointers_and_addressables): If a pointer has not been
      	dereferenced and it had a type tag, clear it and mark the old
      	tag for renaming.
      
      
      testsuite/ChangeLog
      
      	* gcc.dg/tree-ssa/20030714-2.c: Adjust number of expected
      	conditionals.
      	* gcc.dg/tree-ssa/20031022-1.c: Adjust number of expected
      	loads.
      	* gcc.dg/tree-ssa/ssa-dom-cse-1.c: Expect optimization in
      	DOM1.
      
      From-SVN: r85255
      Diego Novillo committed
    • re PR tree-optimization/16705 ([testcase] ICE in verify_flow_insensitive_alias_info) · 58907cda
      
      	PR tree-optimization/16705
      	* tree-ssa-alias.c (create_global_var): Set DECL_EXTERNAL on
      	.GLOBAL_VAR.
      
      From-SVN: r85254
      Diego Novillo committed
    • expr.c (expand_expr_real_1, [...]): Remove obsolete error check. · 0b1d1db4
      	* expr.c (expand_expr_real_1, case PARM_DECL): Remove obsolete error
      	check.
      
      From-SVN: r85250
      Richard Kenner committed
    • gimplify.c (maybe_with_size_expr): If already have WITH_SIZE_EXPR, don't make another one. · 61025d1b
      	* gimplify.c (maybe_with_size_expr): If already have WITH_SIZE_EXPR,
      	don't make another one.
      
      From-SVN: r85249
      Richard Kenner committed
    • TLtest.java: Reduce sleep time. · ce961468
      2004-07-27  Bryce McKinlay  <mckinlay@redhat.com>
      
      	* testsuite/libjava.lang/TLtest.java: Reduce sleep time.
      	* testsuite/libjava.lang/Thread_Alive.java: Remove old email address.
      	Reduce sleep time.
      	* testsuite/libjava.lang/Thread_HoldsLock.java: Modify to work around
      	compiler bug.
      	* testsuite/libjava.lang/Thread_Interrupt.java: Remove old email
      	address. Reduce sleep times. Synchronize with target threads before
      	attempting to interrupt them. Don't try to calibrate yeild count,
      	instead, always loop for a fixed time.
      	* testsuite/libjava.lang/Thread_Join.java: Remove old email address.
      	* testsuite/libjava.lang/Thread_Monitor.java: Likewise.
      	* testsuite/libjava.lang/Thread_Wait.java: Likewise.
      	* testsuite/libjava.lang/Thread_Wait_2.java: Likewise.
      	* testsuite/libjava.lang/Thread_Wait_Interrupt.java: Likewise.
      	* testsuite/libjava.lang/pr179.java: Likewise.
      	* testsuite/libjava.lang/Thread_Sleep.java: Likewise. Reduce sleep
      	time. Remove upper bounds check on sleep time.
      
      From-SVN: r85248
      Bryce McKinlay committed
    • re PR tree-optimization/15077 (ICE in make_decl_rtl when inlining tail recursive nested function) · 1a837f77
      	PR optimization/15077
      	* function.h (struct function): Add field saved_static_chain_decl.
      	Fix comment for static_chain_decl.
      	* tree-inline.c (save_body): Add new arg and handle static_chain_decl.
      	* tree-inline.h (save_body): Add new arg.
      	* tree-optimize.c (tree_rest_of_compilation): Handle saving
      	static_chain_decl.
      
      From-SVN: r85247
      Richard Kenner committed
    • gimplify.c (is_gimple_addr_expr_arg_or_indirect): Remove. · e847cc68
              * gimplify.c (is_gimple_addr_expr_arg_or_indirect): Remove.
              (gimplify_modify_expr, gimplify_addr_expr, gimplify_expr): Use
              is_gimple_addressable.
              * tree-gimple.c (is_gimple_addressable): Rename from
              is_gimple_addr_expr_arg; accept INDIRECT_REF.
              (is_gimple_lvalue): Don't test INDIRECT_REF directly.
              * tree-gimple.h, tree-sra.c, tree-ssa-loop-im.c: Update for
              rename to is_gimple_addressable.
      
      From-SVN: r85243
      Richard Henderson committed
    • Daily bump. · 66aeab7d
      From-SVN: r85240
      GCC Administrator committed
  2. 27 Jul, 2004 18 commits
  3. 26 Jul, 2004 12 commits
    • tinfo1.C: Xfail. · 21db3785
      2004-07-26  Andrew Pinski  <apinski@apple.com>
      
              * g++.dg/rtti/tinfo1.C: Xfail.
      
      From-SVN: r85209
      Andrew Pinski committed
    • i386.c (function_arg): Always treat 8- and 16-byte wide vectors the same, even… · 90d5887b
      i386.c (function_arg): Always treat 8- and 16-byte wide vectors the same, even if MMX/SSE are disabled.
      
              * config/i386/i386.c (function_arg): Always treat 8-
              and 16-byte wide vectors the same, even if MMX/SSE
              are disabled.
              (contains_128bit_aligned_vector_p): Add comment.
      
      From-SVN: r85207
      Paolo Bonzini committed
    • ra.h (enum node_type): Rename to: (enum ra_node_type). · 9c18fb88
      	* ra.h (enum node_type): Rename to:
      	(enum ra_node_type).
      	* ra-colorize.c: Likewise.
      
      From-SVN: r85202
      J"orn Rennecke committed
    • g++spec.c (LIBSTDCXX_PROFILE): Default to LIBSTDCXX. · 4afd7f6c
      	* g++spec.c (LIBSTDCXX_PROFILE): Default to LIBSTDCXX.
      	(lang_specific_driver): If the C++ or math library options don't
      	start with '-l', don't count them as added libraries.
      
      From-SVN: r85201
      Geoffrey Keating committed
    • cfgcleanup.c (try_simplify_condjump): Call update_forwarder_flag after simplifying the jump. · 261139ce
      	* cfgcleanup.c (try_simplify_condjump): Call update_forwarder_flag
      	after simplifying the jump.
      
      From-SVN: r85200
      Richard Sandiford committed
    • calls.c (combine_pending_stack_adjustment_and_call): Make… · 95899b34
      calls.c (combine_pending_stack_adjustment_and_call): Make preferred_unit_stack_boundary argument unsigned.
      
              * calls.c (combine_pending_stack_adjustment_and_call): Make
              preferred_unit_stack_boundary argument unsigned.  Make
              unadjusted_alignment unsigned.
              (expand_call): Make preferred_stack_boundary and
              preferred_unit_stack_boundary variables unsigned.
              * function.c (assign_stack_local_1): Make alignment unsigned.
              * function.h (struct function): Make stack_alignment_needed,
              preferred_stack_boundary unsigned.
              * config/i386/i386.c (ix86_preferred_stack_boundary): Make unsigned.
              (ix86_compute_frame_layout): Make stack_alignment_needed,
              preferred_alignment variables unsigned.
              * config/i386/i386.h (ix86_preferred_stack_boundary): Make unsigned.
      
      From-SVN: r85196
      Richard Henderson committed
    • * tree.h: Fix typo in comment. · 86df8c86
      From-SVN: r85195
      Tom Tromey committed
    • re PR bootstrap/12804 (zone allocator is broken on 64bit) · 02aebac6
      	PR bootstrap/12804
      	* ggc-zone.c (struct alloc_chunk): Remove attribute packed.
      	(MAX_FREE_BIN_SIZE): Increase on 64-bit targets.
      	(ggc_free): Remove incorrect freeing.
      	(sweep_pages): Advance PP for large pages.  Fix indentation.
      
      From-SVN: r85194
      Daniel Jacobowitz committed
    • re PR rtl-optimization/16643 (verify_local_live_at_start ICE after crossjumping & cfgcleanup) · 35b6b437
      	PR rtl-optimization/16643
      	* cfglayout.h (cfg_layout_initialize): Add a flags parameter.
      	* cfglayout.c (cfg_layout_initialize): Pass it to cleanup_cfg.
      	* basic-block.h (reorder_basic_blocks): Add a flags parameter.
      	* cfglayout.c (reorder_basic_blocks): Pass it to cfg_layout_initialize.
      	(partition_hot_cold_basic_blocks): Pass 0 to cfg_layout_initialize.
      	* function.c (thread_prologue_and_epilogue_insns): Likewise.
      	* rtl.h (tracer): Add a flags parameter.
      	* tracer.c (tracer): Pass it to cfg_layout_initialise.
      	* passes.c (rest_of_handle_stack_regs): Pass 0 to reorder_basic_blocks.
      	(rest_of_handle_reorder_blocks): Update calls to tracer and
      	reorder_basic_blocks, passing CLEANUP_UPDATE_LIFE if appropriate.
      	(rest_of_handle_tracer): Pass 0 to tracer.
      	(rest_of_handle_loop2): Pass 0 to cfg_layout_initialize.
      
      From-SVN: r85191
      Richard Sandiford committed
    • rs6000.md (movdi_internal64): Further disparage f->f. · fa0a2ae5
              * config/rs6000/rs6000.md (movdi_internal64): Further disparage
              f->f.
      
      From-SVN: r85190
      David Edelsohn committed
    • parse.y (build_super_invocation): Adjust declaration order to avoid declaration after statement. · 6fd876ac
      	* parse.y (build_super_invocation): Adjust declaration order to
      	avoid declaration after statement.
      
      From-SVN: r85189
      Hans-Peter Nilsson committed
    • [multiple changes] · 615cbd95
      2004-07-26  Arnaud Charlet  <charlet@act-europe.fr>
      
      	* sem_util.adb (Requires_Transient_Scope): Temporarily disable
      	optimization, not supported by the tree-ssa back-end.
      
      2004-07-26  Olivier Hainque  <hainque@act-europe.fr>
      
      	* s-mastop-irix.adb: Update comments.
      
      	* a-except.adb (Exception_Information): Raise Constraint_Error if
      	exception Id is Null_Id.
      	This is required behavior, which is more reliably and clearly checked
      	at the top level interface level.
      
      2004-07-26  Javier Miranda  <miranda@gnat.com>
      
      	* exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization
      	call if a component has no default_expression and the box is used.
      
      	* sem_aggr.adb (Resolve_Array_Aggregate): If a component has no
      	default_expression and you use box, it behaves as if you had declared a
      	stand-alone object.
      	(Resolve_Record_Aggregate): If a component has no default_expression and
      	you use box, it behaves as if you had declared a stand-alone object.
      
      	* sem_ch10.adb (Install_Siblings): Do not make visible the private
      	entities of private-with siblings.
      
      2004-07-26  Ed Schonberg  <schonberg@gnat.com>
      
      	* sem_ch3.adb (Build_Underlying_Full_View): If this is the full view
      	for a component of an itype, set the parent pointer for analysis,
      	there is no list in which to insert it.
      
      	* sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for
      	bona-fide renamings, not for inherited operations.
      
      	* exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an
      	actual for a formal that is an access parameter, create local
      	finalization list even if the expression is not an aggregate.
      
      2004-07-26  Ed Schonberg  <schonberg@gnat.com>
      
      	PR ada/16213
      	* sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming):
      	Diagnose properly illegal subprogram renamings that are library units.
      
      2004-07-26  Ed Schonberg  <schonberg@gnat.com>
      
      	PR ada/15588
      	* sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type
      	conversion rewritten as an unchecked conversion, check that original
      	expression is a variable.
      
      	* exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an
      	unchecked_conversion, create new node rather than rewriting in place,
      	to preserve original construct.
      
      2004-07-26  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
      
      	* gigi.h (gnat_expand_body): Deleted.
      
      	* Make-lang.in: (trans.o): Depends on function.h.
      
      	* misc.c: (gnat_expand_body): Moved to here.
      
      	* trans.c (gnat_expand_body_1): Deleted.
      	(gnat_expand_body): Moved from here.
      	(gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc.
      	(add_stmt): Check for marked visited with global_bindings_p.
      	(gnat_gimplify_expr, case COMPONENT_REF): New case.
      	(gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp.
      
      	* utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a
      	VIEW_CONVERT_EXPR if not operation type.
      
      	* utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for
      	fat pointer.
      
      	* decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor
      	changes: reformatting of negation operators, removing unneeded
      	inequality comparison with zero, converting equality comparisons with
      	zero to negations, changing int/0/1 to bool/false/true, replace calls
      	to gigi_abort with abort, and various other similar changes.
      
      2004-07-26  Vincent Celier  <celier@gnat.com>
      
      	* gnatcmd.adb (GNATCmd): Add processing for new built-in command
      	"setup".
      
      	* make.adb (Gnatmake): Fail when a library is not present and there is
      	no object directory.
      
      	* mlib-prj.adb (Check_Library): No need to check if the library needs
      	to be rebuilt if there is no object directory, hence no object files
      	to build the library.
      
      	* opt.ads (Setup_Projects): New Boolean flag.
      
      	* prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and
      	Location.
      	Create directory when Kind /= "" and in "gnat setup". Report error if
      	directory cannot be created.
      	(Ada_Check): Create library interface copy dir if it does not exist
      	and we are in "gnat setup".
      	(Find_Sources): No error if in "gnat setup" and no Ada sources were
      	found.
      	(Language_Independent_Check): Create object directory, exec directory
      	and/or library directory if they do not exist and we are in
      	"gnat setup".
      
      	* vms_conv.ads: (Command_Type): New command Setup.
      
      	* vms_conv.adb (Initialize): Add Setup component of Cammand_List.
      
      	* vms_data.ads: Add qualifiers/switches for new built-in command
      	"setup".
      
      From-SVN: r85188
      Arnaud Charlet committed