+2002-06-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * Makefile.in (libgcc.mk): Depend on specs.
+
+Fri Jun 14 12:15:11 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (mulsi3): Update way how to find insns in a sequence.
+
+Fri Jun 14 12:04:02 2002 Dhananjay R. Deshpande <dhananjayd@kpit.com>
+
+ * sh.h: Define HARD_REGNO_RENAME_OK
+ * sh.c: sh_hard_regno_rename_ok: New. If current function has
+ interrupt_handler attribute, only registers saved on stack are OK.
+ * sh-protos.h: Declare sh_hard_regno_rename_ok.
+
+2002-06-14 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.md (jump): Emit jump insn.
+ (call_pcrel): Get pattern of the result of gen_call_site.
+ (call_value_pcrel, sibcall_pcrel, GOTaddr2picreg): Likewise.
+
+2002-06-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h (struct cpp_buffer): Remove saved_line_base.
+ * cpptrad.c: Update comments.
+ (skip_whitespace, copy_comment): Take a new parameter.
+ (skip_escaped_newlines): Don't duplicate escaped newline test.
+ (copy_comment): Different location for CUR, decide here how
+ to copy / replace the comment.
+ (skip_whitespace): Copy whitespace.
+ (_cpp_overlay_buffer, _cpp_remove_overlay): Don't play with line_base.
+ (scan_out_logical_line): Let copy comment handle keeping or
+ replacing comments.
+ (scan_parameters, _cpp_create_trad_definition): Update.
+
+2002-06-13 Alan Lehotsky <apl@alum.mit.edu>
+
+ * reload.c (get_secondary_mem,find_reloads_address,
+ find_reloads_address_1): Pass reference to MEM to find_reloads_address
+ so that LEGITIMIZE_RELOAD_ADDRESS will be called.
+
+2002-06-13 Jessica Han <jessica@cup.hp.com>
+
+ * defaults.h (TARGET_VTABLE_ENTRY_ALIGN): New.
+ (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
+ * doc/tm.texi: Document them.
+ * config/ia64/ia64.h (TARGET_VTABLE_ENTRY_ALIGN): New.
+ (TARGET_VTABLE_DATA_ENTRY_DISTANCE): New.
+ (TARGET_VTABLE_USES_DESCRIPTORS): 4 word descriptors for 32-bit mode.
+ (ASM_OUTPUT_FDESC): Likewise.
+
+2002-06-13 Eric Christopher <echristo@redhat.com>
+
+ * diagnostic.c (output_format): Fix thinko.
+
+Thu Jun 13 22:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/sh/coff.h (HAS_INIT_SECTION, INVOKE__MAIN): Don't define.
+ (DWARF2_UNWIND_INFO): Define to 0.
+
+ * config/sh/sh.c (calc_live_regs): Don't use initial_value
+ optimization for PR_MEDIA_REG.
+
+2002-06-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h (_cpp_lex_identifier_trad): Remove.
+ * cpplib.c (end_directive): Don't skip, always remove overlay
+ apart from #define.
+ (prepare_directive_trad): Handle NULL pfile->directive.
+ (_cpp_handle_directive): Always call prepare_directive_trad
+ if traditional.
+ * cppmain.c (check_multiline_token): Rename account_for_newlines,
+ generalize inputs.
+ (scan_translation_unit_trad): Use it.
+ * cpptrad.c (skip_comment): Rename copy_comment, copy comment to
+ output, get escaped newline in comment close correct.
+ (check_output_buffer, skip_whitespace): Update.
+ (_cpp_lex_identifier_trad): Remove.
+ (scan_out_logical_line): Handle -C and comments in directives
+ properly.
+
+Thu Jun 13 20:18:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config.gcc: Add support for sh[234]*-*-elf*, sh[2346lbe]*-*-linux*.
+ * config/sh/linux.h (TARGET_DEFAULT): Use TARGET_CPU_DEFAULT.
+ * sh.h (SELECT_SH1, SELECT_SH2, SELECT_SH3, SELECT_SH3E): New macros.
+ (SELECT_SH4_NOFPU, SELECT_SH4_SINGLE_ONLY, SELECT_SH4): Likewise.
+ (SELECT_SH4_SINGLE, SELECT_SH5_64, SELECT_SH5_64_NOFPU): Likewise.
+ (SELECT_SH5_32, SELECT_SH5_32_NOFPU, SELECT_SH5_COMPACT): Likewise.
+ (SELECT_SH5_COMPACT_NOFPU): Likewise.
+ (TARGET_SWITCHES): Use them.
+ (TARGET_CPU_DEFAULT): Define if not already defined.
+ (TARGET_DEFAULT): Use it.
+ (LINK_DEFAULT_CPU_EMUL): Value now depends on TARGET_CPU_DEFAULT.
+ * config/sh/t-linux (MULTILIB_OPTIONS): Use MULTILIB_ENDIAN.
+ * config/sh/t-monolib: New file.
+
+2002-06-13 Roger Sayle <roger@eyesopen.com>
+
+ * toplev.c (rest_of_compilation): Simplify (and correct) the
+ logic of the first delete-null-pointer-checks pass.
+
+Thu Jun 13 18:24:17 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_movstr): Fix pasto.
+
+Thu Jun 13 18:18:17 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (find_valid_class): Fix thinko in my previous patch.
+
+2002-06-13 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): New macro.
+ * config/s390/linux.h (TARGET_OS_CPP_BUILTINS): New macro.
+ (CPP_PREDEFINES, CPP_SPEC, CPP_ARCH31_SPEC, CPP_ARCH64_SPEC): Remove.
+ (EXTRA_SPECS): Remove cpp_arch31 and cpp_arch64.
+
+2002-06-13 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * tree-inline.c (expand_call_inline): Don' mess with _DECL
+ fields.
+
+2002-06-13 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (output_format): Recognize "%H" as a format
+ specifier for a location_t.
+ (text_specifies_location): New function.
+ (diagnostic_set_info): Use it.
+
+2002-06-13 Jeffrey Law <law@redhat.com>
+
+ * emit-rtl.c (static_regno_reg_rtx): Define.
+ (init_emit_once): Initialize static_regno_reg_rtx.
+ (init_emit): Copy static_regno_reg_rtx into regno_reg_rtx instead
+ of building new hard reg objects once per function.
+ (gen_rtx_REG): Try to share hard regs.
+ * regclass.c (init_fake_stack_mems): New function broken out from
+ init_regs.
+ * rtl.h (init_fake_stack_mems): Declare.
+ * toplev.c (lang_independent_init): Call init_regs before
+ init_emit_once. Call init_fake_stack_mems after init_emit_once.
+
+ * i386.md (extenddfxf2, extenddftf2): Fix typo/thinko.
+
+ * alias.c (argument_registers): Remove.
+ (init_alias_once): Initialize static_reg_base_value here. Remove
+ initialization of argument_registers.
+ (init_alias_once_per_function): Remove.
+ (init_alias_analysis): Copy all the entries from static_reg_base_value
+ into new_reg_base_value all at once.
+ * rtl.h (init_alias_once_per_function): Remove declaration.
+ * function.c (prepare_function_start): Do not call
+ init_alias_once_per_function.
+
+ * caller-save.c (init_caller_save): Use gen_rtx_INSN instead of
+ starting a sequence and emitting an INSN.
+
+2002-06-13 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/r3900.h (MIPS_CPU_STRING_DEFAULT): Make lower case.
+
+2002-06-13 David S. Miller <davem@redhat.com>
+
+ * expmed.c (init_expmed): Remove duplicate init of 'reg'.
+
+2002-06-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (end_directive): Handle line skipping. Only remove
+ the rest of the line if the directive was valid.
+ * cppmacro.c (_cpp_push_text_context): Set NODE_DISABLED when
+ expanding a traditional macro.
+ * cpptrad.c (recursive_macro): New.
+ (read_logical_line_trad): Handle skipping.
+ (scan_out_logical_line): Continue after a successful directive.
+ Don't expand macros whilst skipping, or if recursing.
+ (_cpp_create_trad_definition): scan_out_logical_line now sets
+ the output current position.
+
+2002-06-12 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.md (prefetch, prefetch_di, prefetch_si): New
+ patterns.
+ * config/mips/mips.h (RTX_COSTS): Fix formatting.
+
+2002-06-12 Eric Christopher <echristo@redhat.com>
+
+ From Chris Demetriou <cgd@broadcom.com>
+ * config/mips/mips.h (ISA_HAS_FP4): Add ISA_MIPS64 and fix
+ comment.
+ (ISA_HAS_MADD_MSUB): Ditto.
+ (ISA_HAS_NMADD_NMSUB): Ditto.
+
+2002-06-12 Eric Christopher <echristo@redhat.com>
+
+ * config.gcc: Consolidate little endian handling and
+ little/big endian targets.
+ * config/mips/elfl.h: Remove file.
+ * config/mips/elfl64.h: Ditto.
+ * config/mips/ecoffl.h: Ditto.
+ * config/mips/r3900.h (SUBTARGET_CPP_SPEC): Remove.
+
+2002-06-12 Geoffrey Keating <geoffk@redhat.com>
+
+ * gengtype.h (xvasprintf): New prototype.
+ (xasprintf): New prototype.
+ (struct outf): New.
+ (get_output_file): Return an outf_p.
+ (header_file): Is now an outf_p.
+ (base_files): Now are outf_p.
+ (oprintf): New.
+ * gengtype.c: Replace all output FILE * with outf_p; use oprintf
+ rather than stdio operations. Use xasprintf in a few places,
+ when appropriate.
+ (xvasprintf): New.
+ (xasprintf): New.
+ (struct filemap): Delete.
+ (files): Delete.
+ (output_files): New.
+ (oprintf): New.
+ (create_file): Create an outf_p. Add parameter to indicate output
+ file name, change all callers.
+ (open_base_files): Create gtype-desc.c here.
+ (get_output_file_with_visibility): Rewrite.
+ (get_output_file_name): Just look at 'name' field in struct outf.
+ (close_output_files): Rewrite.
+
+2002-06-12 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/vax/vax.h (MASK_UNIX_ASM, MASK_VAXC_ALIGNMENT)
+ (MASK_G_FLOAT): Define.
+ (TARGET_UNIX_ASM, TARGET_VAXC_ALIGNMENT, TARGET_G_FLOAT): Use them.
+ (TARGET_SWITCHES): Likewise.
+ (TARGET_DEFAULT): Likewise.
+
+2002-06-12 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/mips/elf.h (DWARF2_DEBUG_INFO): Define.
+ * config/mips/mips.c (mips_output_filename): Don't print a
+ ".file" directive if we are using DWARF-2.
+ (mips_output_function_prologue): Do not emit source file
+ name for TARGET_GAS.
+
+Wed Jun 12 16:45:13 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (shift patterns): Use (TARGET_SHIFT1 || optimize_size) to
+ decide whether emit the short opcode.
+ * i386.h (x86_shift1): Declare.
+ (TARGET_SHIFT1): New macro.
+ * i386.c (x86_shift1): New global variable.
+
+ * toplev.c (rest_of_compilation): Call find_basic_block pre-loop
+ unconditionally; make loop to rebuild CFG; kill unnecesary
+ find_basic_block calls; kill compute_bb_for_insn call.
+ * cfgbuild.c (find_basic_blocks): Kill compute_bb_for_insn call.
+ * haifa-sched.c (sched_init): Likewise.
+ * ssa-ccp.c (ssa_const_prop): Likewise.
+ * ssa-dce.c (ssa_eliminate_dead_code): Likewise.
+
+2002-06-11 David S. Miller <davem@redhat.com>
+
+ * emit-rtl.c (emit_*_scope): Only access INSN_SCOPE if
+ active_insn_p.
+
+2002-06-11 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (builtin_define_type_max): New.
+ (cb_register_builtins): Define __SCHAR_MAX__, __SHRT_MAX__,
+ __INT_MAX__, __LONG_MAX__, __LONG_LONG_MAX__, __CHAR_BIT__.
+
+ From Joseph S. Myers:
+ * glimits.h: Rewrite to expect the double underscore definitions
+ from the compiler.
+
+ * config/alpha/unicosmk.h, config/avr/avr.h, config/h8300/h8300.h,
+ config/i386/linux64.h, config/ia64/aix.h, config/ia64/hpux.h,
+ config/ia64/ia64.h, config/m68hc11/m68hc11.h, config/m68hc11/m68hc12.h,
+ config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
+ config/pa/pa.h, config/rs6000/aix43.h, config/rs6000/aix51.h,
+ config/rs6000/linux64.h, config/s390/linux.h, config/sh/sh.h,
+ config/stormy16/stormy16.h: Don't define any of __SHRT_MAX__,
+ __INT_MAX__, __LONG_MAX__, or __LONG_LONG_MAX__.
+
+2002-06-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (ALPHA_BUILTIN_THREAD_POINTER): New.
+ (ALPHA_BUILTIN_SET_THREAD_POINTER): New.
+ (code_for_builtns): Update.
+ (alpha_init_builtins): Add __builtin_thread_pointer and
+ __builtin_set_thread_pointer.
+ (alpha_expand_builtin): Handle void builtins.
+ * doc/extend.texi (Alpha Built-in Functions): Update.
+
+2002-06-11 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/6997
+ * config/cris/cris.md ("sleu"): Set attribute "cc" to "none".
+
+2002-06-11 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc: Make the name of the extra-modes file adjustable
+ by target stanzas.
+ (s390x, strongarm, xscale stanzas): Use this facility.
+ * configure.in: Update to match.
+ * configure: Regenerate.
+
+2002-06-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_minmax): Treat unsigned
+ max/mins as unsigned GE compares.
+
+2002-06-11 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (vax-*-bsd*): Add vax/bsd.h to ${tm_file}.
+ * config/vax/bsd.h: New file.
+ * config/vax/netbsd.h: Add missing notice.
+ (CPP_PREDEFINES): Remove.
+ (TARGET_OS_CPP_BUILTINS): Define.
+ (CPP_SPEC): Use NETBSD_CPP_SPEC.
+ * config/vax/openbsd.h: Update copyright years.
+ (CPP_PREDEFINES): Remove.
+ (TARGET_OS_CPP_BUILTINS): Define.
+ * config/vax/ultrix.h: Likewise.
+ * config/vax/vaxv.h: Likewise.
+ * config/vax/vms.h: Likewise.
+ * config/vax/vax.h (TARGET_CPU_CPP_BUILTINS): Define.
+ (CPP_PREDEFINES, CPP_SPEC): Remove.
+
+Wed Jun 12 01:50:28 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (addqi_1_slp, subqi_1_slp
+ (andqi_ext0, testqi_ext0): Remove unnecesary check.
+ (addhi*, addqi*): Simplify "dec" condition.
+ (testsi to testqi splitters): Remove TARGET_PROMOTE_QImode check.
+ (and, or, xor to QImode splitters): New.
+ (iorqi_ext*): New.
+ (xorqi_ext_0): New.
+ (xorqi_ext_1): Rename to xorqi_ext_2; bring to sync with and versions.
+ (andqi_ext_1_rex64): New.
+ (ashrqi*_slp): New.
+ (ashlqi*_slp): New.
+ (lshlqi*_slp): New.
+ (rotrqi3*_slp): New.
+ (rotlqi3*_slp): New.
+
2002-06-11 Geoffrey Keating <geoffk@redhat.com>
* config.gcc (powerpc*-*-*, rs6000-*-*-*): Don't bother including
match semantics.
* diagnostic.c: Adjust calls to diagnostic_count_error through out.
(diagnostic_count_diagnostic): Make aware of other kinds of
- diagnostics.
+ diagnostics.
(diagnostic_initialize): Initialize warnings_are_errors_message field.
2002-06-11 Tom Tromey <tromey@redhat.com>
2002-06-11 Richard Henderson <rth@redhat.com>
- * defaults.h (EH_FRAME_SECTION_NAME): Don't define if
+ * defaults.h (EH_FRAME_SECTION_NAME): Don't define if
DWARF2_UNWIND_INFO is false.
2002-06-11 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/t-xtensa (LIBGCC1_TEST, CROSS_LIBGCC1): Delete.
-2002-06-11 Ulrich Weigand <uweigand@de.ibm.com>
-
* config/s390/s390.c (emit_prologue): gen_store_multiple
returns an insn now, not a pattern.
2002-06-11 Jeffrey Law <law@redhat.com>
+ * emit-rtl.c (try_split): Use INSN_LAST, not LAST_INSN to get the
+ last insn created by the splitter.
+
* caller-save.c (init_caller_save): Move creation of SAVEINSN
and RESTINSN into into the scope of the sequence.
2002-06-11 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/s390.md (reload_base, ltorg): Remove.
- * s390.c (s390_stop_dump_lit_p, s390_dump_literal_pool,
+ * s390.c (s390_stop_dump_lit_p, s390_dump_literal_pool,
s390_asm_output_pool_prologue, s390_pool_start_insn): Remove.
- * s390-protos.h (s390_stop_dump_lit_p, s390_dump_literal_pool,
+ * s390-protos.h (s390_stop_dump_lit_p, s390_dump_literal_pool,
s390_asm_output_pool_prologue): Likewise.
* s390.h (s390_pool_start_insn): Likewise.
- * s390.c (s390_output_symbolic_const): Remove support for
+ * s390.c (s390_output_symbolic_const): Remove support for
old-style pool chunks.
(s390_function_epilogue): Likewise.
- (s390_output_constant_pool): Likewise. Also, fix incorrect
+ (s390_output_constant_pool): Likewise. Also, fix incorrect
alignment for 64-bit literal pools.
(print_operand_address): Remove 'y' and 'Y' format flags.
- * s390.h (ASM_OUTPUT_POOL_PROLOGUE): Remove support for
+ * s390.h (ASM_OUTPUT_POOL_PROLOGUE): Remove support for
old-style pool chunks.
(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
(ASM_OUTPUT_POOL_EPILOGUE): Remove.
* s390.c (consttable_operand): New function.
* s390-protos.h (consttable_operand): Declare it.
* s390.h (PREDICATE_CODES): Add consttable_operand.
- * s390.md (consttable_qi, consttable_hi, consttable_si, consttable_di,
- consttable_sf, consttable_df, pool_start_31, pool_end_31,
+ * s390.md (consttable_qi, consttable_hi, consttable_si, consttable_di,
+ consttable_sf, consttable_df, pool_start_31, pool_end_31,
pool_start_64, pool_end_64, reload_base, reload_base2): New insns.
* s390.c (struct constant, struct constant_pool): New data types.
(constant_modes, gen_consttable): New variables.
- (s390_start_pool, s390_end_pool, s390_add_pool,
+ (s390_start_pool, s390_end_pool, s390_add_pool,
s390_dump_pool, s390_free_pool): New functions.
- (s390_chunkify_pool): Completely reimplement literal pool
+ (s390_chunkify_pool): Completely reimplement literal pool
overflow handling.
* s390.c (s390_pool_overflow): New variable.
* s390.h (s390_pool_overflow): Declare it.
- * s390.md (cjump, icjump): Use it to adapt length for out-of-range
+ * s390.md (cjump, icjump): Use it to adapt length for out-of-range
jumps in literal pool overflow situations.
* s390.c (s390_decompose_address): Accept new-style pool chunk offsets.
- (s390_frame_info): Account for possible use of RETURN_REGNUM
+ (s390_frame_info): Account for possible use of RETURN_REGNUM
by new literal pool overflow code.
(s390_emit_prologue): Likewise.
* combine.c (try_combine): Expect insn lists from split generator.
* reorg.c (relax_delay_slots): Emit SEQUENCE into insn list by
hand.
-
+
2002-06-11 Roger Sayle <roger@eyesopen.com>
Andreas Jaeger <aj@suse.de>
2002-06-11 Andreas Schwab <schwab@suse.de>
- * config/m68k/m68k.h (PREDICATE_CODES): Define.
+ * config/m68k/m68k.h (PREDICATE_CODES): Define.
2002-06-11 Eric Christopher <echristo@redhat.com>
2002-06-10 Tim Josling <tej@melbpc.org.au>
- First steps to making treelang documentation compliant, based on
+ First steps to making treelang documentation compliant, based on
instructions in sourcebuild.texi. Also add to gcc.c list of
default languages.