+2002-05-02 Loren J. Rittle <ljrittle@acm.org>
+
+ * doc/install.texi (*-*-freebsd*): Update to latest status.
+
+2002-05-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/6540
+ * config.gcc (sparc*-*-solaris2*): Set float_format to i128.
+ * config/float-sparc.h: Assume 128-bit long double if
+ __LONG_DOUBLE_128__ is defined.
+
+2002-05-02 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genattrtab.c (write_function_unit_info): Add a dummy element
+ when num_units == 0.
+
+2002-05-02 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * predict.c: (propagate_freq, estimate_bb_frequencies): Use
+ TYPE_MODE (double_type_node) instead of DFmode.
+
+Thu May 2 19:50:04 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (try_redirect_by_replacing_jump): Do not kill computed
+ jumps post reload.
+ * toplev.c (rest_of_compilation): Revert Richard's patch.
+
+2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa/x-ada (ADA_CFLAGS): Rename to X_ADA_CFLAGS.
+
+2002-05-02 Catherine Moore <clm@redhat.com>
+
+ * config/v850/v850.h (TRAMPOLINE_TEMPLATE): Change r5 to r20.
+
+2002-05-02 Kazu Hirata <kazu@hxi.com>
+
+ * combine.c: Fix comment typos.
+ * expr.c: Likewise.
+ * genautomata.c: Likewise.
+ * stmt.c: Likewise.
+ * tree.h: Likewise.
+
+2002-05-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi: State GNAT version requirements.
+
+2002-05-02 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/fr30/fr30.h (GO_IF_LEGITIMATE_ADDRESS): Accept any form
+ of the frame pointer or arg pointer register which strict register
+ checking is not enabled.
+
+2002-05-02 Aldy Hernandez <aldyh@redhat.com>
+
+ * gcc.dg/altivec-8.c: New.
+
+ * config/rs6000/rs6000.c (rs6000_legitimate_address): Disallow
+ PRE_INC and PRE_DEC for altivec modes.
+
+2002-05-01 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/check.tpl(set-writable): make sure the function exists first
+ * fixinc/inclhack.def(alpha_assert): fix test_text
+ * fixinc/tests/base/assert.h: add in missing result
+
+2002-05-01 Jeff Law <law@redhat.com>
+
+ * pa.h (EXTRA_CONSTRAINT): Don't accept PIC addresses for the
+ 'T' constraint.
+
+2002-05-01 Joel Brobecker <brobecker@gnat.com>
+
+ * dbxout.c (dbxout_type): Emit size information for range types,
+ as well, but only when using GDB extensions.
+
+2002-05-01 Richard Henderson <rth@redhat.com>
+
+ * configure.in (HAVE_GAS_HIDDEN): Replace SPARC feature test with
+ target-independent gnu binutils date test.
+
+2002-05-01 Richard Henderson <rth@redhat.com>
+
+ * cfgcleanup.c (merge_blocks_move_successor_nojumps): Emit dump
+ info before expunging the block.
+
+2002-05-01 Jakub Jelinek <jakub@redhat.com>
+
+ * cppinit.c (cpp_handle_option) [-dM]: Don't set no_output here...
+ (cpp_post_options): ...but here. Disable -dD, -dN and -dI when
+ -M -or -MM is in effect.
+
+2002-05-01 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc: Correct test of --enable-obsolete. Obsolete all
+ A29k configurations.
+ * doc/install.texi: Update to match.
+
+2002-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR bootstrap/6514
+ * varasm.c (globalize_decl): Compare DECL_ASSEMBLER_NAME to check
+ for duplicates. Always loop over whole list.
+
+Wed May 1 10:32:37 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * reload.c (find_reloads, case 'p'): Set BADOP to 0.
+
+2002-05-01 Joel Sherrill <joel@OARcorp.com>
+
+ * config/sparc/t-elf (sparc-rtems, sparc-elf): Build assembly
+ support routines.
+
+2002-05-01 Joel Sherrill <joel@OARcorp.com>
+
+ * config/arm/rtems-elf.h: Add #undef TARGET_VERSION to prevent warning.
+
+2002-05-01 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (abssi2_nopower): Convert to define_insn_and_split.
+ (nabs_nopower): Same.
+ (floatdisf2): New pattern.
+ (absdi2): Convert to define_insn_and_split.
+ (nabsdi2): Same.
+ (trunctfsf2): Same.
+ (floatditf2): Same.
+ (floatsitf2): Same.
+ (fix_trunctfdi2): Same.
+ (fix_trunctfsi2): Same.
+
+2002-05-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi: Update Texinfo version requirement
+ documentation.
+
+2002-05-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/6512, PR target/5628
+ * config/sparc/sparc.md (movdf_insn_v9only_novis): Don't allow >= %f32
+ when memory is not aligned.
+ (movdf_insn_v9only_vis): Likewise.
+ * config/sparc/sparc.h (SECONDARY_INPUT_RELOAD_CLASS): Request a FP_REGS
+ temporary for EXTRA_FP_REGS DFmode load from unaligned memory.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Similarly.
+
+2002-05-01 Aldy Hernandez <aldyh@redhat.com>
+
+ * gcc.dg/altivec-7.c: New.
+
+ * config/rs6000/altivec.h: Cleanup.
+
+2002-04-30 Aldy Hernandez <aldyh@redhat.com>
+
+ * doc/invoke.texi (Option Summary): Add -mvrsave=.
+ (RS/6000 and PowerPC Options): Document -mvrsave=.
+
+ * config/rs6000/rs6000.c (rs6000_altivec_vrsave): New global.
+ (rs6000_altivec_vrsave_string): Same.
+ (rs6000_override_options): Call rs6000_parse_vrsave_option.
+ (rs6000_parse_vrsave_option): New.
+ (rs6000_stack_info): Only generate vrsave instructions when
+ TARGET_ALTIVEC_VRSAVE.
+
+ * config/rs6000/rs6000.h (TARGET_OPTIONS): Add -mvrsave= option.
+ (rs6000_altivec_vrsave_string): Define extern.
+ (rs6000_altivec_vrsave): Same.
+ (TARGET_ALTIVEC_VRSAVE): New.
+
+2002-04-30 Richard Henderson <rth@redhat.com>
+
+ PR opt/6516
+ * toplev.c (rest_of_compilation): Don't run cross-jump before
+ bb-reorder.
+
+2002-04-30 Tom Rix <trix@redhat.com>
+
+ * regrename.c (build_def_use, copyprop_hardreg_forward_1): Sanity
+ check which_alternative.
+
+2002-04-30 Kazu Hirata <kazu@hxi.com>
+
+ * cpplex.c: Fix comment formatting.
+ * function.c: Likewise.
+ * integrate.c: Likewise.
+ * regrename.c: Likewise.
+ * sibcall.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * tree-inline.c: Likewise.
+
+2002-04-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * config.gcc (hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-rtems*,
+ hppa1.0-*-osf*, hppa1.1-*-bsd*, hppa1.1-*-hpux10*, hppa2*-*-hpux10*,
+ hppa1.0-*-hpux10*, hppa*64*-*-hpux11*, hppa1.1-*-hpux11*,
+ hppa2*-*-hpux11*, hppa1.0-*-hpux11*, hppa*-*-lites*): Define xmake_file.
+ * pa/t-linux, pa/t-pa, pa/t-pa64, t-pro (T_ADAFLAGS): Delete.
+ * pa/x-ada: New file. Define ADA_CFLAGS.
+
+2002-04-30 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.h (MMIX_LAST_STACK_REGISTER_REGNUM): Renamed
+ from MMIX_LAST_REGISTER_FILE_REGNUM.
+ (NO_IMPLICIT_EXTERN_C): Remove cryptic obsolete comment.
+ (struct machine_function): New member highest_saved_stack_register
+ previously static variable in mmix.c.
+ (MACHINE_DEPENDENT_REORG): Define.
+ * config/mmix/mmix.c (highest_saved_stack_register): Deleted.
+ (MMIX_OUTPUT_REGNO): New.
+ (mmix_target_asm_function_prologue): Move calculation of last used
+ saved-stack-register into...
+ (mmix_machine_dependent_reorg): New function. Update to also handle
+ !TARGET_ABI_GNU.
+ (mmix_print_operand): Apply MMIX_OUTPUT_REGNO when emitting
+ register names, simplify somewhat by new variable regno.
+ <case 'p'>: Remove fixed FIXME. Always emit highest used saved
+ register.
+ (mmix_print_operand_address): Apply MMIX_OUTPUT_REGNO when
+ emitting register names.
+ (mmix_asm_output_reg_push, mmix_asm_output_reg_pop): Ditto.
+ (mmix_dbx_register_number): Apply MMIX_OUTPUT_REGNO here too.
+ Remove fixed FIXME.
+ * config/mmix/mmix-protos.h (mmix_machine_dependent_reorg):
+ Declare.
+
+ * config/mmix/mmix.md ("divmoddi4"): Update head comment.
+
+2002-04-30 Richard Henderson <rth@redhat.com>
+
+ * config/sparc/sparc.c (emit_soft_tfmode_libcall,
+ emit_soft_tfmode_binop, emit_soft_tfmode_unop, emit_soft_tfmode_cvt,
+ emit_hard_tfmode_operation, emit_tfmode_binop, emit_tfmode_unop,
+ emit_tfmode_cvt): New.
+ * config/sparc/sparc.md (extendsftf2, extenddftf2, trunctfsf2,
+ trunctfdf2, floatsitf2, floatunssitf2, floatditf2, floatunsditf2,
+ fix_trunctfsi2, fixuns_trunctfsi2, fix_trunctfdi2, fixuns_trunctfdi2,
+ addtf3, subtf3, multf3, divtf3, sqrttf2): Use them.
+ * config/sparc/sparc-protos.h: Update.
+
+2002-04-30 Janis Johnson <janis187@us.ibm.com>
+
+ * install.texi (Final install): Add to the list of info to include
+ in a report of a successful bootstrap, and add link to 3.1 list.
+
+Tue Apr 30 19:15:36 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (type): Add new SSE/MMX subtypes, remove usused fop1.
+ (mode): Add vector modes
+ (i387): Kill attribute.
+ (unit): New attribute.
+ (length_immediate): Grok new types.
+ (prefix_data16, prefix_rep, prefix_0f): Fix for SSE/MMX.
+ (modrm): Use "unit".
+ (memory): Handle MMX/SSE properly.
+ (scheduling descriptions): Kill uses of fop1.
+ (sse, mmx, fp patterns): Set type and mode properly.
+
+Tue Apr 30 09:31:59 2002 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (override_options): Default to PA8000 scheduling.
+ * doc/invoke.texi (HP-PA options): Mention newly added 7300
+ scheduling parameter.
+
+ * pa.md (7100lc, 7200, 7300 scheduling): Slightly refine
+ handling of double precision multiplies.
+
+ * pa.md (7100lc, 7200, 7300 scheduling): Refine handling of
+ fpdiv and fpsqrt instructions.
+ (7200 & 7300 scheduling): Fix typo in handling of
+ store-load and store-store penalties.
+
+2002-04-30 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Use MIPS instead of Mips and
+ mips. Add two missing commas.
+
+2002-04-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * doc/contrib.texi (Contributors): Update Paolo Carlini's
+ and Benjamin Kosnik's entries.
+
+2002-04-29 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.h (BRANCH_COST, PREFETCH_BLOCK,
+ SIMULTANEOUS_PREFETCHES): Tune for UltraSPARC-III.
+ * config/sparc/sparc.md (call + jmp 32-bit peepholes): Likewise.
+ * config/sparc/sparc.c (sparc_initialize_trampoline): Likewise.
+
+2002-04-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * combine.c (find_split_point): Use gen_int_mode.
+
+2002-04-29 Vladimir Makarov <vmakarov@redhat.com>
+
+ Merging code from dfa-branch:
+
+ 2002-04-24 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (output_reserv_sets): Fix typo.
+
+ 2002-04-23 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (output_reserv_sets): Remove
+ next_cycle_output_flag.
+
+ Thu Apr 18 08:57:06 2002 Jeffrey A Law (law@redhat.com)
+
+ * sched-rgn.c (init_ready_list): Make the DFA code handle
+ USE/CLOBBER insns in the same way as the traditional
+ scheduler.
+ (new_ready): Similarly..
+
+ 2002-04-17 Vladimir Makarov <vmakarov@redhat.com>
+
+ * haifa-sched.c (schedule_block): Change the DFA state only after
+ issuing insn.
+
+ Wed Apr 17 15:38:36 2002 Jeffrey A Law (law@redhat.com)
+
+ * pa.c (hppa_use_dfa_pipeline_interface): New function.
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
+ (override_options): Add PA7300 scheduling support.
+ (pa_adjust_cost): Update various comments. Properly
+ handle anti and output dependencies when using the
+ DFA scheduler.
+ (pa_issue_rate): Add PA7300 scheduling support.
+ (pa_can_combine_p): Call extract_insn before calling
+ constrain_operands (taken from mainline tree).
+ * pa.h (enum processor_type): Add PROCESSOR_PA7300.
+ * pa.md (cpu attr): Add 7300. Rewrite pipeline
+ descriptions using DFA descriptions. Add PA7300
+ scheduling support.
+
+ 2002-03-30 David S. Miller <davem@redhat.com>
+
+ Add UltraSPARC-III DFA scheduling support.
+ * config/sparc/sparc.md (define_attr type): Add fpcrmove.
+ Update FP conditional move on register insn patterns to use it, as
+ appropriate.
+ (define_attr cpu): Add ultrasparc3.
+ (define_attr us3load_type): New, update integer load patterns to
+ set it, as appropriate.
+ (define_automaton): Add ultrasparc3_0 and ultrasparc3_1.
+ (rest): Add UltraSPARC3 scheduling description.
+ * config/sparc/sparc.h (TARGET_CPU_ultrasparc3): New.
+ (PROCESSOR_ULTRASPARC3): New.
+ ({ASM,CPP}_CPU64_DEFAULT_SPEC): Handle ultrasparc3.
+ ({ASM,CPP}_CPU_SPEC): Likewise.
+ (REGISTER_MOVE_COST): Likewise.
+ (RTX_COSTS): Likewise.
+ * config/sparc/sparc.c (sparc_override_options,
+ sparc_initialize_trampoline, sparc64_initialize_trampoline,
+ sparc_use_dfa_pipeline_interface, sparc_use_sched_lookahead,
+ sparc_issue_rate): Likewise.
+ * config/sparc/sol2.h: Likewise.
+ * config/sparc/sol2-sld-64.h: Likewise.
+ * config/sparc/linux64.h: Likewise.
+
+ 2002-03-22 Vladimir Makarov <vmakarov@redhat.com>
+
+ * doc/md.texi: Add comments about usage the latency time for the
+ different dependencies and about case when two or more conditions
+ in different define_insn_reservations returns TRUE for an insn.
+
+ * doc/md.texi: Add reference for automaton based pipeline
+ description.
+
+ 2002-03-04 Vladimir Makarov <vmakarov@redhat.com>
+
+ * doc/passes.texi: Add missed information about genattrtab.
+
+ 2002-03-01 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (output_automata_list_transition_code): Check
+ automata_list on NULL.
+
+ 2002-02-28 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (output_insn_code_cases,
+ output_automata_list_min_issue_delay_code,
+ output_automata_list_transition_code,
+ output_automata_list_state_alts_code): Comment the functions.
+
+ 2002-02-22 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (automata_list_el_t): New typedef.
+ (get_free_automata_list_el,free_automata_list_el,
+ free_automata_list, automata_list_hash, automata_list_eq_p,
+ initiate_automata_lists, automata_list_start, automata_list_add,
+ automata_list_finish, finish_automata_lists,
+ output_insn_code_cases, output_automata_list_min_issue_delay_code,
+ output_automata_list_transition_code,
+ output_automata_list_state_alts_code, add_automaton_state,
+ form_important_insn_automata_lists): New functions and prototypes.
+ (insn_reserv_decl): Add members important_automata_list and
+ processed_p.
+ (ainsn): Add members important_p.
+ (automata_list_el): New structure.
+ (first_free_automata_list_el, current_automata_list,
+ automata_list_table): New global variables.
+ (create_ainsns): Initiate member important_p.
+ (output_internal_min_issue_delay_func): Generate the switch and
+ call output_insn_code_cases.
+ (output_internal_trans_func, output_internal_state_alts_func):
+ Ditto.
+ (generate): Call initiate_automata_lists.
+ (automaton_states): New global variable.
+ (expand_automata): Call form_important_insn_automata_lists.
+ (write_automata): Call finish_automata_lists.
+
+ 2002-02-21 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (add_excls, add_presence_absence): Check that
+ cpu units in the sets belong the same automaton.
+
+ * rtl.def (EXCLUSION_SET, PRESENCE_SET, ABSENCE_SET): Add comment
+ about that cpu units in the sets belong the same automaton.
+
+ * doc/md.texi: Ditto.
+
+ 2001-12-20 Naveen Sharma <naveens@noida.hcltech.com>
+ Nitin Gupta <niting@noida.hcltech.com>
+
+ * config/sh/sh.c (sh_use_dfa_interface): New function.
+
+ (sh_issue_rate): New Function.
+ TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE: define.
+ TARGET_SCHED_ISSUE_RATE: define.
+
+ * config/sh/sh.md: Add DFA based pipeline description for SH4.
+
+ (define_attr insn_class): New attribute used for DFA
+ scheduling.
+ (define_insn cmpgtsi_t): Set attribute insn_class mt_group.
+ (cmpgesi_t,cmpgtusi_t,cmpgeusi_t,cmpeqsi_t,
+ cmpeqdi_t): Likewise.
+
+ (add,addc1,addsi3,subc,subc1,*subsi3_internal,
+ negc,negsi2,ashldi3_k,lshrdi3_k,ashrdi3_k): Set insn_class
+ ex_group.
+ (iorsi3,rotlsi3_1,rotlsi3_31,rotlsi3_16): Likewise.
+
+ 2001-10-03 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
+
+ * haifa-sched.c (queue_to_ready): Remove unnecessary condition for
+ break.
+
+ 2001-10-03 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
+
+ * genautomata.c (DFA_INSN_CODES_LENGTH_VARIABLE_NAME): New macro.
+ (output_dfa_insn_code_func): Expand dfa_insn_codes if it is
+ necessary.
+ (output_dfa_start_func): Initiate new variable insn_codes_length,
+ (write_automata): Output definition of the new variable.
+
+ 2001-10-02 David S. Miller <davem@redhat.com>
+
+ * haifa-sched.c (advance_one_cycle): New function.
+ (schedule_block): Use it.
+ (queue_to_ready): Use it, and also make sure to advance the DFA
+ state on all stall cycles, not just those where insn_queue links
+ are found.
+
+ 2001-10-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * haifa-sched.c (max_issue): Remove last_p argument. Only return
+ non-zero if the highest-priority instruction could be scheduled.
+ (choose_ready): Remove last argument from max_issue call.
+
+ 2001-09-28 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.c (sparc_use_sched_lookahead): Use 4 for
+ ultrasparc and 3 for other multi-issue sparcs.
+
+ 2001-09-27 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.md (cycle_display): New pattern.
+ * config/sparc/sparc.c (sparc_cycle_display): New.
+ (TARGET_SCHED_CYCLE_DISPLAY): Set it.
+
+ 2001-09-25 David S. Miller <davem@redhat.com>
+
+ Convert all of Sparc scheduling to DFA
+ * config/sparc/sparc.md: Kill all define_function_unit
+ directives and replace with DFA equivalent.
+ * config/sparc/sparc.c (ultrasparc_adjust_cost,
+ mark_ultrasparc_pipeline_state, ultra_cmove_results_ready_p,
+ ultra_fpmode_conflict_exists, ultra_find_type,
+ ultra_build_types_avail, ultra_flush_pipeline,
+ ultra_rescan_pipeline_state, ultrasparc_sched_reorder,
+ ultrasparc_variable_issue, ultrasparc_sched_init,
+ sparc_variable_issue, sparc_sched_reorder, ultra_code_from_mask,
+ ultra_schedule_insn, ultra_code_names, ultra_pipe_hist,
+ ultra_cur_hist, ultra_cycles_elapsed): Kill.
+ (sparc_use_dfa_pipeline_interface, sparc_use_sched_lookahead,
+ ultrasparc_store_bypass_p): New.
+ * config/sparc/sparc-protos.h (ultrasparc_store_bypass_p):
+ Declare.
+
+ 2001-09-24 David S. Miller <davem@redhat.com>
+
+ * haifa-sched.c (ready_remove): Fix thinko, we want to copy around
+ ready->vec[foo] not ready[foo].
+
+ 2001-09-07 Vladimir Makarov <vmakarov@redhat.com>
+
+ * doc/md.texi: Correct examples for define_insn_reservations
+ `mult' and `div'.
+
+ 2001-09-07 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (create_automata): Print message about creation of
+ each automaton.
+ (generate): Remove printing meease about creation of
+ automata.
+
+ 2001-09-05 David S. Miller <davem@redhat.com>
+
+ * config/sparc/linux.h: Set CPLUSPLUS_CPP_SPEC.
+ * config/sparc/linux64.h: Likewise.
+
+ 2001-08-31 Vladimir Makarov <vmakarov@redhat.com>
+
+ * haifa-sched.c (insn_cost, schedule_insn, queue_to_ready,
+ schedule_block, sched_init, sched_finish): Add missed calls of
+ use_dfa_pipeline_interface.
+
+ * sched-rgn.c (init_ready_list, new_ready, debug_dependencies):
+ Ditto.
+
+ * sched-vis.c (get_visual_tbl_length): Ditto.
+
+ 2001-08-27 Richard Henderson <rth@redhat.com>
+
+ * genattr.c (main): Emit state_t even when not doing scheduling.
+
+ 2001-08-27 Richard Henderson <rth@redhat.com>
+
+ * genautomata.c (expand_automata): Always create a description.
+
+ 2001-08-27 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com>
+
+ * rtl.def (DEFINE_CPU_UNIT, DEFINE_QUERY_CPU_UNIT, EXCLUSION_SET,
+ PRESENCE_SET, ABSENCE_SET, DEFINE_BYPASS, DEFINE_AUTOMATON,
+ AUTOMATA_OPTION, DEFINE_RESERVATION, DEFINE_INSN_RESERVATION): New
+ RTL constructions.
+
+ * genattr.c (main): New variable num_insn_reservations. Increase
+ it if there is DEFINE_INSN_RESERVATION. Output automaton based
+ pipeline hazard recognizer interface.
+
+ * genattrtab.h: New file.
+
+ * genattrtab.c: Include genattrtab.h.
+ (attr_printf, check_attr_test, make_internal_attr,
+ make_numeric_value): Move protypes into genattrtab.h. Define them
+ as external.
+ (num_dfa_decls): New global variable.
+ (main): Process DEFINE_CPU_UNIT, DEFINE_QUERY_CPU_UNIT,
+ DEFINE_BYPASS, EXCLUSION_SET, PRESENCE_SET, ABSENCE_SET,
+ DEFINE_AUTOMATON, AUTOMATA_OPTION, DEFINE_RESERVATION,
+ DEFINE_INSN_RESERVATION. Call expand_automata and write_automata.
+
+ * genautomata.c: New file.
+
+ * rtl.h (LINK_COST_ZERO, LINK_COST_FREE): Remove them.
+
+ * sched-int.h: (curr_state): Add the external definition for
+ automaton pipeline interface.
+ (haifa_insn_data): Add comments for members blockage and units.
+
+ * target-def.h (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE,
+ TARGET_SCHED_INIT_DFA_PRE_CYCLE_INSN,
+ TARGET_SCHED_DFA_PRE_CYCLE_INSN,
+ TARGET_SCHED_INIT_DFA_POST_CYCLE_INSN,
+ TARGET_SCHED_DFA_POST_CYCLE_INSN,
+ TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD,
+ TARGET_SCHED_INIT_DFA_BUBBLES, TARGET_SCHED_DFA_BUBBLE): New
+ macros.
+ (TARGET_SCHED): Use the new macros.
+
+ * target.h (use_dfa_pipeline_interface, init_dfa_pre_cycle_insn,
+ dfa_pre_cycle_insn, init_dfa_post_cycle_insn, dfa_post_cycle_insn,
+ first_cycle_multipass_dfa_lookahead, init_dfa_bubbles,
+ dfa_bubble): New members in gcc_target.sched.
+
+ * haifa-sched.c (insert_schedule_bubbles_p): New variable.
+ (MAX_INSN_QUEUE_INDEX): New macro for automaton interface.
+ (insn_queue): Redefine it as pointer to array.
+ (NEXT_Q, NEXT_Q_AFTER): Use MAX_INSN_QUEUE_INDEX instead of
+ INSN_QUEUE_SIZE.
+ (max_insn_queue_index_macro_value): New variable.
+ (curr_state, dfa_state_size, ready_try): New varaibles for
+ automaton interface.
+ (ready_element, ready_remove, max_issue): New function prototypes
+ for automaton interface.
+ (choose_ready): New function prototype.
+ (insn_unit, blockage_range): Add comments.
+ (unit_last_insn, unit_tick, unit_n_insns): Define them for case
+ FUNCTION_UNITS_SIZE == 0.
+ (insn_issue_delay, actual_hazard_this_instance, schedule_unit,
+ actual_hazard, potential_hazard): Add comments.
+ (insn_cost): Use cost -1 as undefined value. Remove
+ LINK_COST_ZERO and LINK_COST_FREE. Add new code for automaton
+ pipeline interface.
+ (ready_element, ready_remove): New functions for automaton
+ interface.
+ (schedule_insn): Add new code for automaton pipeline interface.
+ (queue_to_ready): Add new code for automaton pipeline interface.
+ Use MAX_INSN_QUEUE_INDEX instead of INSN_QUEUE_SIZE.
+ (debug_ready_list): Print newline when the queue is empty.
+ (max_issue): New function for automaton pipeline interface.
+ (choose_ready): New function.
+ (schedule_block): Add new code for automaton pipeline interface.
+ Print ready list before scheduling each insn.
+ (sched_init): Add new code for automaton pipeline interface.
+ Initiate insn cost by -1.
+ (sched_finish): Free the current automaton state and finalize
+ automaton pipeline interface.
+
+ * sched-rgn.c: Include target.h.
+ (init_ready_list, new_ready, debug_dependencies): Add new code for
+ automaton pipeline interface.
+
+ * sched-vis.c: Include target.h.
+ (get_visual_tbl_length): Add code for automaton interface.
+ (target_units, print_block_visualization): Add comments.
+
+ * Makefile.in (GETRUNTIME, HASHTAB, HOST_GETRUNTIME, HOST_HASHTAB,
+ USE_HOST_GETRUNTIME, USE_HOST_HASHTAB, HOST_VARRAY): New variables.
+ (sched-rgn.o, sched-vis.o): Add new dependency file target.h.
+ (getruntime.o, genautomata.o): New entries.
+ (genattrtab.o): Add new dependency file genattrtab.h.
+ (genattrtab): Add new dependencies. Link it with `libm.a'.
+ (getruntime.o, hashtab.o): New entries for canadian cross.
+
+ * doc/md.texi: Description of automaton based model.
+
+ * doc/tm.texi (TARGET_SCHED_ISSUE_RATE, TARGET_SCHED_ADJUST_COST):
+ Add comments.
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE,
+ TARGET_SCHED_DFA_PRE_CYCLE_INSN,
+ TARGET_SCHED_INIT_DFA_PRE_CYCLE_INSN,
+ TARGET_SCHED_DFA_POST_CYCLE_INSN,
+ TARGET_SCHED_INIT_DFA_POST_CYCLE_INSN,
+ TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD,
+ TARGET_SCHED_INIT_DFA_BUBBLES, TARGET_SCHED_DFA_BUBBLE): The new
+ hook descriptions.
+ (TRADITIONAL_PIPELINE_INTERFACE, DFA_PIPELINE_INTERFACE,
+ MAX_DFA_ISSUE_RATE): New macro descriptions.
+
+ * doc/contrib.texi: Add dfa based scheduler contribution.
+
+ * doc/gcc.texi: Add more information about genattrtab.
+
+Mon Apr 29 17:19:10 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * reload1.c (eliminate_regs, case SUBREG): Fix typo in
+ adjust_address_nv call.
+
+2002-04-29 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi (Testing): Provide additional information, and
+ a stronger encouragement, for running the testsuites.
+
+2002-04-29 DJ Delorie <dj@redhat.com>
+
+ * config/mips/mips.c (mips_parse_cpu): Warn if the CPU name is
+ given in upper case.
+
+2002-04-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (solaris_widec): Include <wchar.h> in
+ Solaris 2 <widec.h> if missing.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/widec.h: New file.
+
+2002-04-29 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * toplev.c (f_options): Add "profile" switch so that
+ -fno-profile can be used to disable -p.
+
+2002-04-29 Bernd Schmidt <bernds@redhat.com>
+
+ * c-common.c (type_for_mode): Add support for V2DFmode, V2DImode,
+ UV2DImode.
+ * tree.c (build_common_tree_nodes_2): Likewise.
+ * tree.h (enum tree_index): Likewise.
+ (V2DF_type_node, V2DI_type_node, unsigned_V2DI_type_node): Define.
+
+ * config/i386/i386.c (bdesc_comi, bdesc_2arg, bdesc_1arg): Add SSE2
+ entries.
+ (init_mmx_sse_builtins): Initialize SSE2 builtins.
+ (ix86_expand_builtin): Add support for SSE2 builtins.
+ * config/i386/i386.h (VALID_SSE2_REG_MODE): New macro.
+ (VALID_SSE_REG_MODE): Use it.
+ (VECTOR_MODE_SUPPORTED_P): Allow SSE2 modes here as well.
+ (enum ix86_builtins): Add SSE2 builtins.
+ * config/i386/i386.md (movv2df_internal, movv2df, movv8hi_internal,
+ movv8hi, movv16qi_internal, movv16qi, pushv2df, pushv8hi, pushv16qi,
+ addv2df3, vmaddv2df3, subv2df3, vmsubv2df3, mulv2df3, vmmulv2df3,
+ divv2df3, vmdivv2df3, smaxv2df3, vmsmaxv2df3, sminv2df3, vmsminv2df3,
+ sse2_anddf3, sse2_nanddf3, sse2_iordf3, sse2_xordf3, sqrtv2df2,
+ vmsqrtv2df2, maskcmpv2df3, maskncmpv2df3, vmmaskcmpv2df3,
+ vmmaskncmpv2df3, sse2_comi, sse2_ucomi, sse2_movmskpd, sse2_pmovmskb,
+ sse2_maskmovdqu, sse2_movntv2df, sse2_movntti, sse2_movntsi, cvtdq2ps,
+ cvtps2dq, cvttps2dq, cvtdq2pd, cvtpd2dq, cvttpd2dq, cvtpd2pi,
+ cvttpd2pi, cvtpi2pd, cvtsd2si, cvttsd2si, cvtsi2sd, cvtsd2ss,
+ cvtss2sd, cvtpd2ps, cvtps2pd, addv16qi3, addv8hi3, addv4si3, addv2di3,
+ ssaddv16qi3, ssaddv8hi3, usaddv16qi3, usaddv8hi3, subv16qi3, subv8hi3,
+ subv4si3, subv2di3, sssubv16qi3, sssubv8hi3, ussubv16qi3, ussubv8hi3,
+ mulv8hi3, smulv8hi3_highpart, umulv8hi3_highpart, sse2_umulsidi3,
+ sse2_umulv2siv2di3, sse2_pmaddwd, sse2_clrti, sse2_uavgv16qi3,
+ sse2_uavgv8hi3, sse2_psadbw, sse2_pinsrw, sse2_pextrw, sse2_pshufd,
+ sse2_pshuflw, sse2_pshufhw, eqv16qi3, eqv8hi3, eqv4si3, gtv16qi3,
+ gtv8hi3, gtv4si3, umaxv16qi3, smaxv8hi3, uminv16qi3, sminv8hi3,
+ ashrv8hi3, ashrv4si3, lshrv8hi3, lshrv4si3, sse2_lshrv2di3,
+ ashlv8hi3, ashlv4si3, sse2_ashlv2di3, sse2_ashlti3, sse2_lshrti3,
+ sse2_unpckhpd, sse2_unpcklpd, sse2_packsswb, sse2_packssdw,
+ sse2_packuswb, sse2_punpckhbw, sse2_punpckhwd, sse2_punpckhdq,
+ sse2_punpcklbw, sse2_punpcklwd, sse2_punpckldq, sse2_movapd,
+ sse2_movupd, sse2_movdqa, sse2_movdqu, sse2_movdq2q, sse2_movq2dq,
+ sse2_movhpd, sse2_movlpd, sse2_loadsd, sse2_movsd, sse2_storesd,
+ sse2_shufpd, sse2_clflush, sse2_mfence, mfence_insn, sse2_lfence,
+ lfence_insn): New patterns.
+ (sse2_andti3, sse2_nandti3, sse2_iorti3, sse2_xorti3): Renamed from
+ sse_andti3_sse2, sse_nandti3_sse2, sse_iorti3_sse2, sse_xorti3_sse2.
+
+Mon Apr 29 17:03:24 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_mov?fcc*): Revert patch of Mar 14th.
+
+2002-04-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Add Paolo Carlini and
+ Janis Johnson.
+ Update Richard Henderson, Jakub Jelinek, and Mark Mitchell.
+ Refer to Objective-C instead of ObjC, SPARC instead of sparc,
+ and CPU instead of cpu.
+
+Mon Apr 29 13:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (flag_if_conversion, flag_if_conversion2): New static
+ variables.
+ (lang_independent_options): Add -fif-conversion, -fif-conversion2
+ (rest_of_compilation): Do if conversion only when asked for.
+ (parse_options_and_default_flags): Set new variables to 1 for -O1
+ * invoke.texi (-fif-conversion, -fif-conversion2): Document.
+
+Mon Apr 29 13:02:50 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (dbx64_register_map): Fix typo.
+
+Mon Apr 29 12:18:35 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (real_zero, real_one, real_almost_one, real_br_prob_base,
+ real_one_half, real_bb_freq_max): New static variables.
+ (debug_profile_bbauxs): Kill.
+ (process_note_predictions): Kill unused variable.
+ (block_info_def, edge_info_def): Use REAL_VALUE_TYPE instead of
+ volatile double.
+ (propagate_freq): Use REAL_ARITHMETICS.
+ (estimate_bb_frequencies): Likevise; init new static variables.
+ * Makefile.in (predict.o): Add dependency on real.h
+
+2002-04-28 David S. Miller <davem@redhat.com>
+
+ PR target/6500
+ * config/sparc/sparc.md (prefetch): Emit properly for 32-bit vs.
+ 64-bit TARGET_V9. Do not use prefetch page, use prefetch for
+ several {reads,writes} instead.
+ * config/sparc/sparc.h (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES):
+ Define.
+
+2002-04-27 David S. Miller <davem@redhat.com>
+
+ PR target/6494
+ * config/sparc/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Be mindful
+ of the stack bias.
+
+ * config/sparc/linux.h, config/sparc/linux64.h: Don't bother
+ including signal.h and sys/ucontext.h, not needed.
+
+2002-04-29 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * varasm.c (output_constant_def): Correct test for not calling
+ ENCODE_SECTION_INFO for INTEGER_CST.
+
+2002-04-29 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppexp.c (lex): Move some code to _cpp_parse_expr, but
+ keep most cases as function eval_token.
+ (eval_token): New function.
+ (_cpp_parse_expr): Read token here for improved diagnostics.
+ Don't use op_as_text. Detect bad ':' here.
+ (reduce): Don't detect bad ':' here.
+ (op_as_text): Remove.
+ * cpphash.h (_cpp_test_assertion): Change prototype.
+ * cpplib.c (_cpp_test_assertion): Change prototype.
+
+2002-04-28 Richard Henderson <rth@redhat.com>
+
+ PR c/5154
+ * ggc-common.c (ggc_mark_rtx_children_1): Rename from...
+ (ggc_mark_rtx_children): New.
+
+2002-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/6496
+ * config/sparc/sparc.md (call + jump 32-bit peepholes): Disable jump
+ after call peepholes for UltraSPARC.
+ (call + jump 64-bit peepholes): Remove.
+
+2002-04-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR c/6497
+ * config/rs6000/rs6000.md (sCC patterns): Remove clobber and use
+ result as temporary value.
+
2002-04-28 Jakub Jelinek <jakub@redhat.com>
PR c++/6396