OSDN Git Service

2003-01-09 Paolo Carlini <pcarlini@unitus.it>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d0f87c0..955a631 100644 (file)
@@ -1,3 +1,314 @@
+2003-01-09  Paolo Carlini  <pcarlini@unitus.it>
+
+       * doc/tm.texi (EXTRA_ADDRESS_CONSTRAINT): Fix typo.
+
+Thu Jan  9 17:26:40 2003  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * defaults.h (EXTRA_MEMORY_CONSTRAINT): Add STR argument.
+       (EXTRA_ADDRESS_CONSTRAINT): Likewise.
+       (CONSTRAINT_LEN): Provide default definition.
+       (CONST_OK_FOR_CONSTRAINT_P): Likewise.
+       (CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Likewise.
+       (EXTRA_CONSTRAINT_STR): Likewise.
+       (REG_CLASS_FROM_CONSTRAINT): Define.
+       * genoutput.c (check_constraint_len, constraint_len): New functions.
+       (validate_insn_alternatives): Check CONSTRAINT_LEN for each
+       constraint / modifier.
+       (gen_insn): Call check_constraint_len.
+       * local-alloc.c (block_alloc): Update to use new macros / pass
+       second argument to EXTRA_{MEMORY,ADDRESS}_CONSTRAINT.
+       * ra-build.c (handle_asm_insn): Likewise.
+       * recog.c (asm_operand_ok, preprocess_constraints): Likewise.
+       (constrain_operands, peep2_find_free_register): Likewise.
+       * regclass.c (record_operand_costs, record_reg_classes): Likewise.
+       * regmove.c (find_matches): Likewise.
+       * reload.c (push_secondary_reload, find_reloads): Likewise.
+       (alternative_allows_memconst): Likewise.
+       * reload1.c (maybe_fix_stack_asms): Likewise.
+       (reload_cse_simplify_operands): Likewise.
+       * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
+       * doc/tm.texi (CONSTRAINT_LEN, REG_CLASS_FROM_CONSTRAINT): Document.
+       (CONST_OK_FOR_CONSTRAINT_P): Likewise.
+       (CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR): Likewise.
+       (EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT): Add STR argument.
+       * config/s390/s390.h (EXTRA_MEMORY_CONSTRAINT): Likewise.
+
+       * sh.h (OVERRIDE_OPTIONS): Allow first scheduling pass for SH5.
+
+2003-01-09  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (*extzv_1_r_h8300): Correct the insn
+       length.
+       (*extzv_1_r_h8300hs): Likewise.
+       (*extzv_1_r_inv_h8300): Likewise.
+       (*extzv_1_r_inv_h8300hs): Likewise.
+
+2003-01-09  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.h (PREDICATE_CODES): New.
+
+2003-01-09  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (*addsi3_upper): New.
+       (*iorsi3_shift): Likewise.
+       (two splitters): Likewise.
+       (*addsi3_shift): Likewise.
+       (two splitters): Likewise.
+
+2003-01-09  Josef Zlomek  <zlomj9am@artax.karlin.mff.cuni.cz>
+
+       * Makefile.in (optabs.o): Add dependency on basic-block.h.
+       * basic-block.h (control_flow_insn_p): Fuction was exported.
+       * cfgbuild.c (control_flow_insn_p): Fuction was made non-static.
+       * optabs.c (emit_libcall_block): Emit REG_LIBCALL and REG_RETVAL
+       notes only when the region is contained in a single basic block.
+
+2003-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR inline-asm/8832
+       * tree.h (expand_asm): New prototype.
+       * stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed
+       to do so.
+       * c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier
+       down to expand_asm.
+       * c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier.
+       * rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag.
+       (volatile_refs_p) [ASM_INPUT]: Likewise.
+       (side_effects_p) [ASM_INPUT]: Likewise.
+
+Thu Jan  9 12:00:36 CET 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (*mul*): FIx constraints; remove confused comment; fix
+       athlon_decode attributes
+       (imul/k8 optimization peep2s): New.
+
+       * athlon.md (athlon_ssecmp*): Handle ssecomi as well.
+       * i386.md (type attribute): Add ssecomi.
+       (unit, memory, prefix attributes): Handle ssecomi.
+       (cvt?2? patterns): Fix athlon_decode attribute
+       (comi patterns): Set attribute to ssecomi.
+
+       PR target/8343
+       * m68k.md (umulsidi, mulsidi expanders): Use register operand.
+
+2003-01-09  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.h (PREDICATE_CODES): Add ADDRESSOF for predicates
+       that match register_operands.
+       * config/mips/mips.c (reg_or_0_operand, true_reg_or_0_operand): Make
+       register_operand the default case.
+
+2003-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR c/8032
+       * c-typeck.c (process_init_element) [RECORD_TYPE]: For
+       an empty element, do not advance the pointer to unfilled
+       fields if there are pending initializers.
+
+2003-01-09  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
+
+       * Makefile.in (ORDINARY_FLAGS_TO_PASS): Also pass DESTDIR.
+       (install-gcc-tooldir, install-cpp, installdirs,
+       install-common, install-driver, install-info, install-man,
+       install-headers, install-include-dir, install-headers-tar,
+       install-headers-cpio, install-headers-cp, install-mkheaders,
+       install-collect2, uninstall): Prepend $(DESTDIR) to
+       destination paths in all (un)installation commands.
+       (install-driver): Rewrite $(LN) commands to support DESTDIR
+       with "ln" as well as with "ln -s".
+       (installdirs): Simply use mkinstalldirs.
+       (install-libgcc, install-multilib): Also pass DESTDIR.
+       * mklibgcc.in: Prepend $(DESTDIR) to $(libsubdir) in the
+       installation destination variable ldir.
+       * config/alpha/t-osf4, config/arm/t-netbsd,
+       config/ia64/t-hpux, config/mips/t-iris5-6,
+       config/pa/t-hpux-shlib, config/rs6000/t-aix43,
+       config/rs6000/t-aix52, config/t-slibgcc-elf-ver,
+       config/t-slibgcc-sld: Prepend $$(DESTDIR) to $$(slibdir)
+       in the definition of SHLIB_INSTALL.
+       * config/arc/t-arc (install-multilib-arc): Prepend $(DESTDIR) to
+       $(libsubdir) in the installation commands.
+
+2003-01-08  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.h (CASE_VECTOR_MODE): Use SImode for a
+       non-optimizing compile.
+       (ASM_OUTPUT_ADDR_VEC_ELT): Use .long for a non-optimizing
+       compile.
+
+2003-01-08  Douglas B Rupp  <rupp@gnat.com>
+
+       * config/i386/i386.c (ix86_attribute_table): Add new attributes
+       ms_struct and gcc_struct.
+       (ix86_handle_struct_attribute): New function.
+       (ix86_ms_bitfield_layout_p): Update to take new attributes
+       into account.
+       * doc/extend.texi: Document new attributes.
+       * testsuite/gcc.dg/bf-ms-attrib.c: New test.
+
+2003-01-08  Danny Smith  <dannysmith@users.sourceforge.net>
+
+        PR optimization/8750
+        * config/i386/i386.c (ix86_expand_prologue): Don't allow
+        scheduling pass to move insns across __alloca call.
+
+2003-01-08  Dale Johannesen  <dalej@apple.com>
+
+        * config/rs6000/rs6000.md:  Replace *store_multiple_string
+        with *stmsi[3-8].
+
+2003-01-08  Jeff Sturm  <jsturm@one-point.com>
+
+       PR target/9210
+       * config/rs6000/rs6000.c (rs6000_elf_encode_section_info):
+       Set SYMBOL_REF_FLAG on local data sym_ref.
+
+2003-01-08  Dale Johannesen  <dalej@apple.com>
+        * function.c (assign_parms):  Don't set pretend_args_size if 
+         REG_PARM_STACK_SPACE.
+          config/rs6000/rs6000.c (setup_incoming_varargs):  Don't set 
+         pretend_args_size.
+
+2003-01-08  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * gcc.hlp: Delete.
+
+Thu Jan  9 00:57:15 CET 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c  (ix86_expand_int_addcc): Fix thinko.
+
+2003-01-08  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.h (FUNCTION_MODE): Always use SImode.
+       * config/rs6000/rs6000.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Redefine
+       as hook_bool_tree_hwi_hwi_tree_true.
+       (rs6000_emit_allocate_stack): Use TARGET_32BIT.
+       (rs6000_emit_epilogue): Same.
+       (rs6000_output_mi_thunk): Re-implement as RTL.
+       * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Call
+       xcoffout_declare_function if any debugging enabled.
+
+2003-01-08  Chris Demetriou  <cgd@broadcom.com>
+
+       * config.gcc (mipsisa32r2-*-elf*, mipsisa32r2el-*-elf*): New
+       targets, to support MIPS32 Release 2 (MIPS32R2) configurations.
+       * config/mips/mips.h (enum processor_type): Rename
+       PROCESSOR_R4KC to PROCESSOR_4KC, PROCESSOR_R5KC to
+       PROCESSOR_5KC, and PROCESSOR_R20KC to PROCESSOR_20KC.
+       Add PROCESSOR_M4K.
+       (TARGET_MIPS4KC, TARGET_MIPS5KC): Update for the renaming.
+       (ISA_MIPS32R2): New define.
+       (GENERATE_MULT3_SI, ISA_HAS_CONDMOVE, ISA_HAS_8CC)
+       (ISA_HAS_MADD_MSUB, ISA_HAS_CLZ_CLO)
+       (ISA_HAS_PREFETCH): Add support for MIPS32R2.
+       (MIPS_ISA_DEFAULT): Likewise.  Also, fix indentation.
+       (TARGET_CPU_CPP_BUILTINS): Add support for MIPS32R2.  Add new
+       predefine __mips_isa_rev for MIPS32, MIPS32R2, and MIPS64.
+       (ISA_HAS_ROTR_SI): Add support for MIPS32R2, and avoid if
+       compiling MIPS16 code.
+       (ISA_HAS_ROTR_DI): Do not use if compiling MIPS16 code, and fix
+       comment.
+       (ISA_HAS_SEB_SEH): New define.
+       (ASM_SPEC, LINK_SPEC): Pass -mips32r2 to assembler and linker.
+       * config/mips/mips.c (mips_cpu_info_table): Adjust for enum
+       processor_type value renaming.  Add support for MIPS32R2.
+       Clean up comments, and move "sb1" entry with other MIPS64 CPU
+       entries.
+       (override_options): Reimplement -mipsN option handling so that
+       it will work correctly for -mips32r2.  Avoid branch-likely
+       instructions on MIPS32R2.
+       * config/mips/mips.md (mulsi3_mult3): Add support for MIPS32R2.
+       (extendhisi2): Use extendhisi2_hw if ISA_HAS_SEB_SEH.
+       (extendqisi2): Use extendqisi2_hw if ISA_HAS_SEB_SEH.
+       (extendhisi2_hw, extendqisi2_hw): New.
+       * config/mips/netbsd.h (TARGET_CPU_CPP_BUILTINS): Add support
+       for MIPS32R2.  Add new predefine __mips_isa_rev for MIPS32,
+       MIPS32R2, and MIPS64.
+       (LINK_SPEC): Pass -mips32r2 to linker.
+       * config/mips/t-isa3264: Built -mips32r2 multilibs.
+       * doc/invoke.texi (MIPS Options): Add -mips32r2, add support
+       for mips32r2 in the -march description.  Alphabetically sort
+       CPU names in the -march description.  Add long-missed -mips32
+       and -mips64 to MIPS option summary.
+
+       * config.gcc: Update copyright years to include 2003.
+       * config/mips/mips.c: Likewise.
+       * config/mips/mips.h: Likewise.
+       * config/mips/mips.md: Likewise.
+       * config/mips/netbsd.h: Likewise.
+       * doc/invoke.texi: Likewise.
+
+2003-01-08  Andreas Schwab  <schwab@suse.de>
+
+       * aclocal.m4 (gcc_AC_INITFINI_ARRAY): Fix spelling of cache
+       variable.
+       * configure: Regenerated.
+
+2003-01-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (output_logical_op): Replace byte/word
+       extraction of det with b0, b1, w0, w2, etc.
+       (compute_logical_op_length): Likewise.
+       (compute_logical_op_cc): Likewise.
+
+2003-01-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and
+       HIGH on all variants.
+
+Wed Jan  8 14:06:34 CET 2003  Josef Zlomek <zlomj9am@artax.karlin.mff.cuni.cz>
+       
+       * Makefile.in (PARTITION_H): New.
+       (BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
+       * basic-block.h: Include hard-reg-set.h.
+
+2003-01-08  Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm.h (ENABLE_XF_PATTERNS): Delete.
+       * arm.md (addxf3, subxf3, mulxf3, divxf3, modxf3, negxf2, absxf2)
+       (sqrtxf2, floatsixf2, fix_truncxfsi2, truncxfsf2, truncxfdf2)
+       (extendsfxf2, extenddfxf2, movxf, cmpxf, cmpxf_insn)
+       (cmpxf_trap): Delete.
+       (movxf_hard_insn): Remove test of ENABLE_XF_PATTERNS.
+
+Wed Jan  8 12:10:57 CET 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (adddi3_carry_rex64, subdi3_carry_rex64): Name pattern.
+       (addhi3_carry, addqi3_carry, subhi3_carry, subqi3_carry): New patterns.
+       (add??cc): New expanders.
+       * i386.c (expand_int_addcc): New function.
+       * i386-protos.h (expand_int_addcc): Declare.
+
+       * alias.c (memory_modified_1): New static function.
+       (memory_modified): New static varaible.
+       (memory_modified_in_insn_p): New global function.
+       * rtl.h (memory_modified_in_insn_p): Declare.
+       * rtlanal.c (modified_between_p, modified_in_p): Be smart about memory
+       references.
+
+       * expr.h (emit_conditional_add): Declare.
+
+2003-01-07  Janis Johnson  <janis187@us.ibm.com>
+
+       PR other/8947
+       * doc/invoke.texi (-malign-double): Explain that the option breaks
+       binary compatibility.
+
+2003-01-08  Andreas Schwab  <schwab@suse.de>
+
+       * config.gcc (m68k-*-linux*): Don't set extra_parts and gnu_ld,
+       should come from the generic *-*-linux* entry.
+
+Tue Jan  7 22:29:56 CET 2003  Jan Hubicka  <jh@suse.cz>
+
+       * cselib.c (cselib_current_insn_in_libcall): New static variable.
+       (new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
+       we are inside libcall.
+       * cselib.h (elt_loc_list): Add in_libcall.
+       * gcse.c (do_local_cprop): Do not copy propagate using insns
+       in libcalls.
+
 2003-01-07  David Edelsohn  <edelsohn@gnu.org>
 
        * doc/tm.texi (TARGET_SCHED_VARIABLE_ISSUE): CLOBBER and USE do
@@ -25,17 +336,17 @@ Tue Jan  7 21:46:57 CET 2003  Jan Hubicka  <jh@suse.cz>
 
 2003-01-07  Andreas Schwab  <schwab@suse.de>
 
-        * configure.in: Restore CFLAGS before gcc_AC_INITFINI_ARRAY.
-        Move --enable-initfini-array check ...
-        * aclocal.m4 (gcc_AC_INITFINI_ARRAY): ... here.  Define
-        HAVE_INITFINI_ARRAY also when --enable-initfini-array is given.
-        Don't AC_SUBST gcc_cv_initfinit_array.  Use AC_TRY_RUN.
-        * configure: Rebuild.
+       * configure.in: Restore CFLAGS before gcc_AC_INITFINI_ARRAY.
+       Move --enable-initfini-array check ...
+       * aclocal.m4 (gcc_AC_INITFINI_ARRAY): ... here.  Define
+       HAVE_INITFINI_ARRAY also when --enable-initfini-array is given.
+       Don't AC_SUBST gcc_cv_initfinit_array.  Use AC_TRY_RUN.
+       * configure: Rebuild.
 
 2003-01-07  Richard Henderson  <rth@redhat.com>
 
-        * alias.c (find_base_value): Only use new_reg_base_value shortcut
-        if the register is set once.
+       * alias.c (find_base_value): Only use new_reg_base_value shortcut
+       if the register is set once.
 
 2003-01-07  Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
   
@@ -211,7 +522,7 @@ Tue Jan  7 21:46:57 CET 2003  Jan Hubicka  <jh@suse.cz>
        * fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
        of *both* the file name and the fix name.
 
-2002-01-04  John David Anglin  <dave.anglin@nrc.ca>
+2003-01-04  John David Anglin  <dave.anglin@nrc.ca>
 
        * config.gcc (hppa*64*-*-hpux11*): Define extra_parts.  Don't use
        collect2.