OSDN Git Service

Add entries for last round of ISO C90 conversions.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9142d5c..26c7a5b 100644 (file)
@@ -1,3 +1,928 @@
+2003-07-06  Andreas Jaeger  <aj@suse.de>
+
+       * basic-block.h: Convert prototypes to ISO C90.
+       * c-parse.in: Likewise.
+       * c-pragma.h: Likewise.
+       * c-typeck.c: Likewise.
+       * cfghooks.h: Likewise.
+       * cfgloopanal.c: Likewise.
+       * dbxout.h: Likewise.
+       * debug.h: Likewise.
+       * dwarf2asm.h: Likewise.
+       * gcov.c: Likewise.
+       * gengtype-lex.l: Likewise.
+       * sched-int.h: Likewise.
+       * timevar.c: Likewise.
+
+2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
+
+       * c-common.h (c_comon_handle_filename,
+       c_common_missing_arguement): New.
+       * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
+       LANG_HOOKS_MISSING_ARGUMENT): New.
+       * c-opts.c (missing_arg): Rename c_common_missing_argument,
+       update to be an appropriate langhook.
+       (c_common_handle_option): Don't handle filenames.
+       (c_common_handle_filename): New.
+       * hooks.c (hook_void_constcharptr,
+       hook_bool_constcharptr_size_t_false): New.
+       * hooks.h (hook_void_constcharptr,
+       hook_bool_constcharptr_size_t_false): New.
+       * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
+       LANG_HOOKS_MISSING_ARGUMENT): New.
+       (LANG_HOOKS_INITIALIZER): Update.
+       * langhooks.h (struct lang_hooks): Add handle_filename and
+       missing_argument.
+       * opts.c (handle_option): Don't handle filenames here, but ...
+       (handle_options): ... here.
+       (common_handle_option): Don't handle missing arguments here.
+       * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
+       LANG_HOOKS_MISSING_ARGUMENT): New.
+
+2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
+
+       * Makfile.in: Remove traces of mbchar.
+       * c-parse.in (MULTIBYTE_CHARS): Remove.
+       * config.in (MULTIBYTE_CHARS): Remove.
+       * configure: Remove --enable-mbchar.
+       * configure.in: Remove --enable-mbchar.
+       * mbchar.c, mbchar.h: Remove.
+       * system.h: Poison MULTIBYTE_CHARS.
+       * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
+       * config/linux.h (MULTIBYTE_CHARS): Remove.
+       * config/svr4.h (MULTIBYTE_CHARS): Remove.
+       * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
+
+2003-07-06  Andreas Jaeger  <aj@suse.de>
+
+       * varray.c (varray_check_failed): Fix typo.
+
+       * unroll.c: Convert prototypes to ISO C90.
+       * varasm.c: Likewise.
+       * varray.c: Likewise.
+       * varray.h: Likewise.
+       * vmsdbgout.c: Likewise.
+       * xcoffout.c: Likewise.
+       * xcoffout.h: Likewise.
+
+2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * gcov-io.h: Add a local time stamp.
+       (struct gcov_info): Add stamp field.
+       (gcov_truncate): New.
+       * coverage.c (read_counts_file): Skip the stamp.
+       (coverage_begin_output): Write the stamp.
+       (build_gcov_info): Declare and init the stamp.
+       (coverage_finish): Only unlink data file, if stamp is zero.
+       * gcov-dump.c (dump_file): Dump the stamp.
+       * gcov.c (bbg_stamp): New.
+       (release_structures): Clear bbg_stamp.
+       (read_graph_file): Read stamp.
+       (read_count_file): Check stamp.
+       * libgcov.c (gcov_exit): Check stamp and truncate if needed.
+
+2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * tree.h (default_flag_random_seed): Remove.
+       * toplev.h (local_tick): Declare.
+       * tree.c (flag_random_seed, default_flag_random_seed): Move to
+       toplev.c.
+       (append_random_chars): Don't call default_flag_random_seed.
+       * toplev.c (flag_random_seed): Define here. Set local_tick.
+       (local_tick): Define.
+       (randomize): New, moved from tree.c.
+       (print_switch_values): Adjust.
+       (toplev_main): Call randomize.
+
+2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * tree.h (crc32_string): Declare.
+       * tree.c (append_random_chars): Remove.
+       (crc32_string): New.
+       (get_file_function_name_long): Use crc32_string here.
+
+2003-07-06  Andreas Jaeger  <aj@suse.de>
+
+       * gcc.c: Convert prototypes to ISO C90.
+       * gcc.h: Likewise.
+       * gcov-dump.c: Likewise.
+       * gcov-iov.c: Likewise.
+       * gcse.c: Likewise.
+       * genattrtab.h: Likewise.
+       * ggc.h: Likewise.
+       * global.c: Likewise.
+       * graph.c: Likewise.
+       * graph.h: Likewise.
+       * hosthooks.h: Likewise.
+       * hooks.h: Likewise.
+       * hooks.c: Likewise.
+       * hashtable.h: Likewise.
+       * hashtable.c: Likewise.
+       * haifa-sched.c: Likewise.
+       * integrate.h: Likewise.
+       * integrate.c: Likewise.
+       * input.h: Likewise.
+       * ifcvt.c: Likewise.
+       * jump.c: Likewise.
+       * langhooks-def.h: Likewise.  Add extern to prototypes.
+       * langhooks.c: Likewise.
+       * langhooks.h: Likewise.
+       * lcm.c: Likewise.
+       * local-alloc.c: Likewise.
+       * loop-init.c: Likewise.
+       * loop-unroll.c: Likewise.
+       * loop-unswitch.c: Likewise.
+       * loop.c: Likewise.
+       * loop.h: Likewise. Add extern to prototypes.
+       * machmode.h: Likewise.
+       * main.c: Likewise.
+       * mbchar.c: Likewise.
+       * mbchar.h: Likewise.
+       * mkdeps.c: Likewise.
+       * mkdeps.h: Likewise.
+       * optabs.c: Likewise.
+       * optabs.h: Likewise.
+       * output.h: Likewise.
+       * gccspec.c: Likwise.
+       * postreload.c: Likewise.
+       * prefix.c: Likewise.
+       * prefix.h: Likewise.
+       * print-rtl.c: Likewise.
+       * print-tree.c: Likewise.
+       * profile.c: Likewise.
+       * read-rtl.c: Likewise.
+       * real.c: Likewise.
+       * real.h: Likewise.
+       * recog.c: Likewise.
+       * recog.h: Likewise.
+       * reg-stack.c: Likewise.
+       * regclass.c: Likewise.
+       * regmove.c: Likewise.
+       * regrename.c: Likewise.
+       * regs.h: Likewise.
+       * reload.c: Likewise.
+       * reload.h: Likewise.
+       * reload1.c: Likewise.
+       * reorg.c: Likewise.
+       * resource.c: Likewise.
+       * resource.h: Likewise.
+       * rtl-error.c: Likewise.
+       * rtl.c: Likewise.
+       * rtl.h: Likewise.
+       * rtlanal.c: Likewise.
+       * sbitmap.c: Likewise.
+       * sbitmap.h: Likewise.
+       * scan-decls.c: Likewise.
+       * scan.c: Likewise.
+       * sched-deps.c: Likewise.
+       * sched-ebb.c: Likewise.
+       * sched-int.h: Likewise.
+       * sched-rgn.c: Likewise.
+       * sched-vis.c: Likewise.
+       * sibcall.c: Likewise.
+       * simplify-rtx.c: Likewise.
+       * sreal.c: Likewise.
+       * sreal.h: Likewise.
+       * ssa-ccp.c: Likewise.
+       * ssa-dce.c: Likewise.
+       * ssa.c: Likewise.
+       * ssa.h: Likewise.
+       * stack.h: Likewise.
+       * stmt.c: Likewise.
+       * stor-layout.c: Likewise.
+       * stringpool.c: Likewise.
+       * target.h: Likewise.
+       * timevar.c: Likewise.
+       * timevar.h: Likewise.
+       * tlink.c: Likewise.
+       * tracer.c: Likewise.
+       * tree-inline.c: Likewise.
+       * tree-inline.h: Likewise.
+       * tree.c: Likewise.
+       * tree.h: Likewise.
+
+2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * combine.c (nonzero_bits1): Fix a warning.
+
+2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (compute_mov_length): Correct the
+       length of loading CONST0_RTX (SFmode).
+
+2003-07-05  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * toplev.c (output_clean_symbol_name): Remove.
+       * toplev.h (output_clean_symbol_name): Remove.
+       * config/alpha/alpha.c (unicosmk_output_module_name): Use
+       lbasename & clean_symbol_name.
+
+2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * ggc.h: Follow spelling conventions.
+       * config/i386/i386.c: Likewise.
+       * config/i386/winnt.c: Likewise.
+       * config/rs6000/rs6000.c: Likewise.
+
+2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * bt-load.c: Fix comment typos.
+       * c-incpath.c: Likewise.
+       * cfg.c: Likewise.
+       * cfgcleanup.c: Likewise.
+       * cfgloop.h: Likewise.
+       * cfgloopmanip.c: Likewise.
+       * cfgrtl.c: Likewise.
+       * diagnostic.h: Likewise.
+       * dwarfout.c: Likewise.
+       * emit-rtl.c: Likewise.
+       * et-forest.c: Likewise.
+       * et-forest.h: Likewise.
+       * expr.c: Likewise.
+       * gcse.c: Likewise.
+       * genattr.c: Likewise.
+       * jump.c: Likewise.
+       * langhooks.h: Likewise.
+       * local-alloc.c: Likewise.
+       * loop-unroll.c: Likewise.
+       * loop-unswitch.c: Likewise.
+       * ra-build.c: Likewise.
+       * regclass.c: Likewise.
+       * regmove.c: Likewise.
+       * rtl.def: Likewise.
+       * rtlanal.c: Likewise.
+       * sched-ebb.c: Likewise.
+       * sched-rgn.c: Likewise.
+       * simplify-rtx.c: Likewise.
+       * ssa.c: Likewise.
+       * tracer.c: Likewise.
+       * tree.c: Likewise.
+
+2003-07-05  Zack Weinberg  <zack@codesourcery.com>
+
+       * cppcharset.c: Use the correct return type for the fallback iconv
+       macro.
+
+Sat Jul  5 16:18:53 CEST 2003  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       Blame to Jan Hubicka  <jh@suse.cz>
+       * cfglayout.c (record_effective_endpoints): Split insns before
+       first basic block correctly.
+
+2003-07-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
+       bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
+       if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
+
+2003-07-05  Andreas Jaeger  <aj@suse.de>
+
+       * genattrtab.c (write_attr_get): Revert part of last patch to
+       always write out a prototype.
+
+       * genemit.c (gen_split): Readd lost unused attributes in last
+       patch.
+
+2003-07-05  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * cfgloopmanip.c (force_single_succ_latches): Force latch to be
+       different from header.
+
+2003-07-05  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.c: Remove code protected by CRDS.
+       * config/m68k/m68k.md: Likewise.
+
+2003-07-05  Neil Booth  <neil@daikokuya.co.uk>
+
+       PR driver/11417
+       * c-opts.c (permit_fortran_options): New.
+       (c_common_init_options): Accept fortran front end options if
+       it looks like we might be preprocessing Fortran.
+       (c_common_handle_option): Don't reject switch if permit_fotran_options.
+
+2003-07-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * genattr.c (internal_dfa_insn_code): Output prototype.
+       * genattrtab.c: Don't output unnecessary decls, output in ISO C.
+       * genautomata.c: Likewise.
+       * genconditions.c: Likewise.
+       * genemit.c: Likewise.
+       * genextract.c: Likewise.
+       * gengenrtl.c: Likewise.
+       * gengtype.c: Likewise.
+       * genopinit.c: Likewise.
+       * genoutput.c: Likewise.
+       * genpeep.c: Likewise.
+       * genrecog.c: Likewise.
+
+2003-07-04  Zack Weinberg  <zack@codesourcery.com>
+
+       * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
+       (struct cpp_options): Add narrow_charset, wide_charset,
+       bytes_big_endian fields.  Remove EBCDIC field.
+       (cpp_init_iconv, cpp_interpret_string): New external interfaces.
+
+       * cpphash.h: Include <iconv.h> if we have it, otherwise
+       provide a dummy definition of iconv_t.
+       (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
+       (_cpp_valid_ucn): Update prototype.
+       (_cpp_destroy_iconv): New prototype.
+
+       * doc/cpp.texi: Document character set handling.
+       * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
+       * doc/extend.texi: Delete entire section on multiline strings.
+       Rewrite section on __FUNCTION__ etc now that these are
+       variables in C.
+
+       * cppucnid.tab, cppucnid.pl: New files.
+       * cppucnid.h: New generated file.
+       * cppcharset.c: Include cppucnid.h.  Lots of commentary added.
+       (iconv_open, iconv, iconv_close): Provide dummy definitions
+       if !HAVE_ICONV.
+       (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
+       _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
+       emit_numeric_escape, convert_hex, convert_oct, convert_escape,
+       cpp_interpret_string, narrow_str_to_charconst,
+       wide_str_to_charconst): New.
+       (ucn_valid_in_identifier): Use a binary search through the
+       ucnranges table defined in cppucnid.h, not a long chain of if
+       statements.
+       (_cpp_valid_ucn): Add a limit pointer.  Downgrade "universal
+       character names are only valid in C++ and C99" to a warning.
+       Issue the "meaning of \[uU] is different in traditional C"
+       warning here.  Take care not to let iconv see an invalid UCS
+       value if we get a malformed UCN.  Issue an error if we don't
+       have iconv.
+       (cpp_interpret_charconst): Moved here from cpplex.c.  Use
+       cpp_interpret_string to do the heavy lifting.
+
+       * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
+       narrow_charset, wide_charset fields of options structure.
+       (cpp_destroy): Call _cpp_destroy_iconv.
+       * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
+       (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
+       (cpp_interpret_charconst): Moved to cppcharset.c.
+       * cpplib.c (dequote_string): Delete.
+       (interpret_string_notranslate): New.
+       (do_line, do_linemarker): Use interpret_string_notranslate.
+
+       * Makefile.in (cppcharset.o): Depend on cppucnid.h.
+
+       * c-common.c (fname_string, combine_strings): Delete.
+       * c-common.h (fname_string, combine_strings): Delete prototypes.
+       * c-lex.c (ignore_escape_flag): Delete.
+       (cb_ident): Use cpp_interpret_string, not lex_string.
+       (get_nonpadding_token): New function.
+       (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
+       Adjust calls to lex_string.  Don't write *value twice.
+       (lex_string): Now handles string constant concatenation.
+       Most of the work handed off to cpp_interpret_string.
+       Call fix_string_type here.
+       * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
+       FUNC_NAME, throughout.
+       (OBJC_STRING): New token type.
+       (primary:STRING): No need to call fix_string_type here.
+       (primary:objc_string): Make that OBJC_STRING.
+       (objc_string nonterminal): Delete.
+       (yylexname): Delete code to handle fake string constants.
+       (yylexstring): Delete entirely.
+       (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING.  No need
+       to handle CPP_ATSIGN.
+
+       * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
+       * c-opts.c (missing_arg, c_common_handle_option): Handle
+       OPT_fexec_charset_ and OPT_fwide_exec_charset_.
+       (c_common_init): Set cpp_opts->bytes_big_endian, not
+       cpp_opts->EBCDIC.  Call cpp_init_iconv.
+       (print_help): Document -fexec-charset= and -fexec-wide-charset=.
+       (TARGET_EBCDIC): Delete default definition.
+
+       * objc/objc-act.c (build_objc_string_object): No need to
+       handle string constant concatenation.
+
+2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * doc/install.texi: Fix typos.
+       * doc/invoke.texi: Likewise.
+       * doc/tm.texi: Likewise.
+
+2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/pa/fptr.c: Fix comment typos.
+       * config/pa/pa-64.h: Likewise.
+       * config/pa/pa.c: Likewise.
+       * config/pa/pa.h: Likewise.
+       * config/rs6000/603.md: Likewise.
+       * config/rs6000/7xx.md: Likewise.
+       * config/rs6000/darwin.h: Likewise.
+       * config/rs6000/freebsd.h: Likewise.
+       * config/rs6000/rs6000.c: Likewise.
+       * config/rs6000/rs6000.md: Likewise.
+       * config/rs6000/spe.h: Likewise.
+
+2003-07-04  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/2064.md: Change GNU CC to GCC.
+       * config/s390/2084.md: Likewise.
+       * config/s390/fixdfdi.h: Likewise.
+       * config/s390/linux.h: Likewise.
+       * config/s390/s390-modes.def: Likewise.
+       * config/s390/s390-protos.h: Likewise.
+       * config/s390/s390.c: Likewise.
+       * config/s390/s390.h: Likewise.
+       * config/s390/s390.md: Likewise.
+       * config/s390/s390x.h: Likewise.
+
+2003-07-04  Jeff Law  <law@redhat.com>
+
+       PR c/11428
+       * expr.c (do_store_flag): Pass in the correct result type
+       when calling fold_single_bit_test.
+       * fold-const.c (fold_single_bit_test): Use result_type for the
+       result when folding a sign bit test.
+
+2003-07-04  Neil Booth  <neil@daikokuya.co.uk>
+
+       * opts.c (common_handle_options): Negate sense of -falign- switches.
+
+2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
+
+       * Makefile.in: Replace PWD with PWD_COMMAND.
+
+2003-07-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * cfgloopanal.c (count_strange_loop_iterations): New static function.
+       (constant_iterations, count_loop_iterations, simple_loop_exit_p):
+       Handle strange loops.
+
+2003-07-04  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * install.texi: Even the g77 manpage is derived from
+       the full g77 manual.
+
+2003-07-04  Zack Weinberg  <zack@codesourcery.com>
+
+       * ABOUT-NLS: Delete.
+       * intl: Delete entire directory.
+       * aclocal.m4: Include ../config/gettext.m4.  Delete
+       AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
+       AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
+       * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
+       Remove intl/Makefile from all_outputs.
+       * configure, config.in: Regenerate.
+       * Makefile.in: Expunge all references to intl subdirectory.
+       Add -I../intl to INCLUDES.
+       * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
+
+2003-07-04  Roger Sayle  <roger@eyesopen.com>
+
+       * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
+       * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
+
+2003-07-04  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR c++/5287, PR c++/7910, PR c++/11021
+       * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
+       dllimport attribute if function is defined at declaration, but
+       report error instead. Likewise for dllimport'd variable
+       definitions.  Set implicit TREE_PUBLIC for dllimport'd variables
+       declared within functions, Report error if dllimport or dllexport
+       symbol is not global.
+       (i386_pe_dllimport_p): Ignore dllimport attribute of functions
+       if defined after declaration or if inlined. Don't allow definition
+       of static data members of C++ classes. Don't dllimport virtual
+       methods.
+       (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
+       (i386_pe_mark_dllimport): Remove unnecessary checks.
+       (i386_pe_encode_section_info): Warn if the dllimport attribute
+       and symbol prefix have been instantiated and then overridden.
+
+       * doc/extend.texi: Document dllimport and dllexport attributes.
+
+       * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
+
+2003-07-03 Uwe Stieber <uwe@kaos-group.de>
+
+       * config/kaos.h (CPP_PREDEFINES): Delete.
+       (TARGET_OS_CPP_BUILTINS): New.
+
+2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * c-aux-info.c: Include toplev.h after c-tree.h.
+       * c-common.c: Likewise.
+       (GCC_DIAG_STYLE): Undef.
+       * c-semantics.c (GCC_DIAG_STYLE): Define.
+       * c-tree.h (GCC_DIAG_STYLE): Likewise.
+       * diagnostic.h (inform): Move prototype to toplev.h.
+       * jump.c: Include diagnostic.h before toplev.h.
+       * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
+       (warning, error, fatal_error, pedwarn, sorry, inform,
+       error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
+
+2003-07-03  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
+       at all if edge is not specified.
+       (can_copy_bbs_p, copy_bbs): New.
+       * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
+       * cfgloop.c (get_loop_body): Comment more precisely.
+       * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
+       (scale_bbs_frequencies): Fix comment typo.
+       (can_duplicate_loop_p): Use can_copy_bbs_p.
+       (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
+
+2003-07-03  Devang Patel <dpatel@apple.com>
+
+       * c-opts.c (c_common_parse_file): Remove extra
+       debug_hooks->start_source_file call.
+
+2003-07-03  Roger Sayle  <roger@eyesopen.com>
+
+       * real.c (real_trunc, real_floor, real_ceil): New functions
+       to implement trunc, floor and ceil respectively.
+       * real.h (real_trunc, real_floor, real_ceil): Prototype here.
+       * builtins.c (integer_valued_real_p): New function to test if
+       a floating point expression has an integer valued result.
+       (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
+       foo(x) where foo is an integer rounding function.  Similarly,
+       optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
+       (double)(int)x when both foo and bar are integer rounding
+       functions and we don't need to honor errno.
+       (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
+       New functions to fold trunc, floor and ceil.
+       (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
+       fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
+       to fold BUILT_IN_CEIL*.
+       * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
+       the remaining integer rounding functions.
+
+2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc.c (function_arg_partial_nregs): Use
+       SPARC_INT_ARG_MAX to determine where to split unnamed
+       complex FP arguments.
+
+Thu Jul  3 20:36:47 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
+       * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
+       (merge_blocks_move_predecessor_nojumps,
+        merge_blocks_move_successor_nojumps): Use merge_blocks.
+       (try_optimize_cfg): Use merge_blocks_move.
+       * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
+       (merge_blocks_nomove): Rename to rtl_merge_blocks.
+       (cfg_layout_create_basic_block): New.
+       (rtl_can_merge_blocks): New.
+       (cfg_layout_split_block): Do not alloc aux by hand.
+       * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
+       merge_blocks.
+       (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
+       * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
+       * cfgloopmanip.c (loop_split_edge_with): Likewise.
+       * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
+
+       * basic-block.h (basic_block_def): Add field 'rbi'.
+       * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
+       find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
+       * cfg.c (entry_exit_blocks): Add new field.
+       * cfglayout.c: Include alloc-pool.h;
+       (cfg_layout_pool): New.
+       (record_effective_endpoints, fixup_reorder_chain,
+       fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
+       of rbi.
+       (cfg_layout_initialize_rbi): New function.
+       (cfg_layout_initialize): Use it.
+       (cfg_layout_finalize): Clear rbi fields.
+       * cfglayout.h (RBI): Kill.
+       (cfg_layout_initialize_rbi): Declare.
+       * cfgloopmanip.c (copy_bbs): Use rbi.
+       (record_exit_edges): Likewise.
+       (duplicate_loop_to_header_edge): Likewise.
+       * cfgrtl.c (cfg_layout_create_basic_block): Use
+       cfg_layout_initialize_rbi.
+       (cfg_layout_split_block): Use rbi.
+       (cfg_layout_delete_block): Likewise.
+       * loop-init.c (loop_optimizer_finalize): Likewise.
+       * loop-unswitch.c (unswitch_loop): Likewise.
+       * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
+
+       * cfgrtl.c: Update comments.
+       (try_redirect_by_replacing_jump): New argument.
+       (redirect_branch_edge): Break out from ...
+       (rtl_redirect_edge_and_branch): ... this one.
+       (update_cfg_after_block_merging): Break out from ...
+       (rtl_merge_blocks): ... this one.
+       (cfg_layout_split_edge): New.
+       (cfg_layout_merge_blocks): New.
+       (cfg_layout_can_merge_blocks_p): New.
+       (cfg_layout_redirect_edge_and_branch): Reorganize.
+       (cfg_layout_rtl_cfg_hooks): Fill in.
+       (cfg_layout_delete_block): Kill barriers.
+       * cfganal.c (can_fallthru): Deal with exit blocks
+       * cfglayout.c (cfg_layout_function_header): New function
+       (record_effective_endpoints): Record function header.
+       (fixup_reorder_chain): Fixup dead jumptables; place header
+
+       * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
+       * bb-reorder.c (cfg_layout_initialize): Update call.
+       * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
+       edges in cfglayout mode.
+       * cfglayout.c (cleanup_unconditional_jumps): Kill.
+       (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
+       * cfglayout.h (cfg_layout_initialize): Update prototype.
+       * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
+       * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
+       * flow.c (propagate_block): Do not crash when basic block ends
+       by first insn in the chain.
+       * loop-init.c (loop_optimizer_init):  First enter cfglayout mode; later
+       do loop discovery.
+       * tracer.c (tracer): Update call of cfg_layout_initialize.
+
+2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in: Use dependency variables in lieu of explicit
+       files throughout.
+
+2003-07-03  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
+       * tree.h: ...to here.
+
+2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/s390/2064.md: Fix comment typos.
+       * config/s390/2084.md: Likewise.
+       * config/s390/s390.c: Likewise.
+       * config/s390/s390.md: Likewise.
+       * config/sh/sh.c: Likewise.
+       * config/sh/sh.h: Likewise.
+       * config/sh/sh.md: Likewise.
+       * config/sparc/sparc.c: Likewise.
+       * config/sparc/sparc.h: Likewise.
+       * config/sparc/sparc.md: Likewise.
+       * config/stormy16/stormy16.c: Likewise.
+       * config/stormy16/stormy16.h: Likewise.
+       * config/stormy16/stormy-abi: Fix a typo.
+
+2003-07-03  Kelley Cook  <kelleycook@wideopenwest.org>
+
+       * Makefile.in (ifcvt.o): Depend on OPTABS_H.
+
+2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * config/mips/mips.h (save_argv): Delete.
+
+2003-07-03  Roger Sayle  <roger@eyesopen.com>
+
+       PR target/10700
+       * fold-const.c (extract_muldiv_1): There's nothing that can be done
+       if the expression is a SAVE_EXPR.
+
+2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/m32r/m32r.c: Fix comment typos.
+       * config/m68hc11/m68hc11.c: Likewise.
+       * config/m68hc11/m68hc11.h: Likewise.
+       * config/m68k/m68k.c: Likewise.
+       * config/mcore/mcore.c: Likewise.
+       * config/mcore/mcore.h: Likewise.
+       * config/mcore/mcore.md: Likewise.
+       * config/mips/mips.c: Likewise.
+       * config/mips/mips.h: Likewise.
+       * config/mips/mips.md: Likewise.
+       * config/mips/netbsd.h: Likewise.
+       * config/mn10300/mn10300.c: Likewise.
+
+2003-07-03  Andreas Schwab  <schwab@suse.de>
+
+       * dbxout.c (pending_bincls): Move decl down inside
+       DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
+
+2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * rtl.h (NOTE_DATA): Refer to whole union.
+       * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
+
+2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/11381
+       * simplify-rtx.c (simplify_relational_operation): Check that
+       two equal operands have no side-effects before simplifying
+       the comparison.
+
+2003-07-02  Jeff Law  <law@redhat.com>
+
+       * expr.c (do_store_flag): Remove special case folding for
+       single bit tests.  Instead call back into the commonized folder
+       routine.
+       * fold-const.c (fold_single_bit_test): New function, mostly
+       extracted from do_store_flag, with an additional case extracted
+       from fold.
+       (fold): Call fold_single_bit_test appropriately.
+       * tree.h (fold_single_bit_test): Prototype.
+
+2003-07-02  Zack Weinberg  <zack@codesourcery.com>
+
+       * system.h: Include filenames.h.
+       (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
+       (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
+       define based on HAVE_DOS_BASED_FILE_SYSTEM.
+       * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
+       * config/i386/xm-mingw32.h: Don't define
+       HAVE_DOS_BASED_FILE_SYSTEM,
+       DIR_SEPARATOR, or DIR_SEPARATOR_2.
+       * doc/hostconfig.texi: Update to match.
+
+       * cppfiles.c, gcc.c, gensupport.c, protoize.c,
+       config/i386/cygwin.h:
+       Use IS_ABSOLUTE_PATH throughout.
+       * gcc.c (DIR_UP): Delete, unused.
+       * protoize.c (IS_SAME_PATH): Define in terms of
+       FILENAME_CMP.
+       (is_abspath): Delete.
+
+2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/i386/emmintrin.h: Fix comment typos.
+       * config/i386/i386.c: Likewise.
+       * config/i386/i386.h: Likewise.
+       * config/i386/sco5.h: Likewise.
+       * config/ia64/ia64.c: Likewise.
+       * config/ia64/itanium2.md: Likewise.
+
+2003-07-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
+       DBX_USE_BINCL.
+       (emit_bincl_stab): Same.
+       (emit_pending_bincls): Same.
+
+2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.c (compute_mov_length): Fix the length of
+       loading CONST0_RTX (SFmode).
+       * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
+       'G' to CONST0_RTX (SFmode).
+       * config/h8300/h8300.md (movsf_h8300): Change the first
+       constraint to 'G'.
+       (movsf_h8300h): Likewise.
+
+2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
+
+       * c-common.h (c_common_init_options): New prototype.
+       * c-opts.c (deferred_size): Remove.
+       (defer_opt): Array is now pre-allocated.
+       (c_common_init_options): Pre-allocate deferred_opts.  Make
+       lang_flags unsigned.
+       (push_command_line_options): Free deferred_opts.
+       * hooks.c (hook_uint_uint_constcharptrptr_0): New.
+       * hooks.h (hook_uint_uint_constcharptrptr_0): New.
+       * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
+       * langhooks.h (struct lang_hooks): New prototype for init_options.
+       * main.c (main): Cast argv.
+       * opts.c (handle_option, handle_options): Update prototypes.
+       (decode_options): save_argc, save_argv are not global.  Constify.
+       * opts.h (decode_options): New prototype.
+       * toplev.c (general_init): New protoype.
+       (save_argv): Make static.
+       (save_argc): Remove.
+       (print_switch_values, general_init): Constify.
+       (toplev_main): Save argv.
+       * toplev.h (toplev_main): Update prototype.
+       (save_argc, save_argv): Remove.
+
+2003-07-02  David Edelsohn  <edelsohn@gnu.org>
+
+       * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
+       (emit_bincl_stab): Same.
+       (emit_pending_bincls): Same.
+
+2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>
+
+       PR c++/11072
+       * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
+
+2003-07-02  Andreas Schwab  <schwab@suse.de>
+
+       * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
+
+2003-07-02  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/11210
+       * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
+       about the behaviour with regard to bitfields.
+       * fold-const (decode_field_reference): Record outermost type in
+       case the expression is a NOP. Strip all NOPs. Set the signedness
+       to that of the outermost type (if any) when the bitsize is equal
+       to the size of the type.
+
+2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
+       (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
+       (adddi3_internal_3, addsi3_internal_2): Likewise.
+
+2003-07-02  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (machine_function): Add new fields:
+       ignore_hazard_length_p and all_noreorder_p.
+       (mips_flag_delayed_branch): New variable.
+       (override_options): Treat '/' as an operand punctuation character.
+       Set up mips_flag_delayed_branch.
+       (print_operand): Handle '/'.
+       (mips_output_function_prologue): Put the whole function in
+       .set noreorder and .set nomacro if all_noreorder_p is true.
+       (mips_output_function_epilogue): End the noreorder/nomacro sequence.
+       (mips16_optimize_gp): Remove "first insn" parameter.
+       (mips16_lay_out_constants): New function, split out from mips_reorg.
+       (mips_avoid_hazard, mips_avoid_hazards): New functions.
+       (mips_reorg): For mips16 code, call mips16_lay_out_constant
+       and (optionally) mips16_optimize.  If TARGET_EXPLICIT_RELOCS,
+       do delayed-branch scheduling followed by hazard detection.
+       (mips_adjust_insn_length): Only account for hazards if
+       !ignore_hazard_length_p.
+       (mips_output_load_label): Add a nop to the o32 sequence if
+       the target suffers from load delays.
+       (mips_output_conditional_branch): Add %/ to the end of branches.
+       (mips_output_division): Fill the branch delay slot with %#.
+       * config/mips/mips.md: Remove redundant '%*' from mips16 branch
+       instructions.  End all other %* branches with %/.
+       (ffssi2, ffsdi2): Fix lengths.
+       (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
+       (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
+       (fix_truncsfsi2_macro): Likewise.
+       (mov_lwl): Set hazard to "none".
+       (ashldi3_internal): Fill the branch delay slot with %#.
+       (ashrdi3_internal, lshrdi3_internal): Likewise.
+       (exception_receiver): Explicitly set $28.
+       (hazard_nop): New pattern.
+
+Wed Jul  2 08:12:36 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
+       before calling tree_inlinable_function_p.
+
+2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
+       <internal/stdio_core.h> too.
+       (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
+       <internal/wchar_core.h> too.
+       Substitute va_list uses in inline definition.
+       * fixinc/fixincl.x: Regenerate.
+
+2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
+       Undef before redefinition.
+       (LABEL_AFTER_LOC): Likewise.
+       (DEFAULT_SIGNED_CHAR): Likewise.
+       (ASM_OUTPUT_ASCII): Moved here from iris4.h.
+       Fix IRIX spelling.
+
+       * config/mips/iris3.h: Remove, unused.
+       * config/mips/iris4.h: Likewise.
+
+       * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
+
+       * config/mips/iris5.h (TARGET_DEFAULT): Move ...
+       * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
+       target_cpu_default.
+
+       * config/mips/iris5.h: Move explicit includes ...
+       * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
+
+       * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
+       * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
+       tm_defines.
+
+       * config/mips/iris6.h (TARGET_DEFAULT): Move ...
+       * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
+       target_cpu_default.
+
+       * config/mips/iris6.h: Fix IRIX spelling.
+       (MULTILIB_DEFAULTS): Undef before redefinition.
+
+       * config/mips/iris6.h: Move explicit includes ...
+       * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
+
+Wed Jul  2 02:16:48 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
+       cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
+       Use next_needed field instead of aux to maintain the queue.
+       * cgraph.h (cgraph_node): Add next_needed.
+       (cgraph_varpool_node): Add next_needed; remove aux.
+       * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
+
+Wed Jul  2 02:12:51 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphunit.c (cgraph_finalize_function): Set finalized.
+       (cgraph_finalize_function): Do not examine inlinablility.
+       (cgraph_finalize_compilation_unit): Do it here.
+       * cgraph.h (cgraph_local_info): Add finalized field.
+
 2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
 
        * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
        (binclstatus): New.
-       (struct dbx_file): New members - bincl_status, pending_bincl_name and 
+       (struct dbx_file): New members - bincl_status, pending_bincl_name and
        prev.
        (pending_bincls): New.
        (dbxout_init): Initialize new dbx_file members.
        (emit_bincl_stab): New function.
        (emit_pending_bincls): Same.
        (emit_pending_bincls_if_required): Same.
-       (dbxout_end_source_file): Emit EINCL stab only if BINCL is  already 
+       (dbxout_end_source_file): Emit EINCL stab only if BINCL is  already
        processed.
        (dbxout_begin_block): Emit pending BINCL stabs.
        (dbxout_end_block): Same.
        (dbxout_symbol): Same.
        (dbxout_symbol_location): Same.
        (dbxout_parms): Same.
-       
+
 2003-07-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * c-semantics.c (genrtl_case_label): Fix format specifier bug.
        displacements.
 
 2003-06-30  Hartmut Penner  <hpenner@de.ibm.com>
-            Ulrich Weigand  <uweigand@de.ibm.com>
+           Ulrich Weigand  <uweigand@de.ibm.com>
 
        * config/s390/2084.md: New file.
        * config/s390/s390.md: Include it.
@@ -426,8 +1351,8 @@ Mon Jun 30 15:36:29 CEST 2003  Jan Hubicka  <jh@suse.cz>
 
 2003-06-30 Hartmut Penner  <hpenner@de.ibm.com>
 
-        * config/rs6000/rs6000.c (rs6000_split_altivec_in_gprs): New function.
-        (altivec_in_gprs_p): New function.
+       * config/rs6000/rs6000.c (rs6000_split_altivec_in_gprs): New function.
+       (altivec_in_gprs_p): New function.
 
        * config/rs6000/rs6000-protos (rs6000_split_altivec_in_gprs): New
        prototype.
@@ -549,7 +1474,7 @@ Sun Jun 29 23:06:32 CEST 2003  Jan Hubicka  <jh@suse.cz>
 
 2003-06-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
-        * pa.c (update_total_code_bytes): New function.
+       * pa.c (update_total_code_bytes): New function.
        (last_address): Number of bytes output for a function and its
        associated thunks.
        (compute_frame_size): Use BITS_PER_UNIT.
@@ -6089,6 +7014,7 @@ Fri May 23 21:19:31 CEST 2003  Jan Hubicka  <jh@suse.cz>
 2003-05-18  Neil Booth  <neil@daikokuya.co.uk>
 
        * config/sparc/sparc.h: Define sparc for now.
+
 2003-05-18  Nathanael Nerode  <neroden@gcc.gnu.org>
 
        * config.gcc: Clear xm_file, md_file at the beginning of each pass.