OSDN Git Service

Wed Feb 27 10:45:19 CET 2002 Jan Hubicka <jh@suse.cz>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 59fc8be..6b3b54a 100644 (file)
@@ -1,3 +1,863 @@
+Wed Feb 27 10:45:19 CET 2002  Jan Hubicka  <jh@suse.cz>
+
+       * linux64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Remove.
+       * x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Allways define.
+
+Wed Feb 27 10:39:20 CET 2002  Jan Hubicka  <jh@suse.cz>
+
+       * linux64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
+
+2002-02-27  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpplex.c (_cpp_lex_token): Handle directives in macro
+       arguments.
+       * cpplib.c (_cpp_handle_directive): Save and restore state
+       if parsing macro args when entering a directive.
+       * cppmacro.c (collect_args): No need to handle directives
+       in macro arguments.
+       (enter_macro_context, replace_args): Use the original macro
+       definition in case it was redefined whilst collecting arguments.
+doc:
+       * cpp.texi: Update.
+
+2002-02-26  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Delete.
+       * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Delete.
+       * config/rs6000/rs6000.c (rs6000_return_addr): Use efficient
+       method on AIX.
+       * config/rs6000/rs6000.md (movsi_low): Use gpc_reg_operand.
+       (movsi_low_st, movdf_low, movdf_low_st, movsf_low, movsf_low_st): Same.
+       (load_toc_v4_PIC_2): Same.
+
+2002-02-26  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.md (load_toc_aix_di): Handle TARGET_RELOCATABLE.
+
+2002-02-26  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.md (ashldi_se): Re-enable.
+
+2002-02-26  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (alpha_encode_section_info): Examine
+       MODULE_LOCAL_P; improve commentary.
+
+2002-02-26  Zack Weinberg  <zack@codesourcery.com>
+
+       * doc/cpp.texi: Clarify documentation of relationship between
+       #line and #include.
+
+2002-02-26  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300-protos.h: Update the prototype for
+       compute_logical_op_length.  Add the prototype for
+       compute_logical_op_cc.
+       * config/h8300/h8300.c (compute_logical_op_length): Figure out
+       code from operands.
+       (compute_logical_op_cc): New.
+       * config/h8300/h8300.md: Combine all the logical op patterns
+       in HImode and SImode.  Use compute_logical_op_cc.
+
+2002-02-26  Kelley Cook  <kelleycook@comcast.net>
+
+       * config/i386/i386.c (print_operand): Don't append ATT-style
+       length suffixs to x87 opcodes when in Intel mode.
+
+2002-02-26  Ryan T. Sammartino <ryants@shaw.ca>
+
+       * emit-rtl.c (gen_const_vector_0): Remove TYPE argument.
+       (init_emit_once): Update calls.
+       * fixinc/gnu-regex.c (_GNU_SOURCE): Remove.
+       (init_syntax_once): Prototype.
+
+2002-02-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * pa-linux.h (LIB_SPEC): Update definition.
+       * pa32-linux.h (LINK_COMMAND_SPEC): Delete.
+
+2002-02-26  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (nop_cycles_until): Do init_insn_group_barriers
+       if we emitted a stop bit.
+
+2002-02-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * configure.in (libgcc_visibility): Substitute.
+       * configure: Rebuilt.
+       * mklibgcc.in: If libgcc_visibility = yes, make libgcc.a global
+       defined symbols .hidden.
+
+2002-02-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * attribs.c (c_common_attribute_table): Add visibility.
+       (handle_visibility_attribute): New function.
+       * varasm.c (assemble_visibility): New function.
+       * output.h (assemble_visibility): Add prototype.
+       * tree.h (MODULE_LOCAL_P): Define.
+       * crtstuff.c (__dso_handle): Use visibility attribute.
+       * config/i386/i386.h (ENCODE_SECTION_INFO): Set SYMBOL_REF_FLAG
+       for MODULE_LOCAL_P symbols too.
+       * config/ia64/ia64.c (ia64_encode_section_info): Handle
+       MODULE_LOCAL_P symbols the same way as local symbols.
+       Add SDATA_NAME_FLAG_CHAR even if decl was explicitely forced
+       into .sdata/.sbss by the user.
+       * doc/extend.texi (Function Attributes): Document visibility
+       attribute.
+
+2002-02-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/5770
+       * dwarf2out.c (rtl_for_decl_location): Return CONST_STRING for
+       STRING_CST initializer spanning the whole variable without
+       embedded zeros.
+       If expand_expr returned MEM, don't use it.
+
+2002-02-26  Alexandre Oliva  <aoliva@redhat.com>
+
+       * dwarf2out.c (gen_inlined_subroutine_die): If block is abstract,
+       generate a die for the lexical block.
+
+2002-02-26  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300-protos.h: Add a prototype for
+       compute_logical_op_length.
+       * config/h8300/h8300.c (compute_logical_op_length): New.
+       * config/h8300/h8300.md (anonymous logical patterns): Use
+       compute_logical_op_length for length.
+
+2002-02-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * dwarf2out.c (modified_type_die): Do not call type_main_variant
+       for vectors.
+       (gen_type_die): Same.
+
+       * attribs.c (handle_vector_size_attribute): Set debug information.
+
+2002-02-26  Daniel Egger  <degger@fhm.edu>
+
+       * config/rs6000/rs6000.md: Swap define_insn attributes to
+       fix incorrect generation of merge high instructions instead
+       of merge low.
+
+2002-02-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * c-typeck.c (really_start_incremental_init): Use
+       bitsize_zero_node for vectors.
+
+2002-02-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.md (get_vrsave_internal): Fix typo.
+       ("*set_vrsave_internal"): Same.
+
+2002-02-25  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (expand_expr) [MULT_EXPR]: Do not apply distributive law
+       in EXPAND_SUM case.  Use host_integerp/tree_low_cst.
+
+2002-02-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/5755
+       * config/i386/i386.c (ix86_return_pops_args): Only pop
+       fake structure return argument if it was passed on the stack.
+
+2002-02-25  Jason Merrill  <jason@redhat.com>
+
+       * attribs.c (decl_attributes): Also re-layout PARM_DECL and
+       RESULT_DECL.
+
+2002-02-25  Alexandre Oliva  <aoliva@redhat.com>
+
+       * gcc.c (init_gcc_specs): Get -shared-libgcc along with -shared to
+       link with shared_name only.
+       * doc/invoke.texi (Link Options): Document new behavior.
+
+2002-02-25  Aldy Hernandez  <aldyh@redhat.com>
+
+       * c-typeck.c (push_init_level): Handle vectors.
+
+2002-02-25  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sparc/sparc.c (const64_high_operand): Zero-extend
+       operands of SPARC_SETHI_P.
+       (input_operand): Likewise.
+       (sparc_emit_set_const32): Likewise.
+       * config/sparc/sparc.h (SPARC_SETHI_P): Disregard TARGET_ARCH64.
+       (SPARC_SETHI32_P): Zero-extend operand from 32 bits.
+       (CONST_OK_FOR_LETTER_P): Use SETHI32 for `K'.  Add `N' as SETHI.
+       * config/sparc/sparc.md (movdi_insn_sp64_novis): Use `N'.
+       (movdi_insn_sp64_vis): Likewise.
+       (movdi split, movdf split): Use SETHI32.
+       * doc/md.texi: Document SPARC constraints L, M and N.
+
+2002-02-25  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.md ("get_vrsave_internal"): New.
+       ("*set_vrsave_internal"): use mfspr for Darwin.
+
+       * config/rs6000/rs6000.c (rs6000_emit_prologue): Call
+       gen_get_vrsave_internal.
+
+Sun Feb 24 16:38:56 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * optabs.c (widen_operand): Properly handle CONST_INT for NO_EXTEND.
+
+2002-02-24  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpplex.c (cpp_interpret_charconst): Get signedness or
+       otherwise of wide character constants correct.
+       * cppexp.c (lex): Get signedness of wide charconsts correct.
+
+Sun Feb 24 07:41:31 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * optabs.c (widen_operand): Only call convert_modes for
+       promoted SUBREG if signedness matches.
+       * config/alpha/alpha.md (*addsi_se2, *subsi_se2): New patterns.
+
+2002-02-23  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cpplib.c (glue_header_name): Use local buffer to build up
+       header name.
+
+2002-02-23  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * doc/cpp.texi, doc/invoke.texi: Update documentation for -MM.
+
+2002-02-23  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.c (output_simode_bld): Handle H8/300 and
+       H8/300[HS] separately.
+       * config/h8300/h8300.md: Remove the early clobber constraint
+       from bit field patterns.
+
+2002-02-23  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.md (mulqihi3): Tighten predicates to
+       register_operand.
+       (mulhisi3): Likewise.
+       (umulqisi3): Likewise.
+       (umulhisi3): Likewise.
+
+2002-02-23  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cppinit.c (output_deps): Correct test for stdout output.
+       (init_dependency_output): Cure warning.
+
+Sat Feb 23 08:42:47 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (store_expr): When converting expression to promoted
+       equivalent type, allow using SUBREG_REG of TARGET as the target
+       of the expansion of EXP.
+       * loop.c (basic_induction_var, case SUBREG): Always look inside.
+       * config/alpha/alpha.c (rtx_equiv_function_matters): Delete decl.
+       (alpha_emit_set_const): Handle SImode when can't make new pseudos.
+       (alpha_emit_set_const_1, alpha_sa_mask): Use no_new_pseudos.
+       * config/alpha/alpha.md (addsi3, subsi3): Don't use if optimizing.
+
+2002-02-23  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * doc/contribute.texi, doc/extend.texi, doc/install.texi,
+       doc/invoke.texi, doc/md.texi, doc/passes.texi, doc/rtl.texi,
+       doc/standards.texi, doc/tm.texi: Remove trailing whitespace.
+
+2002-02-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR optimization/5747
+       * loop.c (scan_loop): Update reg info if move_movables created new
+       pseudos.
+
+2002-02-23  David Edelsohn  <edelsohn@gnu.org>
+
+       * gcc.c (init_gcc_spec): Revert last change.
+
+2002-02-23  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.md (load_toc_aix_{si,di}): Use
+       gpc_reg_operand constraint.
+
+2002-02-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (num_insns_constant): Fix formatting.
+       Simplify comparison of `low'.
+       (add_operand): Fix formatting.
+       (non_add_cint_operand): Use CONST_OK_FOR_LETTER_P.
+       (mask_operand): Disallow mask to wrap in 64-bit mode.
+       (rs6000_stack_info): Remove redundant test setting push_p.
+       (output_toc): Fix formatting.
+       * config/rs6000/rs6000.md (boolsi3, boolcsi3 splitters): Use
+       cc_reg_not_cr0_operand constraint.
+       (booldi3, boolcdi3 splitters): Same.
+
+2002-02-23  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/altivec.h: Add extra level of parentheses on casts.
+
+2002-02-22  David Edelsohn  <edelsohn@gnu.org>
+
+       * gcc.c (init_gcc_spec): Do not link with static libgcc.a if
+       gcc invoked with -shared-libgcc.
+
+2002-02-22  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/5748
+       * stmt.c (expand_anon_union_decl): Set TREE_USED on the anon union
+       decl if any of elements was TREE_USED.
+
+2002-02-22  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sparc/sol2.h: Don't include sys/mman.h.
+       * config/sparc/sparc.c (arith_operand): Use SMALL_INT32.
+       (arith_4096_operand): Don't throw high bits away.
+       (const64_operand): Take sign extension of CONST_INTs into account.
+       (const64_high_operand, sparc_emit_set_const32): Likewise.
+       (GEN_HIGHINT64): Likewise.
+       (sparc_emit_set_const64_quick1): Likewise.
+       (const64_is_2insns): Likewise.
+       (print_operand): Use trunc_int_for_mode for sign extension.
+       * config/sparc/sparc.h (SMALL_INT32): Likewise.
+       * config/sparc/sparc.md (movqi): Sign-extend CONST_DOUBLE
+       chars.  Assume CONST_INT is already properly sign-extended.
+       (movdi split): Sign-extend each SImode part.
+       (andsi3 split): Don't mask high bits off, so that result
+       remains properly sign-extend.
+       (iorsi3 split): Likewise.
+       (xorsi3 split): Likewise.
+
+2002-02-22  Richard Sandiford  <rsandifo@redhat.com>
+
+       * fold-const.c (fold): Fix typo in comments.
+
+2002-02-21  Diego Novillo  <dnovillo@redhat.com>
+
+       * Makefile.in (langhooks.o): Update dependencies.
+
+2002-02-21  Diego Novillo  <dnovillo@redhat.com>
+
+       * langhooks.c: Include flags.h.
+
+2002-02-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       * testsuite/gcc.dg/attr-alwaysinline.c: New.
+
+       * c-common.c (c_common_post_options): Set inline trees by
+       default.
+
+       * doc/extend.texi (Function Attributes): Document always_inline
+       attribute.
+       Update documentation about inlining when not optimizing.
+
+       * cp/decl.c (duplicate_decls): Merge always_inline attribute.
+
+       * cp/tree.c (cp_cannot_inline_tree_fn): Do not inline at -O0
+       unless DECL_ALWAYS_INLINE.
+
+       * c-objc-common.c (c_cannot_inline_tree_fn): Do not inline at -O0
+       unless DECL_ALWAYS_INLINE.
+       (c_disregard_inline_limits): Disregard if always_inline set.
+
+       * langhooks.c (lhd_tree_inlining_disregard_inline_limits):
+       Disregard if always_inline set.
+       (lhd_tree_inlining_cannot_inline_tree_fn): Do not inline at -O0
+       unless DECL_ALWAYS_INLINE.
+
+       * attribs.c (handle_always_inline_attribute): New.
+       (c_common_attribute_table): Add always_inline.
+
+       * config/rs6000/altivec.h: Add prototypes for builtins
+       requiring the always_inline attribute.
+
+2002-02-21  Eric Christopher  <echristo@redhat.com>
+
+       * expmed.c (store_bit_field): Try to simplify the subreg
+       before generating a new one when when the mode size of
+       value is less than maxmode.
+
+2002-02-21  Richard Henderson  <rth@redhat.com>
+
+       * emit-rtl.c (offset_address): Use simplify_gen_binary rather
+       than gen_rtx_PLUS to form the sum.
+       * explow.c (force_reg): Rearrange to not allocate new pseudo
+       when force_operand returns a register.
+       * expr.c (expand_assignment): Allow offset_rtx expansion to
+       return a sum.  Do not force addresses into registers.
+       (expand_expr): Likewise.
+       * simplify-rtx.c (simplify_gen_binary): Use simplify_plus_minus
+       to canonicalize arithmetic that didn't simpify.
+       (simplify_plus_minus): New argument force; update
+       all callers.  Don't split CONST unless we can do something with it,
+       and wouldn't lose the constness of the operands.
+
+       * config/i386/i386.c (legitimize_pic_address): Recognize UNSPECs
+       that we generated earlier.
+
+2002-02-21  Tom Tromey  <tromey@redhat.com>
+
+       * dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
+       (output_line_info): Use constant `1', with a long explanatory
+       comment.
+       * system.h (DWARF_LINE_MIN_INSTR_LENGTH): Poison.
+
+Thu Feb 21 22:43:44 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * jump.c (redirect_jump): If old label has no UID, don't try to
+       delete it.
+
+Thu Feb 21 21:17:21 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.md (insv): Provide byte offsets for gen_rtx_SUBREG.
+       If input is constant, do shifts at compile time.
+
+2002-02-21  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * doc/extend.texi: Fix some more overfull hboxes.
+
+2002-02-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR optimization/4994
+       * config/i386/i386.md (movsi_1, movsf_1): Support MMX -> MMX
+       register moves.
+
+2002-02-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/4574
+       * expr.h (expand_and): Add mode argument.
+       * expmed.c (expand_and): Add mode argument.
+       (expand_mult_highpart_adjust, emit_store_flag): Adjust callers.
+       * expr.c (store_field, expand_expr, do_store_flag): Likewise.
+       * except.c (expand_builtin_extract_return_addr): Likewise.
+       * config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.
+       * config/sparc/sparc.c (sparc_initialize_trampoline): Likewise.
+       * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Likewise.
+       Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x).
+       * config/c4x/c4x.md: Use GEN_INT (x) instead of
+       gen_rtx (CONST_INT, VOIDmode, x).
+
+2002-02-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/4697:
+       * stmt.c (warn_if_unused_value): Move side effects test once more.
+
+2002-02-20  Torbjorn Granlund  <tege@swox.com>
+
+       * config/avr/avr.md: Add more patterns for mized-mode add and subtract
+       (addsi3_zero_extend, subhi3_zero_extend1, subsi3_zero_extend).
+
+Thu Feb 21 16:20:46 2002  Alexandre Oliva  <aoliva@redhat.com>
+
+       * rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of
+       SUBREG or ZERO_EXTEND.
+
+Thu Feb 21 15:35:46 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.h (current_function_anonymous_args): Remove.
+       (SETUP_INCOMING_VARARGS): Don't set it - just check that one
+       of current_function_varargs and current_function_stdarg is set.
+       * sh.c (sh_expand_prologue): Check current_function_varargs /
+       current_function_stdarg / TARGET_SH5 instead of
+       current_function_anonymous_args.
+
+       * sh64.h (TARGET_VERSION): Define.
+
+2002-02-20  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.h (EPILOGUE_USES): Conditionalize
+       VRSAVE_REGNO on TARGET_ALTIVEC.
+
+2002-02-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (includes_lshift_p): Mask irrelevant
+       bits of SImode const_int.
+       (includes_rshift_p): Likewise.
+       (print_operand): Call mask_operand and mask64_operand with correct
+       mode.
+       (rs6000_output_function_epilogue): Pad traceback table to word.
+       * config/rs6000/rs6000.h (MASK_64BIT): Correct comment.
+       (EXTRA_CONSTRAINT, 'S' and 'T'): Call mask_operand and
+       mask64_operand with correct mode.
+       (FUNCTION_ARG_REGNO_P): Correct parentheses.
+
+2002-02-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/4461
+       * varasm.c (get_pool_constant_mark): New.
+       * rtl.h (get_pool_constant_mark): Add prototype.
+       * dwarf2out.c (mem_loc_descriptor): A pool constant cannot
+       be represented if it has not been output.
+
+2002-02-20  Alexandre Oliva  <aoliva@redhat.com>
+
+       * combine.c (do_SUBST): Sanity check substitutions of
+       CONST_INTs, and reject them in SUBREGs and ZERO_EXTENDs.
+       (subst): Simplify SUBREG or ZERO_EXTEND instead of SUBSTing a
+       CONST_INT into its operand.
+       (known_cond): Likewise, for ZERO_EXTEND.
+       * simplify-rtx.c (simplify_unary_operation): Fix condition to
+       allow for simplification of wide modes.  Reject CONST_INTs in
+       ZERO_EXTEND when their actual mode is not given.
+
+2002-02-20  Alexandre Oliva  <aoliva@redhat.com>
+
+       * c-decl.c (pushdecl): If no global declaration is found for an
+       extern declaration in block scope, try a limbo one.
+
+2002-02-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/4401
+       * c-common.c (pointer_int_sum): Moved from...
+       * c-typeck.c (pointer_int_sum): ...here.
+       * c-common.h (pointer_int_sum): Add prototype.
+
+2002-02-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/5713
+       * c-decl.c (duplicate_decls): Return 0 if issued error about
+       redeclaration.
+
+2002-02-20  Roger Sayle  <roger@eyesopen.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/4389
+       * tree.c (host_integerp): Ensure that the constant integer is
+       representable in a HOST_WIDE_INT or an unsigned HOST_WIDE_INT
+       when pos is zero or non-zero respectively.  Clarify comment.
+       * c-format.c (check_format_info_recurse): Fix host_integerp
+       usage; the pos argument should be zero when assigning to a
+       signed HOST_WIDE_INT.
+
+2002-02-20  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.c (ix86_expand_vector_move): Use the mode
+       of the operand, rather than assuming TImode.
+       (ix86_expand_binop_builtin): Cope with commutative patterns
+       using nonimmediate_operand for both operands.
+       (ix86_expand_timode_binop_builtin): Likewise.
+       (ix86_expand_store_builtin): Validate operand 1.
+       (ix86_expand_unop1_builtin): Likewise.
+
+2002-02-20  Philip Blundell  <philb@gnu.org>
+
+       PR 5705
+       * config/arm/arm.h (HARD_REGNO_RENAME_OK): New macro.
+
+2002-02-20  Richard Henderson  <rth@redhat.com>
+
+       PR c/5615
+       * expr.h (ARGS_SIZE_TREE): Convert size.var to ssizetype.
+
+2002-02-20  Tom Tromey  <tromey@redhat.com>
+
+       * config/fr30/fr30.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
+       * config/sh/sh.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
+       * config/pj/pj.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
+       * config/cris/cris.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
+       * dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Define
+       unconditionally.
+
+Wed Feb 20 00:03:25 EST 2002 Alan Matsuoka <alanm@redhat.com>
+
+       * config/rs6000/rs6000.h (LEGITIMATE_OFFSET_ADDRESS_P): Look
+         for (const_int 0) in X not just INTVAL.
+
+2002-02-20  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * doc/extend.texi: Avoid or reduce overfull hboxes.
+
+2002-02-20  Diego Novillo  <dnovillo@redhat.com>
+
+       * expmed.c (store_bit_field): Do not store bit fields using SUBREG
+       operations if the field does not start at a mode boundary.
+
+2001-02-20     Joel Sherrill <joel@OARcorp.com>
+
+       * config/a29k/rtems.h, config/arm/rtems-elf.h, config/h8300/rtems.h,
+       config/mips/rtems.h: Use new style of -Asystem= rather than -Asystem().
+       Also done for -Acpu and -Amachine.
+
+2002-02-20  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cppinit.c (init_dependency_output): Take deps output file
+       from -o if none given with -MF.  Suppress normal output.
+       * gcc.c (cpp_unique_options): Have -M and -MM imply -E.
+       * doc/cpp.texi, doc/invoke.texi: Update.
+
+2002-02-19  Zack Weinberg  <zack@codesourcery.com>
+
+       * toplev.c (output_quoted_string): Write unprintable
+       characters with octal escapes.
+
+2002-02-19  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Set
+       really_call_used[VRSAVE_REGNO] if not Altivec.
+
+2002-02-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (u_short_cint_operand): Mask op with
+       MODE_MASK.
+       (constant_pool_expr_1): Fix formatting.
+       (rs6000_legitimize_reload_address): Likewise.
+
+Tue Feb 19 20:13:57 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/sparc/sparc.md (nonlocal_goto): Use hard_frame_pointer_rtx
+       now that we have one.
+
+2002-02-19  Zack Weinberg  <zack@codesourcery.com>
+
+       * tree.h (struct tree_common): Remove aux.  Add unused_0 at
+       end of first block of bitfields (which was only seven bits);
+       rename dummy to unused_1; remove comment which is no longer true.
+
+2002-02-19  Gaute B Strokkenes <gs234@cam.ac.uk>
+
+       * doc/c-tree.texi (Classes, TYPE_BINFO): Fix typo.
+
+2002-02-19  Philip Blundell  <pb@nexus.co.uk>
+
+       PR 5399
+       * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept anything
+       if generating PIC.
+
+       PR 5054
+       * config/arm/arm.md (call_insn) [TARGET_THUMB]: Use
+       arm_is_longcall_p rather than inspecting call-type cookie
+       directly.
+       (call_value_insn) [TARGET_THUMB]: Likewise.
+
+2002-02-19  Graham Stott  <grahams@redhat.com>
+
+       * config/i386/i386.c (ix86_expand_builtin): Fix typo.
+
+2002-02-19  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/linux64.h (LINK_OS_LINUX_SPEC): Look in /lib64.
+       ({STARTFILE,ENDFILE}_LINUX_SPEC): Define.
+       (FP_SAVE_INLINE): Delete.
+
+       * config/rs6000/sysv4.h (ENDFILE_SPEC): Add crtsaveres.o.
+       * config/rs6000/eabi.asm: Remove ABI save restore routines.
+       * config/rs6000/t-ppccomm: Build crtsavres.o.
+       * config/rs6000/crtsavres.asm: New file.
+
+2002-02-19  Philip Blundell  <philb@gnu.org>
+
+       * config/arm/arm.c (use_return_insn): Don't reject interrupt
+       functions.
+       (arm_compute_save_reg_mask): Save LR for interrupt functions too.
+       (output_return_instruction): Allow interrupt functions to return with
+       ldmfd sp!, {... pc}^.  Use LDR to restore any single register.
+       (arm_expand_prologue): Subtract 4 before stacking LR in an
+       interrupt function.
+
+2002-02-19  Philip Blundell  <pb@nexus.co.uk>
+
+       * config/arm/arm.c (arm_encode_call_attribute): Operate on any
+       decl, not just FUNCTION_DECL.
+       (legitimize_pic_address): Handle local SYMBOL_REF like LABEL_REF.
+       (arm_assemble_integer): Likewise.
+       * config/arm/arm.h (ARM_ENCODE_CALL_TYPE): Allow any decl to be
+       marked local.
+
+2002-02-19  matthew green  <mrg@eterna.com.au>
+
+       * config.gcc (sparc-*-netbsdelf*): Enable target.
+       (sparc64-*-netbsd*): New target.
+       * config/sparc/netbsd-elf.h: New file.
+       * config/sparc/t-netbsd64: New file.
+
+2002-02-19  Gaute B Strokkenes <gs234@cam.ac.uk>
+
+       * doc/rtl.texi (Flags, MEM_SCALAR_P): Fix typo.
+
+2002-02-19  Ryan T. Sammartino <ryants@shaw.ca>
+
+       * doc/invoke.texi: explicitly list the style guidelines that
+       -Weffc++ checks for.
+
+Tue Feb 19 12:37:23 CET 2002  Jan Hubicka  <jh@suse.cz>
+
+       * regmove.c (regmove_optimize): Avoid increasing of register pressure.
+
+2002-02-19  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       PR other/5718
+       * gcc.c (cpp_unique_options): Treat -o as indicating object file
+       only if not -E.  If -E, pass -o through to the preprocessor.
+
+2002-02-19  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.h (REGNO_REG_CLASS): Replace a literal
+       register number with an appropriate macro.
+
+2002-02-19  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
+
+       * doc/rtl.texi (Constants): Close @code tag.
+
+2002-02-19  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/i386/i386.md ("mmx_uavgv8qi3"): Use const_vector.
+       ("mmx_uavgv4hi3"): Same.
+       ("pmulhrwv4hi3"): Same.
+
+       * tree-inline.c (walk_tree): Handle vectors.
+
+       * c-common.c (constant_expression_warning): Handle vectors.
+       (overflow_warning): Same.
+
+       * sched-deps.c (sched_analyze_2): Handle vectors.
+
+       * rtlanal.c (rtx_unstable_p): Handle vectors.
+       (rtx_varies_p): Same.
+       (count_occurrences): Same.
+       (regs_set_between_p): Same.
+       (modified_between_p): Same.
+       (modified_in_p): Same.
+       (volatile_insn_p): Same.
+       (volatile_refs_p): Same.
+       (side_effects_p): Same.
+       (may_trap_p): Same.
+       (inequality_comparisons_p): Same.
+       (replace_regs): Same.
+       (computed_jump_p_1): Same.
+
+       * rtl.c (DEF_MACHMODE): Change all definitions to accept 8th
+       argument.
+       (inner_mode_array): New.
+       (copy_rtx): Handle vectors.
+       (copy_most_rtx): Same.
+       (rtx_equal_p): Same.
+       (get_mode_alignment): Adjust for vectors.
+
+       * resource.c (mark_referenced_resources): Handle vectors.
+       (mark_set_resources): Same.
+
+       * reload1.c (eliminate_regs): Handle vectors.
+       (elimination_effects): Same.
+       (scan_paradoxical_subregs): Same.
+
+       * reload.c (subst_reg_equivs): Handle vectors.
+
+       * regrename.c (scan_rtx): Handle vectors.
+
+       * regclass.c (reg_scan_mark_refs): Handle vectors.
+
+       * recog.c (find_single_use_1): Handle vectors.
+
+       * local-alloc.c (equiv_init_varies_p): Handle vectors.
+       (contains_replace_regs): Same.
+       (memref_referenced_p): Same.
+
+       * integrate.c (copy_rtx_and_substitute): Handle vectors.
+       (subst_constants): Same.
+
+       * genattrtab.c (attr_copy_rtx): Handle vectors.
+       (encode_units_mask): Same.
+       (clear_struct_flag): Same.
+       (count_sub_rtxs): Same.
+
+       * gcse.c (want_to_gcse_p): Handle vectors.
+       (oprs_unchanged_p): Same.
+       (hash_expr_1): Same.
+       (oprs_not_set_p): Same.
+       (expr_killed_p): Same.
+       (compute_transp): Same.
+       (store_ops_ok): Same.
+
+       * function.c (purge_addressof_1): Do not allow paradoxical subregs
+       of vectors.
+       (fixup_var_refs_1): Same.
+       (instantiate_virtual_regs_1): Same.
+
+       * fold-const.c (operand_equal_p): Handle vectors.
+       (fold): Same.
+       (rtl_expr_nonnegative_p): Same.
+
+       * flow.c (mark_used_regs): Handle vectors.
+
+       * df.c (df_uses_record): Handle vectors.
+
+       * cselib.c (cselib_subst_to_values): Handle vectors.
+       (cselib_mem_conflict_p): Same.
+       (hash_rtx): Same.
+
+       * cse.c (canon_reg): Handle vectors.
+       (fold_rt): Same.
+       (cse_process_notes): Same.
+       (count_reg_usage): Same.
+       (canon_hash): Same.
+
+       * alias.c (nonlocal_mentioned_p): Add case for CONST_VECTOR.
+
+       * combine.c (mark_used_regs_combine): Add case for CONST_VECTOR.
+
+       * emit-rtl.c (init_emit_once): Generate const0_rtx for vectors.
+       (gen_rtx): Handle CONST_VECTOR.
+       (gen_const_vector_0): New.
+       (copy_rtx_if_shared): CONST_VECTORs can be shared.
+       (reset_used_flags): Same.
+       (copy_insn_1): Same.
+       (initializer_constant_valid_p): Handle VECTOR_CST.
+
+       * doc/c-tree.texi (Expression trees): Document VECTOR_CST.
+
+       * doc/rtl.texi (Constants): Document const_vector.
+       (CONST0_RTX): Update for vectors.
+       (RTL sharing): Same.
+
+       * print-tree.c (print_node): Add case for VECTOR_CST.
+
+       * tree.h (TREE_VECTOR_CST_ELTS): New.
+       (struct tree_vector): New.
+       (union tree_node): Add vector node.
+       (build_vector): Add prototype.
+
+       * tree.def (VECTOR_CST): New.
+
+       * tree.c (build_vector): New.
+
+       * expmed.c (make_tree): Handle CONST_VECTOR.
+
+       * rtl.h (CONSTANT_P): CONST_VECTORs are constants too.
+       (CONST_VECTOR_ELT): New.
+       (CONST_VECTOR_NUNITS): New.
+
+       * machmode.h (GET_MODE_INNER): New.
+       (DEF_MACHMODE): Accept 8th arg.
+
+       * machmode.def: Add 8th argument for vector inner mode.
+       Add inner vector modes for vectors.
+
+       * rtl.def (VEC_CONST): Remove.
+       (CONST_VECTOR): New.
+
+       * expr.c (clear_storage): Allow vectors.
+       (is_zeros_p): Handle VECTOR_CST.
+
+       * varasm.c (output_constant_pool): Handle vectors.
+       (rtx_const): Add veclo and vechi fields.
+       (kind): Add RTX_VECTOR.
+       (decode_rtx_const): Add case for vector.
+
+       * config/rs6000/rs6000-protos.h: Add zero_constant.
+
+       * config/rs6000/rs6000.c (rs6000_emit_move): Handle vector
+       constants.  Force easy vector constants into memory.
+       (easy_vector_constant): New.
+       (emit_easy_vector_constant): New.
+       (rs6000_legitimize_reload_address): Do not generate bad reloads on
+       darwin.
+
+       * config/rs6000/rs6000.md ("altivec_lvx"): Reflect what
+       instruction does.
+       ("altivec_lvxl"): Same.
+       (altivec_lvebx): Same.
+       (altivec_lvehx): Same.
+       (altivec_lvewx): Same.
+       ("*movv4si_const0"): New.
+       ("*movv4sf_const0"): New.
+       ("*movv8hi_const0"): New.
+       ("*movv16qi_const0"): New.
+
 2002-02-18  Kazu Hirata  <kazu@hxi.com>
 
        * config/h8300/h8300.c (notice_update_cc): Use
@@ -51,7 +911,7 @@ Mon Feb 18 11:55:55 CET 2002  Jan Hubicka  <jh@suse.cz>
 2002-02-18  David Billinghurst <David.Billinghurst@riotinto.com>
 
        * objc/objc-act.c (handle_impent): Remove leading '*'
-       from objc_class_name. 
+       from objc_class_name.
 
 2002-02-17  Richard Henderson  <rth@redhat.com>
 
@@ -107,7 +967,7 @@ Mon Feb 18 11:55:55 CET 2002  Jan Hubicka  <jh@suse.cz>
        * config/arc/arc.c config/fr30/fr30.c config/m32r/m32r.c
        config/m88k/m88k.c : Adapt all calls to output_operand_lossage.
        Update copyright date where necessary.
-       
+
        * config/i386/i386.c (print_operand): Likewise. Remove use of
        sprintf.
 
@@ -176,15 +1036,15 @@ Sat Feb 16 13:39:09 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
 2002-02-16  Ulrich Weigand  <uweigand@de.ibm.com>
 
-       * config/s390/s390.c (pool_stop_uid, other_chunk, far_away, 
+       * config/s390/s390.c (pool_stop_uid, other_chunk, far_away,
        check_and_change_labels, s390_final_chunkify): Delete.
        (s390_split_branches, s390_chunkify_pool): New functions.
        (s390_function_prologue): Call them.
-       
+
        * config/s390/s390.h (S390_REL_MAX): Delete.
        (S390_CHUNK_MAX, S390_CHUNK_OV): Adjust values.
 
-       * config/s390/s390.md (cjump, icjump, jump): Fix length 
+       * config/s390/s390.md (cjump, icjump, jump): Fix length
        attribute calculation.
 
 
@@ -252,20 +1112,20 @@ Sat Feb 16 13:39:09 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
 2002-02-14  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors.
+       * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors.
 
-        * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX.
+       * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX.
 
 2002-02-14  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/rs6000.md ("*movv4si_internal"): Add m<-r and r<-r
-        alternatives.
-        ("*movv8hi_internal1"): Same.
-        ("*movv16qi_internal1"): Same.
-        ("*movv4sf_internal1"): Same.
+       * config/rs6000/rs6000.md ("*movv4si_internal"): Add m<-r and r<-r
+       alternatives.
+       ("*movv8hi_internal1"): Same.
+       ("*movv16qi_internal1"): Same.
+       ("*movv4sf_internal1"): Same.
 
-        * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
-        not push_reload for altivec modes.
+       * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
+       not push_reload for altivec modes.
 
 2002-02-13  Joel Sherrill  <joel@OARcorp.com>
 
@@ -378,17 +1238,17 @@ Wed Feb 13 10:35:56 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-02-12  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/rs6000.md: Use predicate altivec_register_operand
-        for altivec_lvx* and altivec_stvx*.
-        ("*movv4si_internal"): Add constraint for loading from GPRs.
-        ("*movv8hi_internal1"): Same.
-        ("*movv16qi_internal1"): Same.
-        ("*movv4sf_internal1"): Same.
+       * config/rs6000/rs6000.md: Use predicate altivec_register_operand
+       for altivec_lvx* and altivec_stvx*.
+       ("*movv4si_internal"): Add constraint for loading from GPRs.
+       ("*movv8hi_internal1"): Same.
+       ("*movv16qi_internal1"): Same.
+       ("*movv4sf_internal1"): Same.
 
-        * config/rs6000/rs6000.c (altivec_register_operand): New.
+       * config/rs6000/rs6000.c (altivec_register_operand): New.
 
-        * config/rs6000/rs6000.h (PREDICATE_CODES): Add
-        altivec_register_operand.
+       * config/rs6000/rs6000.h (PREDICATE_CODES): Add
+       altivec_register_operand.
 
 2002-02-13  Hans-Peter Nilsson  <hp@bitrange.com>
 
@@ -397,15 +1257,15 @@ Wed Feb 13 10:35:56 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-02-13  Stan Shebs  <shebs@apple.com>
 
-        * c-typeck.c (digest_init): Handle vectors.
-        (really_start_incremental_init): Same.
-        (pop_init_level): Same.
-        (process_init_element): Same.
+       * c-typeck.c (digest_init): Handle vectors.
+       (really_start_incremental_init): Same.
+       (pop_init_level): Same.
+       (process_init_element): Same.
 
-        * varasm.c (output_constant): Same.
+       * varasm.c (output_constant): Same.
 
-        * expr.c (clear_storage): Same.
-        (store_constructor): Same.
+       * expr.c (clear_storage): Same.
+       (store_constructor): Same.
 
 2002-02-12  Eric Christopher  <echristo@redhat.com>
 
@@ -476,17 +1336,17 @@ Tue Feb 12 10:12:56 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
 2002-02-11  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/rs6000.c (altivec_init_builtins): Handle
-        __builtin_altivec_abs*.
-        (bdesc_abs): New.
+       * config/rs6000/rs6000.c (altivec_init_builtins): Handle
+       __builtin_altivec_abs*.
+       (bdesc_abs): New.
 
-        * config/rs6000/rs6000.h (rs6000_builtins): Add
-        ALTIVEC_BUILTIN_ABS*.
+       * config/rs6000/rs6000.h (rs6000_builtins): Add
+       ALTIVEC_BUILTIN_ABS*.
 
-        * config/rs6000/altivec.h: Use const char for builtins expecting
-        literals.
-        (vec_abs): New versions for C and C++.
-        (vec_abss): Same.
+       * config/rs6000/altivec.h: Use const char for builtins expecting
+       literals.
+       (vec_abs): New versions for C and C++.
+       (vec_abss): Same.
 
 2002-02-10  Kazu Hirata  <kazu@hxi.com>
 
@@ -1474,9 +2334,9 @@ Sat Feb  9 18:28:02 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-02-08  Chris Demetriou  <cgd@broadcom.com>
 
-        * config/mips/mips.md (casesi_internal, casesi_internal_di):
-        Protect jump delay slot instructions with .set noreorder and
-        .set nomacro.
+       * config/mips/mips.md (casesi_internal, casesi_internal_di):
+       Protect jump delay slot instructions with .set noreorder and
+       .set nomacro.
 
 2002-02-08  Chris Demetriou  <cgd@broadcom.com>
 
@@ -1712,7 +2572,7 @@ Thu Feb  7 12:14:17 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-02-06  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/rs6000/altivec.h: Change elem to _S_elem.
+       * config/rs6000/altivec.h: Change elem to _S_elem.
 
 2002-02-05  Jason Thorpe  <thorpej@wasabisystems.com>
 
@@ -1753,20 +2613,6 @@ Thu Feb  7 12:14:17 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-02-05  Jason Merrill  <jason@redhat.com>
 
-       * c-typeck.c (convert_for_assignment): Don't allow conversions
-       between pointers and references.  Only allow lvalues to convert to
-       reference.
-
-       * c-decl.c (finish_function): Warn about a non-void function with
-       no return statement and no abnormal exit.
-       (current_function_returns_abnormally): New variable.
-       (start_function): Clear it.
-       (struct c_language_function): Add returns_abnormally.
-       (push_c_function_context): Save it.
-       (pop_c_function_context): Restore it.
-       * c-tree.h: Declare current_function_returns_abnormally.
-       * c-typeck.c (build_function_call): Set it.
-
        * collect2.c (dump_file): Pass DMGL_VERBOSE to cplus_demangle.
 
 2002-02-05  Andreas Jaeger  <aj@suse.de>
@@ -1876,10 +2722,10 @@ Mon Feb  4 19:23:19 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * config/arm/arm.h (machine_function): Add uses_anonymous_args
        field.
-        (SETUP_INCOMING_VARARGS): Set uses_anonymous_args.
+       (SETUP_INCOMING_VARARGS): Set uses_anonymous_args.
        * config/arm/arm.c (current_function_anonymous_args): Delete,
-        replace uses with cfun->machine->uses_anonymous_args.
-        (arm_reorg): Do not reset uses_anonymous_args.
+       replace uses with cfun->machine->uses_anonymous_args.
+       (arm_reorg): Do not reset uses_anonymous_args.
 
        * config/arm/arm.c (arm_hard_regno_mode_ok): Allow any value in
        any geenral register.
@@ -1986,8 +2832,8 @@ Mon Feb  4 09:05:58 2002  Jeffrey A Law  (law@redhat.com)
 
 2002-02-04  Hartmut Penner  <hpenner@de.ibm.com>
 
-        * varasm.c (decode_rtx_const): Allow unspec (symbol_ref) in
-        constant pool to be identical by string address and index.
+       * varasm.c (decode_rtx_const): Allow unspec (symbol_ref) in
+       constant pool to be identical by string address and index.
 
 2002-02-04  Anthony Green  <green@redhat.com>
 
@@ -2142,18 +2988,18 @@ doc:
 
 2002-01-30  Andrew Haley  <aph@cambridge.redhat.com>
 
-        * config/stormy16/stormy16.md (pushqi): New.
-        (popqi): New.
-        (pushhi): New.
-        (pophi): New.
-        (movhi): Remove stack operands.
-        (movqi): Likewise.
-        * config/stormy16/stormy16.h (PREDICATE_CODES): Add
-        nonimmediate_nonstack_operand.
-        * config/stormy16/stormy16.c (nonimmediate_nonstack_operand):
-        New.
-        * config/stormy16/stormy16-protos.h (nonimmediate_nonstack_operand)
-        New.
+       * config/stormy16/stormy16.md (pushqi): New.
+       (popqi): New.
+       (pushhi): New.
+       (pophi): New.
+       (movhi): Remove stack operands.
+       (movqi): Likewise.
+       * config/stormy16/stormy16.h (PREDICATE_CODES): Add
+       nonimmediate_nonstack_operand.
+       * config/stormy16/stormy16.c (nonimmediate_nonstack_operand):
+       New.
+       * config/stormy16/stormy16-protos.h (nonimmediate_nonstack_operand)
+       New.
 
 2002-01-31  Jason Merrill  <jason@redhat.com>