OSDN Git Service

2003-04-21 Matt Kraai <kraai@alumni.cmu.edu>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 19fdf5a..869a175 100644 (file)
+2003-04-21  Matt Kraii  <kraii@alumni.cmu.edu>
+
+       * config/rs6000/rs6000.md (*movsf_softfloat): Add "h" <- "0" case.
+
+2003-04-21  Neil Booth  <neil@daikokuya.co.uk>
+
+       * c-ppoutput.c (cb_include): Don't take a cpp_token.
+       * cppfiles.c: Don't undef strcmp.
+       (find_include_file): Don't take a cpp_token.  Check for empty
+       file names.
+       (_cpp_execute_include, _cpp_compare_file_date): Don't take a cpp_token.
+       (cpp_push_include): Simplify.
+       * cpphash.h (_cpp_execute_include, _cpp_compare_file_date): Update.
+       * cpplib.c (glue_header_name): Return the file name, not a cpp_token.
+       (parse_include): Similary.  Don't check for zero-length filenames.
+       (do_include_common, do_pragma_dependency): Update accordingly.
+       * cpplib.h (struct cpp_callbacks): Change prototype of include.
+
+2003-04-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (store_constructor): Set RTX_UNCHANGING_P if readonly_field_p
+       before clearing.
+
+2003-04-21  Mark Mitchell  <mark@codesourcery.com>
+
+       * config/i386/winnt.c (i386_pe_mark_dllimport): Make the new RTL
+       have the same form as the old RTL.
+
+2003-04-21  Andreas Jaeger  <aj@suse.de>
+
+        * cppcharset.c (_cpp_valid_ucn): Cast field precision to int.
+
+2003-04-20  Chris Lattner  <sabre@nondot.org>
+           Zack Weinberg  <zack@codesourcery.com>
+
+       * c-common.h, c-semantics.c: Rename genrtl_decl_cleanup to
+       genrtl_cleanup_stmt.  Correct comment at head of
+       genrtl_cleanup_stmt (no such thing as a DECL_CLEANUP).
+
+       * stmt.c (struct nesting): Kill n_function_calls.
+       (expand_start_bindings): Don't set
+       thisblock->data.block.n_function_calls.
+       (expand_end_bindings): Compare function_call_count against 0.
+       (expand_cleanups): Kill DONT_DO argument; all callers passed
+       NULL_TREE. All callers updated to match.
+
+2003-04-20  Zack Weinberg  <zack@codesourcery.com>
+
+       * varasm.c (struct deferred_constant, defer_addressed_constants_flag)
+       (defer_addressed_constants, output_deferred_addressed_constants): Kill.
+       (output_constant_def): Remove code predicated on
+       defer_addressed_constants_flag.
+
+       * output.h: Remove prototypes of deleted functions.
+       * c-typeck.c (constructor_subconstants_deferred): Kill.
+       (struct initializer_stack): Remove 'deferred' field.
+       (start_init): Remove all references to the above.
+       (finish_init): Likewise. Also remove never-executed call to
+       output_deferred_addressed_constants.  Pull assignment to
+       defstr out of if expression.
+
+2003-04-20  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cpphash.h (NOTE_ESC_NL, NOTE_ESC_SPACE_NL, NOTE_TRIGRAPH,
+       NOTE_NEWLINE): Remove.
+       * cpplex.c (_cpp_clean_line, _cpp_process_line_notes): Update
+       to handle new form of line note type.
+
+2003-04-20  Zack Weinberg  <zack@codesourcery.com>
+
+       * target.h (encode_section_info): Add new argument carrying
+       the RTL to be modified by the hook.
+
+       * varasm.c (make_decl_rtl, output_constant_def): Update calls
+       to encode_section_info.
+       (default_encode_section_info): Take and use RTL argument,
+       don't use TREE_CST_RTL or DECL_RTL.
+       * output.h: Update prototype of default_encode_section_info.
+       * config/darwin.h (ASM_DECLARE_OBJECT_NAME)
+       (ASM_DECLARE_FUNCTION_NAME, ASM_OUTPUT_ALIGNED_DECL_LOCAL):
+       Update calls to encode_section_info.
+
+       * config/darwin.c, config/arm/arm.c, config/arm/pe.c
+       * config/h8300/h8300.c, config/i386/winnt.c, config/m32r/m32r.c
+       * config/m68hc11/m68hc11.c, config/m88k/m88k.c, config/mcore/mcore.c
+       * config/mips/mips.c, config/mmix/mmix.c, config/pa/pa.c
+       * config/romp/romp.c, config/rs6000/rs6000.c, config/s390/s390.c
+       * config/v850/v850.c (TARGET_ENCODE_SECTION_INFO definitions):
+       Take and use RTL argument, don't use TREE_CST_RTL or DECL_RTL,
+       except for PE dllimport/dllexport.  Update calls to
+       default_encode_section_info.
+
+       * config/darwin-protos.h, config/arm/arm-protos.h, config/i386-protos.h:
+       Update prototypes.
+
+       * doc/tm.texi (TARGET_ENCODE_SECTION_INFO): Update.
+
+2003-04-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR/8705
+       * pa.md (movccfp): New expander.
+       (setccfp0, setccfp1): Rename to movccfp0 and movccfp1, respectively.
+       Reverse fcmp conditions.
+
+2003-04-20  Marek Michalkiewicz  <marekm@amelek.gda.pl>
+
+       * config/avr/avr.md (*cmpqi_sign_extend): Handle negative values
+       of operand 1 correctly.
+
+2003-04-20  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * cpplex.c (_cpp_lex_direct): Set BOL for CPP_EOF tokens.
+       * gcov.c (output_lines): Don't be so fussy about going past EOF.
+
+2003-04-20  Neil Booth  <neil@daikokuya.co.uk>
+
+       * Makefile.in (LIBCPP_OBJS): Add cppcharset.o.
+       (cppcharset.o): New target.
+       * c-lex.c (is_extended_char): Move to cppcharset.c.
+       (utf8_extend_token): Delete.
+       * cppcharset.c: New file.
+       * cpphash.h (_cpp_valid_ucn): New.
+       * cpplex.c (lex_identifier): Update prototype.
+       (continues_identifier_p): Rename forms_identifier_p.  Handle UCN
+       escapes.
+       (maybe_read_ucs): Rename maybe_read_ucn.  Update to use code
+       in cppcharset.c.
+       (lex_number, lex_identifier, cpp_parse_escape): Update.
+       (_cpp_lex_direct): Update to handle UCNs.
+       (cpp_avoid_paste): Don't paste to form a UCN.
+
+2003-04-19  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (expand_builtin):  Don't expand a pure or const
+       built-in function if the result will be ignored and none of
+       its arguments are volatile.
+
+2003-04-19  Kean Johnston  <jkj@sco.com>
+
+       * unwind-dw2.c (_Unwind_GetCFA): cast return to avoid warning
+       * config.gcc: make SCO use dbxelf.h and elfos.h; only use one
+       target fragment now: t-sco5; dont compile crti.o.
+       * config/i386/sco5.h: major overhaul to remove all COFF remnants
+       and to use elfos.h for most definitions.
+       (BSS_SECTION_ASM_OP): set correct segment attributes.
+       (PREFERED_DEBUGGING_TYPE): set to DWARF-2.
+       (DWARF2_UNWIND_INFO): Always set to 1.
+       (MD_STARTFILE_PREFIX): Make /usr/gnu/lib the default.
+       (MD_STARTFILE_PREFIX_1): Define.
+       (MD_EXEC_PREFIX): Adjust to /usr/gnu/bin if using GAS.
+       (DEFAULT_LINKER): Define if not specified to configure.
+       (CTORS_SECTION_ASM_OP): Remove COFF crud.
+       (DTORS_SECTION_ASM_OP): Remove COFF crud.
+       (WINT_TYPE): Define.
+       (SDB_DEBUGGING_INFO): Remove.
+       (EXTRA_SECTIONS): Likewise.
+       (EXTRA_SECTION_FUNCTIONS): Likewise.
+       (CTOR_LIST_BEGIN): Likewise.
+       (CTOR_LIST_END): Likewise.
+       (INIT_SECTION_FUNCTION): Likewise.
+       (FINI_SECTION_FUNCTION): Likewise.
+       (SUBTARGET_FRAME_POINTER_REQUIRED): Likewise.
+       (LOCAL_LABEL_PREFIX): Likewise.
+       (NON_SAVING_SETJMP): Likewise.
+       (RETURN_POPS_ARGS): Likewise.
+       (ASM_OUTPUT_SKIP): Likewise.
+       (TARGET_ASM_NAMED_SECTION): Likewise.
+       (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+       (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
+       (ASM_OUTPUT_IDENT): Likewise.
+       (ASM_OUTPUT_CASE_LABEL): Likewise.
+       (ASM_OUTPUT_ASCII): Likewise.
+       (ASM_OUTPUT_LIMITED_STRING): Likewise.
+       (ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
+       (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
+       (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+       (ASM_FINISH_DECLARE_OBJECT): Likewise.
+       (ASM_DECLARE_OBJECT_NAME): Likewise.
+       (ASM_DECLARE_FUNCTION_SIZE): Likewise.
+       (ASM_DECLARE_FUNCTION_NAME): Likewise.
+       (ASM_DECLARE_RESULT): Likewise.
+       (ASM_WEAKEN_LABEL): Likewise.
+       (SUPPORTS_WEAK): Likewise.
+       (APPLY_RESULT_SIZE): Likewise.
+       (LPREFIX): Likewise.
+       (ALIGN_ASM_OP): Likewise.
+       (ASCII_DATA_ASM_OP): Likewise.
+       (IDENT_ASM_OP): Likewise.
+       (ASM_SHORT): Likewise.
+       (ASM_LONG): Likewise.
+       (TYPE_ASM_OP): Likewise.
+       (SIZE_ASM_OP): Likewise.
+       (STRING_ASM_OP): Likewise.
+       (SKIP_ASM_OP): Likewise.
+       (EH_FRAME_SECTION_ASM_OP): Likewise.
+       (READONLY_DATA_SECTION_ASM_OP): Likewise.
+       (INIT_SECTION_ASM_OP): Likewise.
+       (FINI_SECTION_ASM_OP): Likewise.
+       (TEXT_SECTION_ASM_OP): Likewise.
+       (DATA_SECTION_ASM_OP): Likewise.
+       (TYPE_OPERANT_FORMAT): Likewise.
+       (ASM_SPEC): Remove COFF code.
+       (STARTFILE_SPEC): Likewise. Always use crti.o; add -p and -pp support;
+       cause -pg to emit an error; use pcrt1elf.o with -pp
+       (ENDFILE_SPEC): Likewise.
+       (TARGET_OS_CPP_BUILTINS): Add _SCO_DS_LL.
+       (CPP_SPEC): Remove COFF crud; always look in /usr/gnu/include first.
+       (LINK_SPEC): Remove COFF crud; use -E for environment switch not -R;
+       add -z alt_resolve to support weak symbols the way GCC wants them.
+       (LIB_SPEC): Use the profiler libraries in -p or -pp mode.
+       (LIBGCC_SPEC): Dont use -lgcc in -G mode.
+       (ASM_PREFERED_EH_DATA_FORMAT): Remove.
+       * config/i386/t-sco5 (TARGET_LIBGCC2_CFLAGS): Remove.
+       (CRTSTUFF_T_CFLAGS_S): Define.
+       (MULTILIB_OPTIONS): Likewise.
+       (MULTILIB_DIRNAMES): Likewise.
+       (MULTILIB_MATCHES): Likewise.
+       (MULTILIB_EXTRA_OPTS): Likewise.
+       (LIBGCC): Likewise.
+       (INSTALL_LIBGCC): Likewise.
+       (crti.o): Remove.
+       * config/i386/t-sco5gas: Remove.
+       * doc/install.texi: Updated for new OpenServer instructions.
+       * testsuite/gcc.dg/nest.c: Allow failure on SCO (-pg not supported)
+
+2003-04-19  Kean Johnston  <jkj@sco.com>
+
+       * fixinc/check.tpl: Allow user to over-ride diff program.
+       * fixinc/inclhack.def: Removed extraneous #ifndef SVR5.
+       (sco_math): Added test for SCO math header files.
+       (sco_regset): Added check for conflicts with ieeefp.h.
+       (svr4_disable_opt): Removed extraneous #ifdef SVR4.
+       * fixinc/fixincl.x: Regenerated
+       * fixinc/tests/base/math.h: Added sco_math tests.
+       * fixinc/tests/base/string.h: New file.
+       * fixinc/tests/base/sys/regset.h: New file.
+
+2003-04-19  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cpphash.h (struct cpp_buffer): Remove backup_to.
+       * cpplex.c (BACKUP, get_effective_char): Die.
+       (_cpp_skip_block_comment): Assume '*' is location on entry.
+       (continues_identifier_p): Respect -fno-dollars-in-identifiers.
+       (IF_NEXT_IS): Update.
+       (_cpp_lex_direct): Don't use backup_to; look ahead directly.
+
+2003-04-19  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * README.Portability: Move to a new section and obsolete K+R
+       portability issues.
+
+Sat Apr 19 14:56:17 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * rtlanal.c (subreg_offset_representable_p):  Fix call of
+       subreg_lowpart.
+
+2003-04-19  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cpphash.h (struct cpp_reader): New member warned_dollar.
+       * cpplex.c (continues_identifier_p): New function.
+       (parse_identifier, parse_number, parse_string): Rename lex_identifer,
+       lex_number and lex_string, and simplify.
+       (parse_slow, unescaped_terminator_p): Die.
+       (_cpp_lex_direct): Update.
+
+2003-04-19  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * calls.c (expand_call): Provide init for old_stack_pointer_delta.
+
+2003-04-19  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * doc/invoke.texi (-fprofile-arcs): Mention -lgcov, locking and
+       fork behaviour.
+
+2003-04-19  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cppexp.c (eval_token): Permit true and false even if pedantic.
+
+2003-04-19  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cpplex.c (skip_whitespace): Rearrange to avoid stage1 ICE.
+
+2003-04-19  Neil Booth  <neil@daikokuya.co.uk>
+
+       * cppfiles.c (ENABLE_VALGRIND_CHECKING, VALGRIND_DISCARD,
+       MMAP_THRESHOLD, TEST_THRESHOLD, SHOULD_MMAP): Remove.
+       (struct include_file): Remove fefcnt, mapped members.
+       (open_file, stack_include_file, _cpp_pop_file_buffer): Disable caching.
+       (read_include_file): Don't use mmap, terminate buffers in '\r'.
+       (purge_cache): Don't use munmap.
+       * cpphash.h (CPP_BUF_COLUMN): Update.
+       (lexer_state): Remove lexing_comment.
+       (struct _cpp_line_note): New.
+       (struct cpp_buffer): New members cur_note, notes_used, notes_cap,
+       next_line and need_line.  Remove col_adjust and saved_flags.
+       (_cpp_process_line_notes, _cpp_clean_line, _cpp_get_fresh_line,
+       _cpp_skip_block_comment, scan_out_logical_line): New.
+       (_cpp_init_mbchar): Remove.
+       * cppinit.c (init_library): Remove call to _cpp_init_mbchar.
+       (cpp_read_main_file): Set line to 1 earlier.
+       (post_options): -traditional-cpp doesn't want trigraphs.
+       * cpplex.c (MULTIBYTE_CHARS): Remove code predicated on this.
+       (add_line_note, _cpp_clean_line, _cpp_process_line_notes,
+       _cpp_get_fresh_line): New.
+       (handle_newline, skip_escaped_newlines, trigraph_p,
+       continue_after_nul, _cpp_init_mbchar): Remove.
+       (get_effective_char): Update.
+       (_cpp_skip_block_comment): Rename from skip_block_comment, simplify.
+       (skip_line_comment): Simplify.
+       (skip_whitespace, parse_identifier, parse_slow, parse_number,
+       parse_string): Update.
+       (cpp_lex_direct): Use clean lines and process line notes.  Update.
+       (cpp_interpret_charconst): No MULTIBYTE_CHARS.
+       * cpplib.c (prepare_directive_trad): Call scan_out_logical_line
+       directly.
+       (_cpp_handle_directive): Don't set saved_flags.
+       (run_directive, destringize_and_run, cpp_define, cpp_define_builtin,
+       cpp_undef, handle_assertion, cpp_push_buffer): Update.
+       (_cpp_pop_buffer): Free notes.
+       * cppmacro.c (builtin_macro, paste_tokens): \n terminate buffer.
+       * cpppch.c (cpp_read_state): \n terminate buffer.
+       * cpptrad.c (skip_escaped_newlines, handle_newline): Remove.
+       (copy_comment): Use _cpp_skip_block_comment.
+       (skip_whitespace, lex_identifier, _cpp_read_logical_line_trad):
+       Simplify.
+       (_cpp_overlay_buffer, _cpp_remove_overlay, push_replacement_text,
+       save_replacement_text): Update.
+       (scan_out_logical_line): Update to use clean lines and process
+       line notes.
+       * fix-header.c (read_scan_file): Update.
+
+2003-04-18  Douglas B Rupp  <rupp@gnat.com>
+
+       * unwind-dw2-fde.c (__register_frame_info_bases): Check for
+       null begin parameter (as well as pointer to null).
+       (__deregister_frame_info_bases): Likewise.
+
+2003-04-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * function.c (purge_addressof_1): For ADDRESSOF, see if SUB is a
+       hard or virtual register and copy into pseudo if replacement fails.
+
+       * cfgcleanup.c (flow_find_cross_jump): Use INSN_P, not active_insn_p.
+
+       * expmed.c (mask_rtx): Avoid undefined shifts for BITSIZE of 0.
+
+2003-04-18  Olivier Hainque <hainque@act-europe.fr>
+
+       * calls.c (expand_call): Move special case for constructor calls
+       to right place. Ensures constructor calls used to initialize
+       arguments get a clean outgoing argument block for themselves.
+       Move check for stack deallocation completeness until after last
+       deallocation.  Add stack_pointer_delta to set of state
+       variables saved and restored along with current stack_level.
+
+       * integrate.c (expand_inline_function): Ensure non-const actuals
+       don't end up const in the caller's flow after conversion to possibly
+       const formal type.
+
+2003-04-18  Vincent Celier  <celier@gnat.com>
+
+       * dwarf2out.c (loc_descriptor_from_tree): Treat all *_MOD_EXPR
+       and *_DIV_EXPR as TRUNC_*_EXPR.
+
+2003-04-18  Mark Mitchell  <mark@codesourcery.com>
+
+       * cfgrtl.c (try_redirect_by_replacing_jump): Create a basic block
+       for orphaned jump tables.
+
+2003-04-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * reload1.c: Revert my previous patch on 2002-04-17.
+
+2003-04-18  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Prefer "bug fix" over "bugfix".
+       Add Segher Boessenkool.
+
+2003-04-18  Alexander Sotirov  <sluncho@mirizma.org>
+
+       PR c/9177
+       * c-decl.c (c_expand_body): Don't garbage collect the function
+       body if we are going to dump it later.
+
+2003-04-18  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (SYMBOL_FLAG_NEAR, SYMBOL_FLAG_SAMEGP): Remove.
+       (alpha_end_function): Don't set them.
+       (decl_in_text_section): Remove.
+       (alpha_encode_section_info): Remove.
+       (samegp_function_operand): Use SYMBOL_REF LOCAL_P and EXTERNAL_P.
+       (direct_call_operand): Use SYMBOL_REF_DECL and compare actual
+       sections, rather than decl_in_text_section results.
+
+2003-04-18  Roger Sayle  <roger@eyesopen.com>
+
+       * rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT
+       and SIGN_EXTRACT.
+
+2003-04-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/7675
+       * c-typeck.c (build_external_ref): Set the DECL_NONLOCAL flag
+       on VAR_DECL, PARM_DECL and FUNCTION_DECL from within
+       nested functions if they refer to declarations from parent functions.
+       * stmt.c (expand_decl): Don't put automatic variables in registers
+       if the DECL_NONLOCAL flag is set.
+
+2003-04-18  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * gcse.c (compute_ld_motion_mems): For MEM destinations, only
+       consider those to be movable where the source matches
+       want_to_gcse_p.
+       (update_ld_motion_stores): In comment, refer to
+       compute_ld_motion_mems for validity of replacement.
+
+Fri Apr 18 01:28:51 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * gcov-dump.c (tag_summary): Remove max_sum
+       * gcov-io.h (gcov_summary, gcov_write_summary, gcov_read_summary): Kill
+       max_sum.
+       * libgcov.c (gcov_exit): Do one pass over the data.  Make error message
+       more verbose.
+
+       * emit-rtl.c (subreg_hard_regno):  Check that register is representable.
+       * reload.c (reload_inner_reg_of_subreg):  When register is not
+       representable, reload the whole thing.
+       (find_reloads): Likewsie.
+       * rtlanal.c (subreg_representable_p):  New function.
+
+       * profile.c (compute_branch_probabilities):  Cleanup sanity checking;
+       allow negative probabilities for edges from the call to exit.
+       (branch_prob): Do not add fake edges for functions that may return twice
+
+2003-04-17  DJ Delorie  <dj@redhat.com>
+
+       * toplev.c (target_options): Add value field.
+       (set_target_switch): Handle target options with values.
+       * doc/tm.texi: Document how fixed vs variable target
+       options work.
+       * config/alpha/alpha.h, config/arc/arc.h, config/avr/avr.h,
+       config/c4x/c4x.h, config/cris/aout.h, config/cris/cris.h,
+       config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
+       config/frv/frv.h, config/i386/i386.h, config/ia64/ia64.h,
+       config/m32r/m32r.h, config/m68hc11/m68hc11.h,
+       config/m68k/m68k.h, config/m88k/m88k.h, config/mcore/mcore.h,
+       config/mips/mips.h, config/mmix/mmix.h, config/pa/pa.h,
+       config/rs6000/rs6000.h, config/rs6000/sysv4.h,
+       config/s390/s390.h, config/sparc/sparc.h, config/v850/v850.h:
+       Add value initializer to target options.
+
+2003-04-07  Loren James Rittle  <ljrittle@acm.org>
+
+       * cpppch.c (cpp_valid_state): Unconditionally initialize nl.
+
+2003-04-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * reload1.c (move2add_last_cc0): New.
+       (reload_cse_move2add): Detect implicit sets.
+       (move2add_note_store): Notice a store into cc0.
+
+2003-04-17  Roger Sayle  <roger@eyesopen.com>
+
+       PR c/10375
+       * c-decl.c (duplicate_decls): Preserve "const" and "noreturn"
+       function attributes.
+
+2003-04-17  Janis Johnson  <janis187@us.ibm.com>
+
+       * doc/sourcebuild.texi (Test Suites): Document support for testing
+       binary compatibility (moved from testsuite/README.compat).
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_in_small_data_p): Disallow strings.
+
+2003-04-17  Simon Law  <sfllaw@engmail.uwaterloo.ca>
+
+       * doc/include/gpl.texi: Fix double-spacing after "MA" to match
+       the one provided by the FSF.
+
+2003-04-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/install.texi (Binaries): Update URL and list of platforms
+       provided by ftp.thewrittenword.com.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/xtensa/xtensa.c (xtensa_encode_section_info): Remove.
+       (call_insn_operand): Use SYMBOL_REF_LOCAL_P.
+       * config/xtensa/xtensa.md (call, call_value): Likewise.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/v850/v850.c (print_operand): Use SYMBOL_REF_[ZST]DA.
+       (print_operand_address): Likewise.
+       (ep_memory_operand): Likewise.
+       (special_symbolref_operand): Likewise.
+       (v850_encode_data_area): Use SYMBOL_REF_FLAGS.
+       (v850_encode_section_info): Call default_encode_section_info.
+       (v850_strip_name_encoding): Remove.
+       * config/v850/v850.h (EXTRA_CONSTRAINT): Use SYMBOL_REF_[ZST]DA.
+       (ASM_OUTPUT_LABELREF): Remove.
+       (ZDA_NAME_FLAG_CHAR, ZDA_NAME_P): Remove.
+       (SDA_NAME_FLAG_CHAR, SDA_NAME_P): Remove.
+       (TDA_NAME_FLAG_CHAR, TDA_NAME_P): Remove.
+       (ENCODED_NAME_P): Remove.
+       (SYMBOL_FLAG_ZDA, SYMBOL_REF_ZDA_P): New.
+       (SYMBOL_FLAG_SDA, SYMBOL_REF_SDA_P): New.
+       (SYMBOL_FLAG_TDA, SYMBOL_REF_TDA_P): New.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/stormy16/stormy16.c (xstormy16_encode_section_info): Kill.
+       * config/stormy16/stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use
+       SYMBOL_REF_FUNCTION_P.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/sparc/sparc.c (sparc_encode_section_info): Remove.
+       (data_segment_operand): Use SYMBOL_REF_FUNCTION_P.
+       (text_segment_operand): Likewise.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/sh/sh.c (gen_datalabel_ref): Don't add SH_DATALABEL_ENCODING.
+       (tls_symbolic_operand): Use SYMBOL_REF_TLS_MODEL.
+       (legitimize_pic_address): Use SYMBOL_REF_LOCAL_P.
+       (sh_encode_section_info): Remove.
+       (sh_strip_name_encoding): Remove.
+       * config/sh/sh.h (SH_DATALABEL_ENCODING): Remove.
+       (DATALABEL_SYMNAME_P, STRIP_DATALABEL_ENCODING): Remove.
+       (SH_TLS_ENCODING, TLS_SYMNAME_P, STRIP_TLS_ENCODING): Remove.
+       (ASM_OUTPUT_LABELREF): Remove.
+       (ASM_OUTPUT_SYMBOL_REF): Use SYMBOL_REF_FUNCTION_P.
+       * config/sh/sh.md (*): Use SYMBOL_REF_LOCAL_P.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/s390/s390.c (SYMBOL_FLAG_ALIGN1): New.
+       (tls_model_chars): Remove.
+       (larl_operand): Use SYMBOL_REF_FLAGS.
+       (tls_symbolic_operand): Use SYMBOL_REF_TLS_MODEL.
+       (legitimize_pic_address): Use SYMBOL_REF_LOCAL_P.
+       (s390_output_mi_thunk): Likewise.
+       (s390_emit_prologue): Set SYMBOL_FLAG_LOCAL as needed.
+       (s390_function_profiler): Likewise.
+       (s390_encode_section_info): Use default_encode_section_info
+       and SYMBOL_FLAG_ALIGN1.
+       (s390_strip_name_encoding): Remove.
+       * config/s390/s390.h (ASM_OUTPUT_LABELREF): Remove.
+       * config/s390/s390.md (call, call_value): Use SYMBOL_REF_LOCAL_P.
+       (builtin_setjmp_receiver): Set SYMBOL_FLAG_LOCAL as needed.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/ns32k/ns32k.c (ns32k_encode_section_info): Remove.
+       (global_symbolic_reference_mentioned_p): Use SYMBOL_REF_LOCAL_P.
+       (print_operand_address): Likewise.
+
+       * config/ns32k/ns32k.h (CANNOT_CHANGE_MODE_CLASS): Add CLASS argument.
+       * config/ns32k/ns32k.c (expand_block_move): Don't check
+       flag_unroll_loops.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/mcore/mcore.c (mcore_encode_section_info): Don't set
+       SYMBOL_REF_FLAG.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * rtl.h (SYMBOL_FLAG_MACH_DEP_SHIFT): New.
+
+       * config/m32r/m32r.c (SYMBOL_FLAG_MODEL_SHIFT): New.
+       (SYMBOL_REF_MODEL): New.
+       (LIT_NAME_P): Move from m32r.h.
+       (m32r_select_section): Remove.
+       (m32r_encode_section_info): Use SYMBOL_REF_FLAGS.
+       (m32r_strip_name_encoding): Remove.
+       (m32r_in_small_data_p): New.
+       (small_data_operand): Use SYMBOL_REF_SMALL_P.
+       (addr24_operand): Use SYMBOL_REF_MODEL.
+       (call26_operand): Likewise.
+       (addr32_operand): Tidy.
+       (m32r_print_operand): Use HOST_WIDE_INT_PRINT_HEX.
+       * config/m32r/m32r.h (RODATA_SECTION_ASM_OP): Remove.
+       (SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Remove.
+       (READONLY_DATA_SECTION_ASM_OP): Remove.
+       (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
+       (SDATA_SECTION_FUNCTION, SBSS_SECTION_FUNCTION): Remove.
+       (TARGET_ASM_SELECT_SECTION): Remove.
+       (SDATA_FLAG_CHAR, MEDIUM_FLAG_CHAR, LARGE_FLAG_CHAR): Remove.
+       (SDATA_NAME_P, SMALL_NAME_P, MEDIUM_NAME_P): Remove.
+       (LARGE_NAME_P, ENCODED_NAME_P): Remove.
+       (ASM_OUTPUT_LABELREF): Remove.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/ip2k/ip2k.c (is_regfile_address): Use SYMBOL_REF_FUNCTION_P.
+       (encode_section_info): Remove.
+       * config/ip2k/ip2k-protos.h: Update.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * varasm.c (default_encode_section_info): Don't set
+       SYMBOL_FLAG_EXTERNAL if not TREE_PUBLIC.
+       * config/i370/i370.c (i370_encode_section_info): Remove.
+       * config/i370/i370.h (CONSTANT_ADDRESS_P): Use SYMBOL_REF_EXTERNAL_P.
+       (PRINT_OPERAND, PRINT_OPERAND_ADDRESS): Likewise.
+       * config/i370/i370.md (movsi): Likewise.
+
+       * config/i370/t-i370: Add missing backslash.
+
+2003-04-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/invoke.texi (inline-limit): Fix pasto.
+
+2003-04-17  Richard Henderson  <rth@redhat.com>
+
+       * config/h8300/h8300.c (SYMBOL_FLAG_FUNCVEC_FUNCTION): New.
+       (small_call_insn_operand): Use it.
+       (SYMBOL_FLAG_EIGHTBIT_DATA): New.
+       (h8300_eightbit_constant_address_p): Use it.
+       (SYMBOL_FLAG_TINY_DATA): New.
+       (h8300_tiny_constant_address_p): Use it.
+       (h8300_encode_label, h8300_strip_name_encoding): Remove.
+       (h8300_encode_section_info): Set SYMBOL_REF_FLAGS.
+       * config/h8300/h8300.h (TINY_DATA_NAME_P): Remove.
+       (ASM_OUTPUT_LABELREF): Remove.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * config/frv/frv.c (symbol_ref_small_data_p): Remove.  Replace
+       all users with SYMBOL_REF_SMALL_P.
+       (const_small_data_p): Use SYMBOL_REF_SMALL_P.
+       (frv_encode_section_info): Remove.
+       (frv_strip_name_encoding): Remove.
+       (frv_in_small_data_p): Merge tests from encode_section_info.
+       (frv_print_operand): Use '@' not SDATA_FLAG_CHAR.
+       * config/frv/frv.h (SDATA_FLAG_CHAR): Remove.
+       (SDATA_NAME_P): Remove.
+       (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use SIZE not SDATA_NAME_P.
+       (ASM_OUTPUT_LABELREF): Remove.
+       (PRINT_OPERAND_PUNCT_VALID_P): Use '@' not SDATA_FLAG_CHAR.
+
+       * config/frv/frv.c (frv_asm_out_constructor): New.
+       (frv_asm_out_destructor): New.
+       * config/frv/frv.h (CTORS_SECTION_ASM_OP): New.
+       (DTORS_SECTION_ASM_OP): New.
+       (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * config/cris/cris.c (cris_gotless_symbol, cris_got_symbol): Use
+       SYMBOL_REF_LOCAL_P; abort if not pic.
+       (cris_encode_section_info): Remove.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * config/c4x/c4x.c (c4x_encode_section_info): Remove.
+       (c4x_T_constraint): Use SYMBOL_REF_FUNCTION_P.
+
+       * config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Declare
+       flag_inline_trees.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * config/avr/avr.c (avr_encode_section_info): Remove.
+       (avr_insert_attributes): New.
+       (print_operand_address): Use SYMBOL_REF_FUNCTION_P.
+       (avr_assemble_integer): Likewise.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * arc.c (arc_encode_section_info): Remove.
+       (arc_assemble_integer): Use SYMBOL_REF_FUNCTION_P.
+       (arc_print_operand, arc_print_operand_address): Likewise.
+       * arc.h (EXTRA_CONSTRAINT): Likewise.
+
+2003-04-16  Roger Sayle  <roger@eyesopen.com>
+
+       * c-semantics.c (find_reachable_label): New function to find a
+       potentially reachable label in an expression.
+       (expand_unreachable_if_stmt): Similar to expand_if_stmt but
+       assumes the start of the IF_STMT is unreachable (dead) code.
+       (expand_unreachable_stmt): Similar to expand_stmt but assumes
+       the start of the statement list is unreachable (dead) code.
+       (genrtl_if_stmt):  If the controlling expression of the IF
+       is constant, use expand_unreachable_stmt for the THEN or ELSE
+       clause as appropriate.
+       (genrtl_switch_stmt):  Use expand_unreachable_stmt to expand
+       the body of a SWITCH statement.
+       (expand_stmt): The code immediately following a "return",
+       "break", "continue" or "goto" is unreachable.
+       * Makefile.in (c-semantics.o): Depend upon tree-inline.h.
+
+2003-04-16  Richard Henderson  <rth@redhat.com>
+
+       * rtl.h (MEM_ALIAS_SET): Update documentation.
+       * doc/rtl.texi (Special Accessors): New node.
+       (SYMBOL_REF_FLAG): Note relationship with SYMBOL_REF_FLAGS.
+
+2003-04-16  Alexandre Oliva  <aoliva@redhat.com>
+
+       * reload1.c (reload_cse_noop_set_p): Return false if mode of
+       SET_DEST is not the same as that returned by...
+       * cselib.h (cselib_reg_set_mode): ... new function.
+       * cselib.c (cselib_reg_set_mode): Define it.
+       (REG_VALUES): Document semantics of first element as set mode.
+       (cselib_subst_to_values): Skip first element if ELT is NULL.
+       (cselib_lookup): Likewise.  Insert past the first element.
+       (cselib_invalidate_regno): NULLify first element.
+       (cselib_record_set): Set first element.
+
 2003-04-16  Olivier Hainque <hainque@act-europe.fr>
 
-        * tree.c (skip_simple_arithmetics_at, saved_expr_p): New functions.
-        (save_expr): Replace loop by call to skip_simple_arithmetics_at.
-        * tree.h: Add prototypes for the two new functions.
-        * fold-const.c (fold_binary_op_with_conditional_arg): Replace test
-        updates introduced in the previous revision by call to saved_expr_p.
-        * stor-layout.c (put_pending_size): Use skip_simple_arithmetics_at.
+       * tree.c (skip_simple_arithmetics_at, saved_expr_p): New functions.
+       (save_expr): Replace loop by call to skip_simple_arithmetics_at.
+       * tree.h: Add prototypes for the two new functions.
+       * fold-const.c (fold_binary_op_with_conditional_arg): Replace test
+       updates introduced in the previous revision by call to saved_expr_p.
+       * stor-layout.c (put_pending_size): Use skip_simple_arithmetics_at.
 
-        * expr.c (store_field): Force usage of bitfield instructions when
-        the field position requires it, whatever SLOW_UNALIGNED_ACCESS.
-        (expand_expr, case BIT_FIELD_REF): likewise.
+       * expr.c (store_field): Force usage of bitfield instructions when
+       the field position requires it, whatever SLOW_UNALIGNED_ACCESS.
+       (expand_expr, case BIT_FIELD_REF): likewise.
 
 2003-04-16  Mark Mitchell  <mark@codesourcery.com>
 
 
 2003-04-16  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config.gcc: Add t-spe for eabispe.
+       * config.gcc: Add t-spe for eabispe.
 
-        * config/rs6000/t-spe: New.
+       * config/rs6000/t-spe: New.
 
 2003-04-16  J"orn Rennecke <joern.rennecke@superh.com>
 
        PR/10271
        * pa-protos.h (function_arg): Remove last argument.
        * pa.c (function_arg): Likewise.  Use CUMULATIVE_ARGS struct instead.
-       * pa.h (struct hppa_args): Add member incoming. 
+       * pa.h (struct hppa_args): Add member incoming.
        (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Initialize
        member incoming.
        (FUNCTION_ARG): Revise call to function_arg.
@@ -3873,6 +4588,11 @@ Mon Mar 24 20:03:03 CET 2003  Jan Hubicka  <jh@suse.cz>
        (sordered, sungt, sunle, sunge, sunlt): Likewise.
        (eh_epilogue, tablejump): Likewise.
 
+2003-03-09  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * tree.c (substitute_in_expr, case 'e'): Only make recursive call
+       on operands if it has a PLACEHOLDER_EXPR.
+
 2003-03-09  David Edelsohn  <edelsohn@gnu.org>
            Mostafa Hagog