OSDN Git Service

Reassociate multiply expression with an adjacent non-multiply expression.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 15a79c9..61813c4 100644 (file)
@@ -1,3 +1,140 @@
+2004-03-29  Fariborz Jahanian <fjahanian@apple.com>
+
+        * fold-const.c (fold): Reassociate multiply expression
+        with an adjacent non-multiply expression to use
+        architecture's multiply-add instruction.
+
+2004-03-30  Zack Weinberg  <zack@codesourcery.com>
+
+       * gengtype.c (create_option): New function.
+       * gengtype.h: Prototype it.
+       * gengtype-yacc.y (stringseq): New rule.
+       (option): Use create_option.  Add new bare ID production.  Use
+       stringseq, not STRING directly.
+
+       * alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h
+       * dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h
+       * varray.h, config/alpha/alpha.c:
+       Use new shorter form of GTY markers.
+
+       * doc/gty.texi: Rewrite.
+
+2004-03-30  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * config/darwin.c (machopic_function_base_name):
+       Remove current_name and getting the name of the
+       current function.
+
+2004-03-30  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/arm.md (thumb_jump): Reduce the backward branch
+       range, and increase the forward branch range, to allow for
+       the fact that the PC will be off by 4.
+
+2004-03-30  Alan Modra  <amodra@bigpond.net.au>
+
+       * .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)
+
+2004-03-30  Hartmut Penner  <hpenner@de.ibm.com>
+
+       * config/rs6000/rs6000.c (output_vec_const_move):
+       Find all cases of EASY_VECTOR_15_ADD_SELF.
+       (easy_vector_constant_add_self): Accept
+       all vector constant loadable by vsplt* and vadd*.
+       (easy_vector_same): Use easy_vector_splat_const.
+       (easy_vector_const): Use easy_vector_splat_const.
+       (easy_vector_splat_const): New function.
+       (gen_easy_vector_constant_add_self): New function.
+
+       * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
+       New prototype.
+
+       * config/rs6000/altivec.md (movv4si splitter): Change to
+       emit move insn with halfed vector constant.
+       (*movv8hi splitter): Likewise.
+       (*movv16qi splitter): Likewise.
+
+2004-03-30  Hartmut Penner  <hpenner@de.ibm.com>
+
+       PR 11591
+       * config/rs6000/rs6000.c (rs6000_legitimate_address):
+       Allow any offset to argument pointer in no-strict case.
+
+2004-03-30  Jan Hubicka  <jh@suse.cz>
+
+       * toplev.c (backend_init): Add missing call to inint_optimization_passes.
+       * passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
+       dump file in non-unit-at-a-time mode.
+
+2004-03-29  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.h: Correct #ifdef to test for
+       HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
+       HAVE_AS_MUL_BUG_ABORT_OPTION.
+
+2004-03-29  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
+       the address inside the old RTL.
+
+2004-03-28  Zack Weinberg  <zack@codesourcery.com>
+
+       * c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct.
+       (struct c_binding, struct c_scope): Add chain_next
+       attributes to GTY markers.
+       (struct lang_identifier, struct lang_tree_node): Define
+       here...
+       * c-tree.h: ... not here.  No longer need to declare struct
+       c_binding either.  Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER.
+       * c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE
+       to C_SIZEOF_STRUCT_LANG_IDENTIFIER.
+
+       PR 14734, 11944
+       * c-decl.c (get_parm_info): If error_mark_node is encountered
+       in the bindings chain, unbind and discard it; don't abort.
+
+2004-03-28  Olga Golovonevsky <olga@il.ibm.com>
+           Dorit Naishlos <dorit@il.ibm.com>
+
+       * config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2,
+       one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling.
+
+2004-03-28  Stephane Carrez  <stcarrez@nerim.fr>
+
+       * config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.
+
+       * config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New.
+       (m68hc11_attribute_table): New attribute "page0" to mark a global
+       variable as being allocated from within page0 section.
+       (m68hc11_encode_label): New function.
+       (m68hc11_strip_name_encoding): New function.
+       (m68hc11_page0_symbol_p): New function.
+       (m68hc11_indirect_p): Accept global variables marked in page0.
+       (m68hc11_encode_section_info): Lookup "page0" attribute.
+
+       * config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also
+       represents access to page0 variables.
+
+       * config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG.
+       ("*logicalsi3_silshl16_zext"): Likewise.
+       ("*ashldi3_const32"): Likewise.
+       (peephole2 ashift): Likewise.
+
+2004-03-28  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-tree.h (C_DECL_REGISTER): New.
+       * c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile,
+       finish_decl, grokdeclarator, get_parm_info), c-typeck.c
+       (build_array_ref, c_mark_addressable): Set and use it.
+       * c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable):
+       Allow structures with volatile fields to be declared register.
+       Don't check TREE_ADDRESSABLE before warning about taking address
+       of register.
+       * c-decl.c (finish_decl): Don't allow structures with volatile
+       fields to be placed in named register.
+       * doc/trouble.texi: Remove reference to structures with volatile
+       fields in registers.
+
 2004-03-27  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * function.c (thread_prologue_and_epilogue): Move
          with TYPE_ORIG_SIZE_TYPE.
 
 2004-03-25  Aldy Hernandez  <aldyh@redhat.com>
-        PR 14219
-        * c-typeck.c (build_binary_op): Do not allow comparisons of
-        vectors.
+
+       PR 14219
+       * c-typeck.c (build_binary_op): Do not allow comparisons of
+       vectors.
 
 2004-03-26  James A. Morrison  <ja2morri@uwaterloo.ca>
 
 2004-03-25  Richard Henderson  <rth@redhat.com>
 
        PR 11527
-        * c-typeck.c (pop_init_level): Emit pending init elements earlier
-        rather than later.
+       * c-typeck.c (pop_init_level): Emit pending init elements earlier
+       rather than later.
 
 2004-03-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>