OSDN Git Service

* tree.c (int_cst_node, int_cst_hash_table): New variables.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 767af3e..82eb2ca 100644 (file)
@@ -1,3 +1,212 @@
+2004-10-28  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * tree.c (int_cst_node, int_cst_hash_table): New variables.
+       (init_ttree): Initialize them.
+       (int_cst_hash_hash, int_cst_hash_eq): New hashing functions.
+       (build_int_cst_wide): Use hash table for oversized integers.
+
+2004-10-28  Nick Clifton  <nickc@redhat.com>
+
+       * config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Define
+       begin_label.
+
+2004-10-27  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/18163
+       * expr.c (emit_group_load): Don't go force temporary for memory
+       or concat source.
+       (emit_group_store): Similarly.
+
+2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR other/18186
+       * common.opt (--param): Fix spelling of parameter.
+
+2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/17529
+       * tree-cfg.c (remove_useless_stmts_1) <case SWITCH_EXPR>:
+       Don't fold statement.
+       <case ASM_EXPR>: Fold the statement.
+
+2004-10-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-dce.c (mark_stmt_if_obviously_necessary)
+       <COND_EXPR>: Use EDGE_COUNT instead of GOTO_DESTINATION.
+
+2004-10-28  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * doc/contrib.texi, doc/cpp.texi, doc/cppopts.texi,
+       doc/extend.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
+       doc/libgcc.texi, doc/md.texi, doc/passes.texi,
+       doc/sourcebuild.texi, doc/tm.texi: Improve Texinfo formatting.
+
+2004-10-28  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * doc/c-tree.texi, doc/cpp.texi, doc/implement-c.texi,
+       doc/invoke.texi, doc/md.texi, doc/passes.texi, doc/tm.texi: Put
+       punctuation outside quotes.
+
+2004-10-27  David Mosberger  <davidm@hpl.hp.com>
+           James E Wilson  <wilson@specifixinc.com>
+
+       PR target/13158
+       * config/ia64/ia64.c (ia64_expand_epilogue): Set RTX_FRAME_RELATED_P on
+       sibcall alloc instruction.
+       (process_set): Handle sibcall alloc instruction.
+
+2004-10-27  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/rs6000/rs6000.c (rs6000_attribute_table): Add
+       SUBTARGET_ATTRIBUTE_TABLE.
+       * config/darwin.h (ASM_WEAKEN_DECL): Handle weak_import.
+       (SUBTARGET_ATTRIBUTE_TABLE): Define.
+       * config/darwin.c (darwin_handle_weak_import_attribute): New.
+       (HAVE_DEAD_STRIP): Delete.
+       (no_dead_strip): Don't test HAVE_DEAD_STRIP.
+       * config/darwin-protos.h (darwin_handle_weak_import_attribute):
+       Prototype.
+
+       * doc/tm.texi (USE_SELECT_SECTION_FOR_FUNCTIONS): Document.
+
+       * config/darwin.h (GTHREAD_USE_WEAK): Define.
+
+2004-10-28  Ben Elliston  <bje@au.ibm.com>
+
+       * params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New.
+       (PARAM_SRA_FIELD_STRUCTURE_RATIO): Likewise.
+       * params.h (SRA_MAX_STRUCTURE_SIZE): New.
+       (SRA_FIELD_STRUCTURE_RATIO): Likewise.
+       * tree-sra.c: Include "params.h".
+       (decide_block_copy): Use new parameters.
+       * doc/invoke.texi (Optimize Options): Document new SRA pass
+       parameters sra-max-structure-size and sra-field-structure-ratio.
+
+2004-10-27  Nicolas Pitre <nico@cam.org>
+
+       * config/arm/ieee754-df.S (floatdidf): Fix regression with big values.
+
+2004-10-27  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR tree-optimization/18048
+       * fold-const.c (try_move_mult_to_index): New function.
+       (fold): Use try_move_mult_to_index.
+       * tree-ssa-loop-ivopts.c (try_add_cand_for): Prefer common candidates.
+       * tree-ssa-loop-niter.c (number_of_iterations_cond): Produce
+       an all-ones unsigned constant without extra bits.
+       * tree.c (build_low_bits_mask): New function.
+       * tree.h (build_low_bits_mask): Declare.
+
+2004-10-27  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/17956
+       * config/rs6000/rs6000.md (maxsf3): Add !flag_trapping_math to
+       final condition.
+       (minsf3): Same.
+       (maxdf3): Same.
+       (mindf3): Same.
+
+2004-10-27  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Speed up by reordering the two
+       conditions for entering basic blocks into worklist.
+
+2004-10-27  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Speed up by pretending to have
+       ENTRY_BLOCK_PTR in worklist.
+
+2004-10-27  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-dce.c (mark_stmt_if_obviously_necessary)
+       <GOTO_EXPR>: Don't let an explicit GOTO_EXPR slip through.
+
+2004-10-27  Daniel Berlin <dberlin@dberlin.org>
+       
+       Fix PR tree-optimization/17133
+       
+       * tree-cfg.c (rewrite_to_new_ssa_names_bb): Also rewrite must
+       def kill operand.
+
+       * tree-flow-inline.h: V_MUST_DEF_OP became V_MUST_DEF_RESULT.
+       (get_v_must_def_result_ptr): Modify for new structure of
+       v_must_defs array.
+       (get_v_must_def_kill_ptr): New.
+       (op_iter_next_use): Add support for the kill that occurs in V_MUST_DEFs.
+       (op_iter_next_tree): Ditto. Also V_MAY_DEF_OP became V_MAY_DEF_RESULT.
+       (op_iter_next_def): V_MAY_DEF_OP became V_MAY_DEF_RESULT.
+       (op_iter_init): Initialize new mustu members.
+       (op_iter_next_mustdef): New function.
+       (op_iter_init_mustdef): Ditto.
+
+       * tree-flow.h (rewrite_def_def_chains): New function.
+
+       * tree-into-ssa.c (mark_def_sites): Handle mustdefkill operands.
+       (ssa_mark_def_sites): Ditto.
+       (rewrite_stmt): Ditto.
+       (ssa_rewrite_stmt): Ditto.
+       (rewrite_blocks): Factor out from rewrite_into_ssa.
+       (mark_def_block_sites): Ditto.
+       (rewrite_def_def_chains): New function, just rewrites def-def
+       chains without phi node insertion.
+
+       * tree-pass.h (TODO_fix_def_def_chains): New todo flag.
+
+       * tree-optimize.c (execute_todo): Handle TODO_fix_def_def_chains.       
+
+       * tree-pretty-print.c (dump_vops): Print out MUST_DEF's so that
+       they include the rhs now.
+
+       * tree-ssa-ccp.c (visit_assignment): V_MUST_DEF_OP became
+       V_MUST_DEF_RESULT. 
+
+       * tree-ssa-dce.c (mark_operand_necessary): Add phionly argument.
+       Update callers.
+       (mark_really_necessary_kill_operand_phis): New function.
+       (perform_tree_ssa_dce): Call it.
+       (pass_dce): Add TODO_fix_def_def_chains.
+       (pass_cd_dce): Ditto.
+
+       * tree-ssa-loop-im.c (determine_max_movement): Look at kills as
+       well.
+       (rewrite_mem_refs): Ditto.
+
+       * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Look at kills
+       as well.
+
+       * tree-ssa-operands.c (allocate_v_may_def_optype):
+       v_may_def_operand_type_t became v_def_use_operand_type_t.
+       (allocate_v_must_def_optype) Ditto.
+       (finalize_ssa_v_must_defs): Update for new operand type, as well
+       as setting the use portion as well.
+       (copy_virtual_operands): Copy the kill operand as well.
+       (create_ssa_artficial_load_stmt): V_MUST_DEF_OP became
+       V_MUST_DEF_RESULT. 
+
+       * tree-ssa-operands.h (v_may_def_operand_type): Renamed to
+       v_def_use_operand_type. 
+       (v_must_def_optype_d): Use v_def_use_operand_type.
+       (V_MUST_DEF_OP_*): Renamed to V_MUST_DEF_RESULT_*
+       (V_MUST_DEF_KILL_*): New macros.
+       (struct ssa_operand_iterator_d): Add num_v_mustu and v_mustu_i
+       members.
+       Rename existing must_i and num_v_must members to mustd_i and
+       num_v_mustd. 
+       (SSA_OP_VMUSTDEFKILL): New flag.
+       (SSA_OP_VIRTUAL_KILLS): New flag.
+       (SSA_OP_ALL_OPERANDS): Add in SSA_OP_ALL_KILLS.
+       (SSA_OP_ALL_KILLS): New flag.
+       (FOR_EACH_SSA_MUSTDEF_OPERAND): New macro.
+
+       * tree-ssa.c (verify_ssa): Verify virtual kills as well.
+
+       * tree-vectorizer.c (vect_create_data_ref_ptr): V_MUST_DEF_OP
+       became V_MUST_DEF_RESULT.
+       (rename_variables_in_bb): Rename kill pointer as well.
+
+       * tree-dfa.c (compute_immediate_uses_for_stmt): Add kills into the
+       immediate uses.
+
 2004-10-27  Richard Sandiford  <rsandifo@redhat.com>
 
        * dbxout.c (dbxout_source_line): Move declaration of begin_label to