+2002-03-22 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (print_operand): Fix incorrect mode
+ passed to adjust_address. Fix comment formatting.
+
+
+2002-03-22 Zack Weinberg <zack@codesourcery.com>
+
+ * real.h: Don't define REAL_INFINITY or REAL_IS_NOT_DOUBLE.
+ Always make REAL_VALUE_TYPE a struct containing an array of
+ HOST_WIDE_INT, not a double. Tidy up the code deciding how
+ big it is. Don't declare or use union real_extract.
+
+ * emit-rtl.c (init_emit_once), varasm.c (immed_real_const_1,
+ decode_rtx_const, output_constant_pool), config/a29k/a29k.c
+ (print_operand), config/arm/arm.c (output_move_double),
+ config/arm/arm.md (consttable_4, consttable_8),
+ config/romp/romp.c (output_fpops), config/s390/s390.h
+ (ASM_OUTPUT_SPECIAL_POOL_ENTRY), config/xtensa/xtensa.c
+ (xtensa_output_literal): Don't use union real_extract.
+
+ * config/dsp16xx/dsp16xx.c (print_operand), config/i860/i860.c
+ (sfmode_constant_to_ulong), config/ns32k/merlin.h
+ (PRINT_OPERAND), config/ns32k/ns32k.c (print_operand),
+ config/pdp11/pdp11.h (PRINT_OPERAND), config/we32k/we32k.h
+ (PRINT_OPERAND): Don't use local version of union
+ real_extract.
+
+ * config/convex/convex.c (check_float_value), config/vax/vax.c
+ (vax_float_literal), config/m88k/m88k.md (divdf3),
+ config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2),
+ config/pdp11/pdp11.c (output_move_quad): Don't do host
+ arithmetic on target floating point quantities.
+
+ * config/a29k/a29k.md, config/dsp16xx/dsp16xx.c
+ (output_dsp16xx_float_const): Don't test HOST_FLOAT_FORMAT.
+
+ * fold-const.c (fold), simplify-rtx.c (simplify_binary_real):
+ Use MODE_HAS_INFINITIES rather than #ifdef REAL_INFINITY.
+
+ * real.c (earith): Test INFINITY rather than REAL_INFINITY;
+ NANS implies INFINITY, so can drop #ifdef NANS inside #ifndef
+ INFINITY.
+ * print-rtl.c (print_rtx): Disable code which needs
+ floating-point emulator.
+ * libgcc2.c: Include float.h and use DBL_MANT_DIG,
+ FLT_MANT_DIG, to define DF_SIZE and SF_SIZE, rather than
+ depending on HOST_FLOAT_FORMAT to be defined properly.
+
+ * config/1750a/1750a.c (get_double, float_label): Delete.
+ (print_operand): Delete huge commented-out chunk. Use
+ REAL_VALUE_TO_DECIMAL.
+ * config/1750a/1750a-protos.h: Delete prototypes of deleted
+ functions.
+ * config/convex/convex.h: Always set TARGET_FLOAT_FORMAT to
+ IEEE_FLOAT_FORMAT.
+ * config/i370/i370.h (PRINT_OPERAND [TARGET_HLASM version]):
+ Use REAL_VALUE_TO_DECIMAL as ELF version does.
+ * config/m88k/m88k.c (real_power_of_2_operand,
+ legitimize_operand): Take the REAL_VALUE_TYPE and/or union
+ real_extract out of the union; run the input through
+ REAL_VALUE_TO_TARGET_DOUBLE, then plug the pair of longwords
+ from that into the union.
+ * config/pdp11/pdp11.c (output_move_double): Rearrange
+ parentheses to make automatic indenter happy.
+
+ * doc/tm.texi (Cross-compilation): Rename node to "Floating
+ Point" and rewrite to describe current situation. Also adjust
+ documentation of REAL_VALUE_TO_TARGET_SINGLE and friends to
+ match code.
+ * doc/rtl.texi: Adjust cross reference.
+
+2002-03-22 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h (non_acc_reg_operand): Remove.
+ (xtensa_valid_move, xtensa_preferred_reload_class): Define.
+ * config/xtensa/xtensa.c (non_acc_reg_operand): Remove.
+ (xtensa_valid_move, xtensa_preferred_reload_class): Define to
+ prevent use of sp as a reload register.
+ (xtensa_emit_move_sequence): Use xtensa_valid_move instead of
+ non_acc_reg_operand.
+ * config/xtensa/xtensa.h (PREDICATE_CODES): Remove non_acc_reg_operand.
+ (PREFERRED_RELOAD_CLASS): Move code to xtensa_preferred_reload_class.
+ * config/xtensa/xtensa.md (movsi_internal, movhi_internal,
+ movqi_internal): Use xtensa_valid_move instead of non_acc_reg_operand.
+
+2002-03-22 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h (struct cpp_reader): Remove mls_line and mls_col.
+ * cpplex.c (unterminated): Delete.
+ (parse_string): No string literal may extend over multiple
+ lines. Suppress the error when preprocessing assembly.
+ * cppmain.c (scan_translation_unit): Strings are single-line.
+
+ * doc/cpp.texi: Update to match.
+
+2002-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR optimization/5854
+ * config/m68hc11/m68hc11.h (CONST_OK_FOR_LETTER_VALUE_P): Use K for 0.
+ Shut up warnings.
+ (CONST_DOUBLE_OK_FOR_LETTER_P): Use G for 0.0.
+ (EXTRA_CONSTRAINT): Use S for non-push memory operand.
+ * config/m68hc11/m68hc11.c (m68hc11_split_move): Handle setting from
+ const0 if scratch register was not allocated.
+ (m68hc11_reload_operands, m68hc11_gen_lowpart, m68hc11_gen_highpart,
+ m68hc11_z_replacement): Replace gen_rtx (CONST_INT, VOIDmode, ...)
+ with GEN_INT (...).
+ (m68hc11_reorg): Compute BLOCK_FOR_INSN before reload_cse_regs.
+ * config/m68hc11/m68hc11.md: Replace gen_rtx (CONST_INT, VOIDmode, ...)
+ with GEN_INT (...) everywhere. Remove constraints in define_split
+ patterns.
+ (movdi_internal, movdf_internal, movsi_internal, movsf_internal): Don't
+ require scratch register for setting 0 into regs/non-pushable memory.
+
+2002-03-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.h (MASK_RETURN_ADDR): Define.
+ (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
+
+2002-03-22 Phil Edwards <pme@gcc.gnu.org>
+
+ * cpplib.h (struct cpp_options): New member, warn_endif_labels.
+ * cppinit.c (cpp_create_reader): On by default.
+ (cpp_handle_option): Handle -W[no-]endif-labels.
+ (cpp_post_options): Also enable if -pedantic.
+ * cpplib.c (do_else): Use it.
+ (do_endif): Likewise.
+ * doc/cppopts.texi: Document new option.
+ * doc/invoke.texi: Document new option.
+
+2002-03-22 Lars Brinkhoff <lars@nocrew.org>
+
+ * config/i386/i386.c, config/i386/i386.md: Change all occurences
+ of GEN_INT (trunc_int_for_mode (...)) to gen_int_mode (...).
+
+2002-03-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * flow.c (calculate_global_regs_live): Clear aux fields of
+ ENTRY and EXIT.
+
+2002-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ * config/v850/v850.c (v850_reorg): Only call alter_subreg on
+ REG or MEM subregs, pass rtx * instead of rtx to it.
+ * config/i860/i860.c (output_delayed_branch, output_delay_insn): Pass
+ rtx * instead of rtx to alter_subreg.
+ * config/m32r/m32r.c (gen_split_move_double): Likewise.
+ * config/pj/pj.c (pj_output_rval): Likewise.
+
+2002-03-22 Richard Henderson <rth@redhat.com>
+
+ PR target/3177
+ * config/ia64/ia64.h (CUMULATIVE_ARGS): Add int_regs.
+ (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Update.
+ * config/ia64/ia64.c (ia64_function_arg_advance): Set int_regs.
+ (ia64_expand_prologue): Look at int_regs, not words, for number
+ of incomming int regs.
+
+2002-03-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * expr.c (expand_expr): A RESULT_DECL is part of a call.
+
+Fri Mar 22 16:30:42 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (flag_loop_optimize, flag_crossjumping):
+ New static variables.
+ (rest_of_compilation): Conditionalize crossjumping and
+ loop optimizer.
+ (parse_options_and_default_flags): Default loop_optimize and
+ crossjumping.
+ (lang_independent_options): Add -fcrossjumping and -floop-optimize
+ * invoke.texi (crossjumping, loop-optimize): Document.
+
+2002-03-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * real.c (eiisneg): Move outside #ifdef NANS.
+
+Fri Mar 22 12:08:36 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (outgoing_edges_math): Fix condition; relax
+ frequencies match; avoid match on different loop depths.
+ (try_crossjump_to_bb): Kill tests that no longer brings time
+ savings.
+ * cfgrtl.c (force_nonfallthru_and_redirect): Fix loop_depth
+ updating code.
+ (split_edge): Likewise.
+
+ * flow.c (update_life_info_in_dirty_blocks): Fix uninitialized
+ variable.
+
+ * Makefile.in (cfgrtl): Add insn-config.h depenendency.
+ * cfgrtl.c: Include insn-config.h
+ (split_block) Dirtify block in presence of conditional execution
+
+2002-03-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/abi64.h (SETUP_INCOMING_VARARGS): Undefine.
+ * config/mips/mips-protos.h (mips_setup_incoming_varargs): Declare.
+ (function_arg): Constify CUMULATIVE_ARGS.
+ (function_arg_partial_nregs, function_arg_pass_by_reference): Likewise.
+ * config/mips/mips.h (UNITS_PER_FPVALUE): Zero when TARGET_SOFT_FLOAT.
+ (UNITS_PER_DOUBLE): New macro.
+ (SETUP_INCOMING_VARARGS): Define. Use mips_setup_incoming_varargs.
+ (CUMULATIVE_ARGS): Reformat. Remove num_adjusts workaround and
+ last_arg_fp field. Replace arg_words and fp_arg_words with gp_regs,
+ fp_regs and stack_words.
+ (EABI_FLOAT_VARARGS_P): New macro.
+ * config/mips/mips.c (struct mips_arg_info): New.
+ (mips_arg_info): New function.
+ (function_arg_advance): Use it. Add adjustment instructions here
+ rather than in function_arg.
+ (function_arg): Constify CUMULATIVE_ARGS. Use mips_arg_info. Check
+ for VOIDmode at the beginning of the function.
+ (function_partial_nregs): Constify CUMULATIVE_ARGS. Use mips_arg_info.
+ (function_arg_pass_by_reference): Likewise.
+ (mips_setup_incoming_varags): New, largely based on old abi64.h code.
+ (mips_build_va_list): Test EABI_FLOAT_VARARGS_P.
+ (mips_va_start): Likewise. Use the new stack_words field of
+ CUMULATIVE_ARGS to set up overflow area. Reformat.
+ (mips_va_arg): Test EABI_FLOAT_VARARGS_P. Unify EABI handling of
+ doubles and other types, aligning the overflow pointer for non-doubles
+ too. Remove some code duplication. Replace hard-coded constants.
+
+2002-03-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (FUNCTION_ARG_REGNO_P): Simplify.
+ (CLASS_UNITS): Undefine.
+ (CLASS_MAX_NREGS): Use FP_INC.
+ * config/mips/mips.c (compute_frame_size): Likewise.
+ (override_options): Use FP_INC and UNITS_PER_FPVALUE.
+
+2002-03-22 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (parse_identifier_slow): Rename parse_slow, adjust
+ prototype, and handle lexing numbers and identifiers.
+ (parse_identifier): Update to new form of parse_slow.
+ (parse_number): Fast path only, use parse_slow otherwise.
+ (_cpp_lex_direct): Update calls to parse_number.
+
+2002-03-21 DJ Delorie <dj@redhat.com>
+
+ * bb-reorder.c (make_reorder_chain_1): Protect against
+ when redundant edges are omitted.
+ * predict.c (dump_prediction): Likewise.
+
+2002-03-21 Richard Henderson <rth@redhat.com>
+
+ PR target/5996
+ * fixinc/inclhack.def (solaris_stdio_tag): New.
+ * fixinc/fixincl.x: Regenerate.
+
+2002-03-21 Eric Botcazou <ebotcazou@multimania.com>
+
+ PR c/5597
+ * c-typeck.c (process_init_element): Flag non-static
+ initialization of a flexible array member as illegal.
+
+2002-03-22 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/t-linux64: New.
+ * config.gcc (powerpc64-*-linux* <tmake_file>): Drop t-ppcos and
+ t-ppccomm. Use t-rs6000 and t-linux64.
+ (powerpc64-*-gnu* <tmake_file>): Likewise.
+ * mklibgcc.in (SHLIB_MKMAP_OPTS): New variable.
+ * mkmap-symver.awk (dotsyms): If set, output .foo as well as foo.
+ * Makefile.in (SHLIB_MKMAP_OPTS): Pass to mklibgcc.
+
+2002-03-21 Aldy Hernandez <aldyh@redhat.com>
+
+ * langhooks.c (lhd_tree_inlining_cannot_inline_tree_fn): Check
+ flag_really_no_inline instead of optimize == 0.
+
+ * c-objc-common.c (c_cannot_inline_tree_fn): Same.
+
+ * cp/tree.c (cp_cannot_inline_tree_fn): Same.
+
+ * flags.h (flag_really_no_inline): New.
+
+ * c-common.c (c_common_post_options): Initialzie
+ flag_really_no_inline.
+
+ * toplev.c (flag_really_no_inline): New.
+
+2002-03-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/avr/avr.md (length): Fix length computation for
+ conditional branches.
+
+2002-03-21 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in (fold-const.o, stor-layout.o, stmt.o,
+ sdbout.o, profile.o): Update.
+ * c-common.c (c_common_nodes_and_builtins): Use pushdecl
+ langhook.
+ * c-common.h (gettags): Move here from tree.h.
+ * c-tree.h (pushdecl, pushlevel, poplevel, set_block,
+ insert_block, getdecls, kept_level_p, global_bindings_p): New.
+ * dbxout.c (dbxout_init): Use getdecls langhook.
+ * expr.c (expand_expr): Use insert_block langhook.
+ * fold-const.c: Include langhooks.h.
+ (fold_range_test, fold_binary_op_with_conditional_arg,
+ fold): Use global_bindings_p langhook.
+ * integrate.c (expand_inline_function): Use insert_block langhook.
+ * langhooks-def.h (LANG_HOOKS_DECLS, LANG_HOOKS_PUSHLEVEL,
+ LANG_HOOKS_POPLEVEL, LANG_HOOKS_GLOBAL_BINDINGS_P,
+ LANG_HOOKS_INSERT_BLOCK, LANG_HOOKS_SET_BLOCK, LANG_HOOKS_PUSHDECL,
+ LANG_HOOKS_GETDECLS): New.
+ (LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.c (lhd_clear_binding_stack): Use global_bindings_p
+ langhook.
+ * langhooks.h (struct lang_hooks_for_decls): New.
+ (struct lang_hooks): Update.
+ * profile.c: Include langhooks.h.
+ (output_func_start_profiler): Use new langhooks.
+ * sdbout.c: Include langhooks.h.
+ (sdbout_init, sdbout_finish): Use getdecls langhook.
+ * stmt.c: Include langhooks.h.
+ (expand_fixup, fixup_gotos): Use new langhooks.
+ * stor-layout.c: Include langhooks.h.
+ (variable_size): Use global_bindings_p langhook.
+ * toplev.c (compile_file): Use getdecls langhook.
+ * tree-inline.c (remap_block): Use insert_block langhook.
+ * tree.h (pushdecl, pushlevel, poplevel, set_block, gettags,
+ insert_block, getdecls, kept_level_p, global_bindings_p): Remove.
+
+2002-03-21 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_select_rtx_section): Put symbolic
+ constants in .data when -fpic.
+
+2002-03-21 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Use GNU/Linux instead of Linux
+ where appropriate.
+
+2002-03-21 Tom Tromey <tromey@redhat.com>
+
+ * config/i386/sol2.h (ASM_QUAD): Undef. Fixes PR bootstrap/5948.
+
+Thu Mar 21 09:50:48 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/ia64/ia64.c (hfa_element_mode, case ARRAY_TYPE): Recurse.
+
+ * expr.c (emit_group_store): Don't copy const0_rtx to a CONCAT.
+
+2002-03-21 Eric Botcazou <ebotcazou@multimania.com>
+ Richard Henderson <rth@redhat.com>
+
+ PR c/5354
+ * c-common.c (c_expand_expr): Preserve result of a statement
+ expression if needed.
+
+2002-03-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/4195
+ * genrecog.c (maybe_both_true_mode): Remove.
+ (maybe_both_true_2, write_switch): Revert 2001-07-17 changes.
+ * machmode.def (Pmode): Likewise.
+
+Thu Mar 21 01:55:06 EST 2002 John Wehle (john@feith.com)
+
+ * alias.c: (nonlocal_mentioned_p): Use for_each_rtx.
+ (nonlocal_mentioned_p_1): New function.
+ (nonlocal_referenced_p, nonlocal_referenced_p_1): Likewise.
+ (nonlocal_set_p, nonlocal_set_p_1): Likewise.
+ (mark_constant_function): Recognize pure functions.
+ * rtl.h (global_reg_mentioned_p): New prototype.
+ * rtlanal.c (global_reg_mentioned_p,
+ global_reg_mentioned_p_1): New function.
+
+2002-03-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (alpha_assert): Fix assert macro in Tru64
+ UNIX assert.h.
+ * fixinc/fixincl.x: Regenerate.
+
+2002-03-20 Jason Merrill <jason@redhat.com>
+
+ * config/i386/cygwin.h (DWARF2_UNWIND_INFO): Define to 0.
+
+2002-03-20 Michael Meissner <meissner@redhat.com>
+
+ * doc/invoke.texi (Optimize Options): Document that -O2 sets
+ -fstrict-aliasing.
+
+2002-03-20 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Emit a
+ ".literal_position" directive before the constant pool.
+
+2002-03-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Update Geoffrey Keating.
+ Add Craig Rodrigues.
+ Add Brad Lucier to testers.
+
+2002-03-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/4792
+ * config/arc/arc.md (movsicc, movdicc, movsfcc, movdfcc): Add mode
+ to if_then_else.
+ (movsicc_insn, movdicc_insn, movsfcc_insn, movdfcc_insn): Likewise.
+ * config/arc/arc.c (arc_final_prescan_insn): Use extract_insn_cached
+ instead of insn_extract.
+
+2002-03-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/4192
+ * config/fr30/fr30.md (jump): Remove clobber of fixed register.
+
+ * genemit.c (output_added_clobbers_hard_reg_p): Only output return
+ stmt if some case has been output.
+
+2002-03-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/5972
+ * config/i386/i386.md (movdicc_c_rex64, movsicc_noc, movhicc_noc,
+ movsfcc_1, movdfcc_1): Add %O2.
+ * config/i386/i386.c (print_operand): Handle %ON.
+ Print . before float condition codes in Sun as cmov syntax.
+ * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Define for Sun as.
+ * config.gcc (i[34567]86-*-solaris2*): Remove comment which is
+ no longer true.
+
+2002-03-20 Philip Blundell <pb@nexus.co.uk>
+
+ * config/arm/arm.c (arm_output_epilogue): Don't generate separate
+ return instruction if PC was popped.
+
+2002-03-20 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.md: Remove unused type attributes.
+ (adddi_carry, subddi_carry): Change type attribute to "multi".
+
+2002-03-19 Dale Johannesen <dalej@apple.com>
+
+ PR optimization/5999, middle-end/5731
+ * expr.c (expand_expr) [RDIV_EXPR]: Only convert real divisions into
+ multiplications by reciprocals.
+
+2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in: Update.
+ * c-common.c: Include langhooks.h.
+ (inline_forbidden_p): Use new hook.
+ * diagnostic.c: Include langhooks.h.
+ (format_with_decl, announce_function,
+ default_print_error_function): Use new hook.
+ * dwarf2out.c (dwarf2_name): Use new hook.
+ * function.c: Include langhooks.h.
+ (init_function_start): Use new hook.
+ * langhooks-def.h (lhd_decl_printable_name): New.
+ (LANGHOOKS_DECL_PRINTABLE_NAME): New.
+ (LANGHOOKS_INITIALIZER): Update.
+ * langhooks.c (lhd_decl_printable_name): New.
+ * langhooks.h (struct lang_hooks): New hook.
+ * toplev.c (decl_name, decl_printable_name): Remove.
+ (open_dump_file): Use new hook.
+ (process_options): Remove old hook.
+ * tree.h (decl_printable_name): Remove.
+objc:
+ * objc-act.c (objc_init): Remove old hook.
+ (objc_printable_name): Export.
+ * objc-act.h (objc_printable_name): New.
+ * objc-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
+
+2002-03-19 Jim Blandy <jimb@redhat.com>
+
+ * c-lex.c (cb_file_change): Pass the #inclusion's line number to
+ the start_source_file debug hook, not the current line number.
+
+2002-03-19 Richard Henderson <rth@redhat.com>
+
+ * flow.c (EH_USES): Provide default.
+ (calculate_global_regs_live): Use it for EH edges and noreturn calls.
+ * doc/tm.texi (EH_USES): New.
+
+ * config/ia64/ia64.c (ia64_eh_uses): New.
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.h (EH_USES): New.
+
+2002-03-19 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (output_constant_def): Fix stupid typo.
+
+2002-03-19 Richard Henderson <rth@redhat.com>
+
+ PR 5879
+ * except.c (current_function_has_exception_handlers): New.
+ * except.h: Declare it.
+ * sibcall.c (optimize_sibling_and_tail_recursive_call): Use it.
+ Combine tests that disable all sibcalls for the function.
+
+2002-03-19 Olivier Hainque <hainque@act-europe.fr>
+
+ * varasm.c (output_constant_def): Don't call ENCODE_SECTION_INFO
+ for INTEGER_CST.
+
+2002-03-19 Richard Henderson <rth@redhat.com>
+
+ PR 5977, 5991
+ * config/ia64/ia64.c: Revert 2002-03-01 patch.
+ * config/ia64/ia64.h (INIT_EXPANDERS): New.
+
+2002-03-19 Jim Blandy <jimb@redhat.com>
+
+ * cppmacro.c (cpp_macro_definition): Emit a space after the macro
+ name, even if the replacement list contains no tokens, as required
+ by Dwarf.
+
+2002-03-19 Jason Merrill <jason@redhat.com>
+
+ * varasm.c (globalize_decl): Get the name from the RTL, not
+ DECL_ASSEMBLER_NAME.
+
+ * Makefile.in (LIBGCC2_DEBUG_CFLAGS): Set to -g.
+
+2002-03-19 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.md (adddi3, adddi_carry, subdi3,
+ subdi_carry): Define.
+
+2002-03-19 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Only warn
+ about -fpic/-fPIC if extra_warnings set.
+
+2002-03-19 David Edelsohn <edelsohn@gnu.org>
+
+ * expr.c (expand_expr): Sign-extend CONST_INT generated from
+ TREE_STRING_POINTER.
+ * fold-const.c (fold): Delete #if 0 ARRAY_REF case.
+
+Tue Mar 19 14:12:32 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/sparc/sparc.h (CAN_ELMINIATE): Can only eliminate FP
+ in favor of SP if FRAME_POINTER_REQUIRED is false.
+
+2002-03-19 Lars Brinkhoff <lars@nocrew.org>
+
+ * emit-rtl.c (gen_int_mode): New function.
+ * rtl.h: Prototype for it.
+ * combine.c (make_extraction, simplify_comparison), expmed.c
+ (store_bit_field, expand_mult_highpart, expand_divmod), expr.c
+ (convert_modes, store_field), optabs.c (expand_fix),
+ simplify-rtx.c (neg_const_int, simplify_unary_real),
+
+ * config/rs6000/rs6000.c, config/rs6000/rs6000.md:
+ Use it instead of GEN_INT (trunc_int_for_mode (...)).
+
+2002-03-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/5656
+ * langhooks.h (struct lang_hooks_for_tree_inlining): Add
+ convert_parm_for_inlining.
+ * c-lang.c (LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING):
+ Define.
+ * langhooks-def.h: Likewise.
+ * objc/objc-lang.c: Likewise.
+ * langhooks.c (lhd_tree_inlining_convert_parm_for_inlining): New
+ function.
+ * tree-inline.c (initialize_inlined_parameters):
+ Call convert_parm_for_inlining lang hook if needed.
+ * c-typeck.c (c_convert_parm_for_inlining): New function.
+ * c-tree.h (c_convert_parm_for_inlining): Add prototype.
+
+2002-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (precompute_arguments): Do not assume that temporaries
+ can be destroyed after expanding the argument.
+ (expand_call): Likewise.
+
+2002-03-15 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.md (movdf_internal2): Add two new move constraints.
+ Fix register preference on last change.
+ * config/mips/mips.c (mips_return_in_memory): New function.
+ * config/mips/mips.h (RETURN_IN_MEMORY): Use.
+ * config/mips/mips-protos.h: Declare.
+ * config/mips/abi64.h (RETURN_IN_MEMORY): Remove. Add to above.
+ * config/mips/elf64.h: Add #ifndef/#endif brackets around defaults.
+
+2002-03-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.md (andsi3) [TARGET_MIPS16]: Force operand 1 to
+ a register too.
+ (anddi3, iorsi3): Likewise.
+
+ * config/mips/mips.h (ENCODE_SECTION_INFO) [TARGET_MIPS16]: Don't
+ use %gprel for symbols that are going to be placed in linkonce
+ sections.
+
+ * config/mips/mips.h (ELIMINABLE_REGS): Can't eliminate
+ RETURN_ADDRESS_POINTER_REGNUM to $ra.
+ (CAN_ELIMINATE): Only eliminate it to $sp if a frame pointer is
+ not needed. Disregard leaf_function_p().
+ (INITIAL_ELIMINATION_OFFSET): Adjust for elimination of rap to
+ mips16 frame pointer.
+ * config/mips/mips.md (store ra): Only to small SP offsets.
+ 2001-08-22 Graham Stott <grahams@redhat.com>
+ * config/mips/mips.h (RETURN_ADDR_RTX): For a leaf function
+ return a REG rtx for the return address register.
+
+2002-03-18 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Treat
+ constant-pool addresses as "mode-dependent".
+ (GO_IF_LEGITIMATE_ADDRESS): Rename macro arguments.
+
+2002-03-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/5740
+ * expr.c (emit_group_load): Use extract_bit_field if
+ needed for CONCAT arguments.
+
+2002-03-18 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/4863
+ * arm.md (tablejump): Make this a define_expand. For PIC add the
+ offset to the base of the table.
+ (thumb_tablejump): Matcher for Thumb tablejump insn.
+ * config/arm/aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output thumb entries
+ as the difference of two labels.
+ * config/arm/aof.h (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+ * config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Only put ARM jump
+ tables in the code.
+ * config/arm/coff.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
+ * arm.c (get_jump_table_size): If the table is not in the text
+ section, return zero.
+
+2002-03-18 Bernd Schmidt <bernds@redhat.com>
+
+ * config/arm/arm.c (arm_gen_movstrqi): Use gen_lowpart instead
+ of gen_rtx_SUBREG.
+ (arm_reload_out_hi): Use gen_lowpart instead of
+ gen_rtx_SUBREG to access QImode components.
+ * config/arm/arm.md: Disable zero_extend split for QImode
+ subregs in BIG_ENDIAN mode.
+ (storehi_bigend): Match use of least significant byte.
+ (storeinthi): Remove extraneous SUBREG.
+ Add missing construction of operands[2].
+ (movhi): Use gen_lowpart in place of gen_rtx_SUBREG.
+ (movqi): Use gen_lowpart in place of gen_rtx_SUBREG.
+ Replace gen_rtx (SUBREG) with gen_rtx_SUBREG.
+
+2002-03-18 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (PREDICATE_CODES): Add PARALLEL to
+ any_operand.
+
+2002-03-17 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_emit_set_const_1): Build add insns
+ explicitly.
+
+2002-03-17 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.md ("fixuns_truncdfdi2"): Use (unsigned_fix:DI
+ (unsigned_fix:DF op1)), not (unsigned_fix:DI (fix:DF op1)).
+
+2002-03-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ifcvt.c (dead_or_predicable): Fix uninitialized variable.
+
+ * predict.c (estimate_bb_frequencies): Delete unused variables.
+
+2002-03-17 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (ia64_attribute_table): Move before
+ targetm definition. Make static.
+
+2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-common.h (yyparse, c_common_parse_file): New.
+ * c-lang.c: Include c-common.h.
+ (LANG_HOOKS_PARSE_FILE): Redefine.
+ * c-lex.c: Include c-common.h.
+ (yyparse): Rename c_common_parse_file. Call yyparse.
+ * c-parse.in (yyparse): Remove macro.
+ * c-tree.h (yyparse_1): Remove.
+ * langhooks-def.h (LANG_HOOKS_PARSE_FILE): New.
+ (LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.h (struct lang_hoooks): New hook parse_file.
+ * toplev.c (compile_file): Use parse_file hook.
+ * tree.h (yyparse): Remove.
+ * objc/objc-lang.c (LANG_HOOKS_PARSE_FILE): Redefine.
+
+2002-03-17 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.md ("truncdfsf2"): Correct operator is
+ float_truncate, not fix.
+ ("*truncdfsf2_real"): Ditto.
+ ("*nonlocal_goto_receiver_expanded"): Fix output template formatting.
+
+ * config/mmix/mmix.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Don't define.
+
2002-03-16 Alexandre Oliva <aoliva@redhat.com>
+ * config/mips/mips.h (CAN_ELIMINATE): Don't eliminate rap to $fp
+ (s8), but rather HARD_FRAME_POINTER_REGNUM. Add parentheses
+ where appropriate. Make the second reference to
+ leaf_function_p a function call, as intended. Reindented.
+
* config/mips/mips.h (ISA_HAS_COND_TRAP): Not available on MIPS16.
* config/mips/mips.md (trap) [TARGET_MIPS16]: Emit `break 0'.
* config/rs6000/rs6000.h (HANDLE_PRAGMA_PACK): Delete.
* config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Define.
- * config/rs6000/xcoff.h (COLLET_EXPORT_LIST): Delete.
+ * config/rs6000/xcoff.h (COLLECT_EXPORT_LIST): Delete.
2002-03-01 Kazu Hirata <kazu@hxi.com>
* config/arm/arm.c (arm_hard_regno_mode_ok): Allow any value in
any geenral register.
-2001-02-04 Bernd Schmidt <bernds@redhat.com>
+2001-02-04 Bernd Schmidt <bernds@redhat.com>s
* cfgrtl.c (force_nonfallthru_and_redirect): Don't try to redirect
the entry block.