+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.md: Simplify certain comparisons of
+ const_int.
+
+2004-01-21 Andrew Pinski <apinski@apple.com>
+
+ PR target/13785
+ * config/rs6000/rs6000.md (call_value): Force operand
+ 1 not operand 0 into a register.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cpperror.c, cpptrad.c, longlong.h, params.def, rtl.def,
+ unwind-dw2-fde.h: Update copyright.
+
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h: Update copyright.
+ * pa.h: Likewise.
+ * pa.md: Likewise.
+
+2004-01-21 Caroline Tice <ctice@apple.com>
+
+ PR target/12308
+ * config/i386/i386.md (fix_truncxfdi2): Add clause to clobber
+ flags register.
+ (fix_truncdfdi2): Likewise.
+ (fix_truncsfdi2): Likewise.
+ (*fix_truncdi_1): Likewise.
+ (fix_truncxfsi2): Likewise.
+ (fix_truncdfsi2): Likewise.
+ (fix_truncsfsi2): Likewise.
+ (*fix_truncsi_1): Likewise.
+ (fix_truncxfhi2): Likewise.
+ (fix_truncdfhi2): Likewise.
+ (fix_truncsfhi2): Likewise.
+ (*fix_trunchi_1): Likewise.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c, basic-block.h, c-common.c, c-common.h,
+ c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c,
+ calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
+ combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c,
+ cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h,
+ defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
+ expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c,
+ genautomata.c, genconditions.c, genemit.c, genflags.c,
+ gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c,
+ ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c,
+ langhooks-def.h, langhooks.c, langhooks.h, line-map.c,
+ line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
+ ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
+ rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
+ target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h,
+ unwind.h, varray.c, varray.h: Update copyright.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/coff.h: Update copyright.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3,
+ ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time,
+ ultrix_unistd): New hacks.
+ * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK,
+ ULTRIX_CONST2_CHECK): Add checks.
+ * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise.
+ * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise.
+ * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise.
+ * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise.
+ * fixinc/tests/base/locale.h: New file.
+ * fixinc/fixincl.x: Rebuilt.
+
+2004-01-21 Andreas Jaeger <aj@suse.de>
+ Michael Matz <matz@suse.de>
+
+ * doc/extend.texi (Extended Asm): Clarify memory clobber.
+
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
+
+ * crtstuff.c (frame_dummy, __do_global_ctors_1): Call
+ _Jv_RegisterClasses through a function pointer.
+
+2004-01-21 Falk Hueffner <falk@debian.org>
+
+ PR target/12898
+ * config/alpha/alpha.c (alpha_emit_set_const_1): If
+ no_new_pseudos, use gen_rtx_SET directly for SImode constants
+ which need multiple instructions to emit.
+
+2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (CPP_SPEC): Define.
+
+2004-01-21 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (merge_decls): Kill different_binding_level and
+ different_tu arguments; simplify throughout.
+ (duplicate_decls): Likewise.
+ (pushdecl, merge_translation_unit_decls): Update calls to
+ duplicate_decls.
+
+2004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and
+ $(SYSTEM_H).
+ (print-rtl1.o): Depend on $(SYSTEM_H).
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR bootstrap/12730
+ * configure.ac: Delete definition and subsitution of docdir.
+ Add info, man, srcman and srcinfo to target hooks. Create doc/
+ directory.
+ * configure: Regenerate.
+ * Makefile.in: Don't substitute docdir and delete all references
+ throughout.
+ (MAKEINFOFLAGS): Define.
+ (stmp-docobjdir): Delete.
+ (INFOFILES, MANFILES): Define.
+ (info): Call lang.info, srcinfo and lang.srcinfo.
+ (generated-manpages): Call lang.man, srcman and lang.srcman.
+ (srcinfo, srcman): New rules to copy back files to source directory.
+ (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule.
+ (install-man): Revamp rule.
+ (clean): Update dvi directory.
+ (distclean): Delete TAGS from front end directorys.
+ (maintainer-clean): Delete all document files in source directory.
+
+ objc/Make-lang.in (objc.man, objc.info): Dummy entries.
+ (objc.srcman, objc.srcinfo): Likewise.
+
+2004-01-20 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(math_exception): bypass only for glibc.
+ (matherr_decl): rename & relocate as exception_structure.
+ This fix must precede the math_exception fix.
+
+2004-01-20 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_convert): Rename to fold_convert_const.
+ (fold_convert_const): Change arguments to take a tree_code,
+ a type and the operand/expression to be converted. Return
+ NULL_TREE if no simplification is possible. Add support for
+ FIX_CEIL_EXPR and FIX_FLOOR_EXPR in addition to FIX_TRUNC_EXPR.
+ (fold): Handle FIX_CEIL_EXPR and FIX_FLOOR_EXPR.
+ Adjust call to fold_convert to match new fold_convert_const.
+ Avoid modifying the tree passed to fold in-place.
+
+2004-01-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define.
+ * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT.
+ * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document.
+
+2004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes.
+ * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d):
+ Likewise. Handle frames larger than 0x7fffffff on 64-bit ports.
+ (emit_move_sequence): Check scratch_reg first in various if statements.
+ Extend source simplification to handle all 64-bit CONST_INTs.
+ (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing
+ frame size.
+ (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for
+ frame offset calculations.
+ * pa.h (NEW_HP_ASSEMBLER): Add comment.
+ (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT,
+ LEGITIMATE_64BIT_CONST_INT_P): Define.
+ (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat
+ any CONST_INT as legitimate during and after reload.
+ (VAL_32_BITS_P, INT_32_BITS): Define.
+ (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (verify_rtx_sharing, copy_insn_1,
+ emit_copy_of_insn_after, emit_copy_of_insn_after): Clobbers
+ containing hard regs are shared.
+ (gen_hard_reg_clobber): New function.
+ (hard_reg_clobbers): New array.
+ * genemit.c (gen_exp): Use gen_hard_reg_clobber.
+ (copy_rtx): Do not copy clobbers containing hard regs.
+ * rtl.h (gen_hard_reg_clobber): Declare.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * varray.c: Include hashtab.h
+ (varray_descriptor): New structure.
+ (hash_descriptor, eq_descriptor, varray_descriptor,
+ print_statistics): New static functions
+ (varray_init, varray_grow): Update statistics
+ (dump_varray_statistics): New function.
+ * varray.h (dump_varray_statistics): Declare.
+ * toplev.c (finalize): Call it.
+ * Makefile.in (varray.o): Add dependency.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c: Include alloc-pool.h
+ (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill.
+ (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare.
+ (new_elt_list, new_elt_loc_list, unchain_one_elt_list,
+ unchain_one_elt_loc_list_pool, unchain_one_value,
+ new_cselib_val): Simplify using allocpool.
+ (cselib_init): Initialize allocpools.
+ (cselib_finish): Finish allocpools.
+ * Makefile.in (cselib.o): Depend on alloc-pool.h
+
+2004-01-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_load_call_address): Make the call insn
+ use $gp if it could be calling a lazy binding stub.
+
+2004-01-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/s390/s390.c (TARGET_PROMOTE_FUNCTION_ARGS): Define.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ * config/s390/s390.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Remove.
+ (STRUCT_VALUE): Remove.
+
+2004-01-20 Denis Chertykov <denisc@overta.ru>
+
+ PR bootstrap/13735
+ * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X
+ register as pointer after reload.
+
+2004-01-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/12440
+ * loop.c: Include ggc.h.
+ (loop_optimize): Run garbage collector between optimization of loops.
+ * Makefile.in (loop.o): Add GGC_H dependency.
+
+2004-01-20 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (function_arg) Handle
+ vector register special in function without prototype.
+ (function_arg_advance): Vector parameters get always
+ GPRs allocated for the linux64 target.
+
+2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK
+ not TARGET_M32RX_MASK.
+
+2004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13557
+ * config/sparc/sparc.c (function_arg): Reorder the cases.
+
+2004-01-19 Per Bothner <per@bothner.com>
+
+ Move cpp_reader's line_maps field to a shared global.
+ * cpphash.h (cpp_reader): Rename line_maps field to line_table
+ and change the type to a pointer rather than a struct.
+ * cppinit.c (cpp_push_main_field): Adjust accordingly.
+ * cpplib.c (do_include_common, _cpp_do_file_change, cpp_get_callbacks):
+ Likewise.
+ * cppfiles.c (validate_pch): Likewise.
+ * cppmacro.c (_cpp_warn_if_unused_macro, _cpp_builtin_macro_text):
+ Likewise.
+ * cpperror.c (print_location): Likewise.
+ * cpplib.h (cpp_create_reader): New line_maps pointer parameter.
+ * cppinit.c (cpp_create_reader): Handle new parameter.
+ (cpp_destroy): Don't free line_maps - that's no longer our job.
+ * input.h (line_table): New variable.
+ * toplev.c (line_table): Declare variable.
+ (general_init): Initialize line_table.
+ * c-opts.c (c_common_init_options): Pass line_table to
+ cpp_create_reader.
+ * fix-header.c (read_scan_file): New local variable line_table.
+ Initialize, and pass it to cpp_create_reader.
+ * Makefile.in (LIBS, LIBDEPS): Add libcpp.a.
+ (C_AND_OBJC_OBJS, fix-header): Remove redundant libcpp.a.
+
+2004-01-19 Per Bothner <per@bothner.com>
+
+ Implement a cache for linemap_lookup.
+ * line-map.h (struct_line_maps): Add cache field.
+ * line-map.c (linemap_init): Zero cache field.
+ (linemap_add): Set cache field to offset of newly allocated map.
+ (linemap_lookup): Use and set cache field.
+
+2004-01-20 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR optimization/13567
+ * cse.c (cse_basic_block): Call cse_insn with a non-null
+ libcall_insn for the last SET insn of a no-confilict block.
+
2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
- * Makefile.in (target_noncanonical, program_transform_name): Use
+ * Makefile.in (target_noncanonical, program_transform_name): Use
immediate define instead of deferred.
- (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
+ (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of
deferred backquote.
2004-01-19 Richard Henderson <rth@redhat.com>
- * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
- don't check memory mode.
- (unaligned_memory_operand): Likewise.
- (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
- abort for op0 not MEM.
+ * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
+ don't check memory mode.
+ (unaligned_memory_operand): Likewise.
+ (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
+ abort for op0 not MEM.
- * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
- is not a reg, copy to a scratch first.
- (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
- unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
- unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
- (reload_inqi, reload_inhi): Fix mode of op0.
- (reload_inqi_help, reload_inhi_help, reload_outqi_help,
- reload_outhi_help): Likewise. Use define_insn_and_split.
+ * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
+ is not a reg, copy to a scratch first.
+ (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
+ unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
+ unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
+ (reload_inqi, reload_inhi): Fix mode of op0.
+ (reload_inqi_help, reload_inhi_help, reload_outqi_help,
+ reload_outhi_help): Likewise. Use define_insn_and_split.
- * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
- as well as $29 dead.
+ * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
+ as well as $29 dead.
2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
* contrib.texi: Update Paolo Carlini's entry. New entries for
Jerry Quinn and Petur Runolfsson.
-
+
2004-01-19 Roger Sayle <roger@eyesopen.com>
* config/i386/i386.md (*movhi_1, *movqi_1): When optimizing for
2004-01-17 Ziemowit Laski <zlaski@apple.com>
* objc/objc-act.c (build_objc_method_call): Use target
- hooks instead of macros to determine if ..._stret
+ hooks instead of macros to determine if ..._stret
dispatchers should be used (NeXT runtime only).
2004-01-17 Roger Sayle <roger@eyesopen.com>
* config/alpha/vms.h (STRUCT_VALUE_REGNUM): Remove #undef.
(STRUCT_VALUE): Remove.
-2003-01-14 Steven Bosscher <stevenb@suse.de>
+2004-01-14 Steven Bosscher <stevenb@suse.de>
* system.h: Poison PROMOTED_MODE
* integrate.c (expand_inline_function): Don't mention the