OSDN Git Service

PR c/14765
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ca2b422..7a53230 100644 (file)
@@ -1,6 +1,696 @@
+2004-06-07  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/14765
+       * c-parse.in (compstmt_primary_start): Set last_expr_type to
+       NULL_TREE.
+
+2004-06-07  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/15815
+       * doc/extend.texi: Deprecate #pragma interface and #pragma
+       implementation.
+
+2004-06-07  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR middle-end/15666
+       * c-decl.c (finish_decl): Use change_decl_assembler_name for the
+       builtin decl as well.
+
+2004-06-07  Roger Sayle  <roger@eyesopen.com>
+
+       PR c/14649
+       * c-typeck.c (require_constant_value, require_constant_elements):
+       Move declarations to the top of the file.
+       (build_function_call): If we require a constant value, fold with
+       fold_initializer.  If the result is a constant, and the function
+       wasn't called using __builtin_foo, issue a pedantic warning.
+       (build_unary_op): If we require a constant value, fold tree with
+       fold_initializer.
+       (build_binary_op): Use require_constant_value to determine whether
+       to call fold or fold_initializer.
+
+2004-06-07  Richard Henderson  <rth@redhat.com>
+
+       * gimple-low.c (struct lower_data): Add the_return_label and
+       one_return_stmt.
+       (lower_function_body): Initialize and use them.
+       (lower_return_expr): New.
+       (lower_stmt): Call it.
+       * gimplify.c (gimplify_return_expr): Force the argument to be either
+       null or a result_decl.
+       * tree-gimple.c: Update gimple grammer to match.
+       * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Deny
+       coalescing of result_decls.
+
+2004-06-07  Richard Henderson  <rth@redhat.com>
+
+       PR rtl-opt/15193
+       * expmed.c (extract_bit_field): Fix vector_extract return.
+
+       * config/i386/i386.md (negv4sf2): New pattern.
+
+2004-06-07  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/15337
+       * c-common.c (c_sizeof_or_alignof_type): Use more detailed error
+       message.
+
+2004-06-06  Paolo Bonzini  <bonzini@gnu.org>
+
+       * config.in: Regenerate.
+
+2004-06-06  Steven Bosscher  <stevenb@suse.de>
+
+       * tree-cfg.c (tree_verify_flow_info): Make sure that labels in
+       SWITCH_LABELS are always sorted.
+
+2004-06-06  Steven Bosscher  <stevenb@suse.de>
+
+       * hooks.c (hook_int_void_1): New generic hook.
+       * hooks.h (hook_int_void_1): Add prototype.
+       * config/c4x/c4x.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
+       Define to hook_int_void_1.
+       * config/c4x/c4x.md: Replace dummies for the old pipeline model
+       with dummies for the new one.
+
+2004-06-06  Roger Sayle  <roger@eyesopen.com>
+
+       * tree.h (lvalue_or_else): Delete function prototype.
+       * c-typeck.c (lvalue_or_else): Make static.  Add static prototype.
+
+2004-06-06  Stephane Carrez  <stcarrez@nerim.fr>
+
+       PR target/14542
+       * config/m68hc11/m68hc11.md (move peephole2): Emit a use note to avoid
+       a live change of a register after peephole replacement.
+
+2004-06-06  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/13519
+       * c-typeck.c (composite_type, common_pointer_type): New functions.
+       (common_type): Split parts into composite_type and
+       common_pointer_type.  Ensure that arithmetic operations return
+       unqualified types without attributes.  Don't make composite type
+       of signed enum and compatible integer be unsigned.
+       (build_conditional_expr, build_binary_op): Use
+       common_pointer_type.
+       * c-decl.c (merge_decls): Use composite_type.
+       * c-tree.h (composite_type): Declare.
+
+2004-06-06  Stephane Carrez  <stcarrez@nerim.fr>
+
+       PR target/14457
+       * config/m68hc11/m68hc11.c (splitable_operand): New predicate.
+       * config/m68hc11/m68hc11-protos.h (splitable_operand): Declare.
+       * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register it.
+       (inhibit_libc): Must define.
+       * config/m68hc11/m68hc11.md ("movhi_const0"): Use splitable_operand.
+       ("*andhi3_gen", "iorhi3", "*iorhi3_gen"): Likewise.
+       ("xorhi3"): Likewise.
+
+2004-06-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * cgraphunit.c (cgraph_decide_inlining): Adjust dump lines in
+       always_inline pass.
+
+2004-06-05  David S. Miller  <davem@nuts.davemloft.net>
+
+       * config/sparc/linux.h (TARGET_C99_FUNCTIONS): Set.
+       * config/sparc/linux64.h (TARGET_C99_FUNCTIONS): Likewise.
+
+2004-06-05  Bernardo Innocenti  <bernie@develer.com>
+
+       * regclass.c (init_reg_sets): Check for missing registers in target
+       initializer macros FIXED_REGISTERS and CALL_USED_REGISTERS.
+
+2004-06-05  Zack Weinberg  <zack@codesourcery.com>
+
+       * Makefile.in (MKDEPS_H): New shorthand.
+       (c-opts.o): Update dependencies.
+       * c-opts.c: Include mkdeps.h.
+       (handle_deferred_opts): Use cpp_get_deps and deps_add_target,
+       not cpp_add_dependency_target.
+
+2004-06-05  Steven Bosscher  <stevenb@suse.de>
+
+       * config/v850/v850.c (v850_use_dfa_pipeline_interface): New.
+       * config/v850/v850.md: Convert to DFA scheduler description.
+
+2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15478
+       * doc/install.texi: Document GMP as prerequisite. Document
+       --with-gmp and --with-gmp-dir configure options.
+       * fortran/gfortran.texi: Remove section "Compiling and testing",
+       remove TOC reference to it.
+
+2004-06-05  Graham Stott  <graham.stott@btinternet.com>
+
+       * combine.c(simplify_shift_const): Check shift amount is a
+       CONST_INT.
+
+2004-06-05  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * toplev.c (init_asm_output): Add explicit 'b' to mode when
+       opening asm_out_file.
+       * c-pch.c (c_common_write_pch): Remove unnecessary fflush before
+       reading asm_out_file. Replace fflush after reading asm_out_file
+       with fseek.
+       * hosthooks-def.h (HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY): Define
+       default and add to HOST_HOOKS_INITIALIZER.
+       * hosthooks.h (gt_pch_alloc_granularity): Declare hook function.
+       * ggc-common.c (default_gt_pch_alloc_granularity): New function.
+       (gt_pch_save): Use host_hooks.gt_pch_alloc_granularity
+       to set mmi.offset padding.
+        * config.gcc (i[34567]86-*-mingw32*): Set target_gtfiles to
+       $(srcdir)/config/i386/winnt.c.
+       (i[34567]86-*-pe | i[34567]86-*-cygwin*): Likewise.
+       (i[34567]86-*-uwin*): Likewise.
+       *i[34567]86-*-interix3*): Likewise.
+       * config.host (i[34567]86-*-mingw32*): Set out_host_hook_obj.
+       * config/i386/host-mingw32.c: New file.
+       * config/i386/x-mingw32: Add rule for host-mingw32.o.
+       * config/i386/winnt.c: (struct extern_list) Tag as GTY.
+       (extern_head): Likewise.
+       (struct export_list) Likewise.
+       (export_head): Likewise.
+       (i386_pe_record_external_function): Use ggc_alloc.
+       (i386_pe_record_exported_symbol): Likewise.
+       Include "gt-winnt.h" at end.
+       * doc/hostconfig.texi: Document
+       HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY.
+
+2004-06-04  Bernardo Innocenti  <bernie@develer.com>
+
+       * config/m68k/m68k.h: Remove comments copied over from tm.texi.
+       Rename 68000 and 68k to m68k for consistency in comments.  Remove
+       trailing whitespace before EOLs and before TABs.
+       (MAX_CODE_ALIGN): Remove unused macro.
+       (CALL_USED_REGISTERS): Reformat and add comments.
+
+2004-06-04  Frank Ch. Eigler  <fche@redhat.com>
+
+       * gcc.c (MFLIB_SPEC): Remove library references, to require users
+       to enumerate -lmudflap* and dependencies when linking.
+
+2004-06-04  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR target/15822
+       * dojump.c (do_jump): Fix uninitialized variable tcode1.
+
+2004-06-04  Jerry Quinn  <jlquinn@optonline.net>
+
+       * Makefile.in (insn-conditions.o): Back out removal of reload.h.
+       * genconditions.c (write_header): Back out removal of reload.h.
+
+2004-06-04  Jan Hubicka  <jh@suse.cz>
+
+       Re-apply hopefully fixed patch:
+       * i386.md (UNSPECV_EH_RETURN): Kill.
+       (eh_return): Use jump_insn.
+       (eh_return_si, eh_return_di): Change pattern to jump instruction.
+
+2004-06-04  Jeff Law  <law@redhat.com>
+
+       * cfgrtl.c (try_redirect_by_replacing_jump): Fix return value.
+
+2004-06-04  Steven Bosscher  <stevenb@suse.de>
+
+       * except.c (for_each_eh_region): New function.
+       * except.h (for_each_eh_region): Add a prototype for it.
+       * tree-cfg.c (update_eh_labels): New function, callback for
+       for_each_eh_region.
+       (label_for_bb): Make global static, unfortunately.
+       (cleanup_dead_labels): Also update label references for
+       exception regions.
+
+2004-06-03  Chris Demetriou  <cgd@broadcom.com>
+
+       * config/mips/mips.c (struct irix_section_align_entry): Fix
+       GTY marker.
+
+2004-06-03  Geoffrey Keating  <geoffk@apple.com>
+
+       * toplev.c (check_global_declarations): Don't ask for
+       DECL_ASSEMBLER_NAME unless the function really is declared
+       static and not defined.
+
+2004-06-03  Matt Austern  <austern@apple.com>
+
+       PR c++/15428
+       * default.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): New name
+       for TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, with reversed sense.
+       * config/darwin.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Likewise.
+       * doc/tm.texi (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Rewrite
+       documentation to reflect the new macro name and to clarify its
+       meaning.
+
+2004-06-03  Steven Bosscher  <stevenb@suse.de>
+
+       * rtl.def (VAR_LOCATION): Make RTX_EXTRA.
+
+2004-06-03  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * config/darwin.c (machopic_indirect_data_reference): Copy
+       the SYMBOL_REF_DECL from the original RTX for the new
+       non-lazy pointer RTX.
+
+2004-06-03  Mark G. Adams  <mark.g.adams@sympatico.ca>
+
+       * tree.h: Remove include of version.h
+       * c-cppbuiltin.c: Include version.h
+       * diagnostic.c: Include version.h
+       * dwarf2out.c: Include version.h
+       * toplev.c: Include version.h
+       * vmsdbgout.c: Include version.h
+       * Makefile.in: Remove dependency on version.h from TREE_H, and
+       add dependencies to required .o targets
+
+2004-06-03  Jerry Quinn  <jlquinn@optonline.net>
+
+       * Makefile.in (RA_H, RESOURCE_H, SCHED_INT_H, CFGLAYOUT_H,
+       CFGLOOP_H, DF_H, DDG_H, TREE_SSA_LIVE_H): New.
+       (TARGET_H): Add insn-modes.h.
+       (tree-ssa.o, tree-cfg.o, tree-ssa-loop.o, toplev.o, passes.o,
+       loop.o, loop-doloop.o, unroll.o, cfgloop.o, cfgloopanal.o,
+       loop-iv.o, cfgloopmanip.o, loop-init.o, loop-unswitch.o,
+       loop-unroll.o, ddg.o, modulo-sched.o, predict.o,
+       cfglayout.o, ifcvt.o): Replace cfgloop.h with CFGLOOP_H.
+       (toplev.o, passes.o, cfghooks.o, cfgloopmanip.o, loop-init.o,
+       loop-unswitch.o, loop-unroll.o, ddg.o, modulo-sched.o,
+       bb-reorder.o, tracer.o, cfglayout.o): Replace cfglayout.h with
+       CFGLAYOUT_H.
+       (ra.o, ra-build.o, ra-colorize.o, ra-debug.o, ra-rewrite.o):
+       Replace ra.h with RA_H.
+       (resource.o, regrename.o, insn-conditions.o, insn-emit.o,
+       insn-recog.o): Replace resource.h with RESOURCE_H.
+       (ddg.o, modulo-sched.o, haifa-sched.o, sched-deps.o, sched-rgn.o,
+       sched-ebb.o, sched-vis.o, out_object_file):  Replace sched-int.h
+       with SCHED_INT_H.
+       (web.o, lcm.o, df.o, ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
+       ra-rewrite.o): Replace df.h with DF_H.
+       (ddg.o, modulo-sched.o): Replace ddf.h with DDG_H.
+       (tree-outof-ssa.o, tree-ssa-live.o, tree-ssa-copyrename.o):
+       Replace tree-ssa-live.h with TREE_SSA_LIVE_H.
+       (insn-conditions.o): Remove unused reload.h.
+       * cfglayout.h: Add include guard.  Include basic-block.h.
+       * cfgloop.h: Add include guard.  Include basic-block.h, rtl.h.
+       * ddg.h: Include sbitmap.h, basic-block.h, df.h.
+       * df.h: Add include guard.  Include bitmap.h, sbitmap.h,
+       basic-block.h.
+       * genconditions.c:  Remove reload.h.
+       * ra.h: Add include guard.  Include bitmap.h, sbitmap.h,
+       hard-reg-set.h, insn-modes.h.
+       * resource.h: Add include guard.  Include hard-reg-set.h.
+       * sched-int.h:  Add include guard.  Include insn-attr.h,
+       basic-block.h, rtl.h.
+       * target.h: Add include guard.  Include insn-modes.h.
+       * tree-ssa-live.h: Include partition.h.
+
+2004-06-03  Daniel Berlin  <dberlin@dberlin.org>
+               Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * tree-ssa-ccp.c (varying_ssa_edges): New worklist.
+       (add_var_to_ssa_edges_worklist): Add value argument.
+       Update callers.
+       Use new worklist.
+       (process_ssa_edge_worklist): New function.
+       (tree_ssa_ccp): Move worklist processing core to
+       process_ssa_edge_worklist, and just call that for the two worklists.
+
+2004-06-03  Steven Bosscher  <stevenb@suse.de>
+
+       * basic-block.c (tail_recursion_label_list): Don't declare.
+       (CLEANUP_PRE_SIBCALL): Remove.  Renumber the other CLEANUP_*
+       accordingly.
+       * cfgbuild.c (find_label_refs): Remove.
+       (find_basic_blocks_1): Don't handle CALL_PLACEHOLDER insns.
+       * cfgcleanup.c (tail_recursion_label_p): Remove.
+       (merge_blocks_move): Do not check for tail recursion.
+       (try_optimize_cfg): Likewise.
+       (cleanup_cfg): Never handle CLEANUP_PRE_SIBCALL.
+       * cfgrtl.c (tail_recursion_label_list): Remove.
+       * except.c (remove_unreachable_regions): Don't handle
+       CALL_PLACEHOLDER insns.
+       (convert_from_eh_region_ranges_1, can_throw_internal,
+       can_throw_external): Likewise.
+       * function.c (free_after_compilation): Don't clear
+       x_tail_recursion_label.
+       (fixup_var_refs_insns): Don't handle CALL_PLACEHOLDER insns.
+       (identify_blocks_1): Don't recurse for CALL_PLACEHOLDER insns.
+       (reorder_blocks_1): Likewise.
+       * function.h (struct function): Remove x_tail_recursion_label
+       member.  Don't define tail_recursion_label.
+       * jump.c (mark_all_labels): Don't handle CALL_PLACEHOLDER insns.
+       * print-rtl.c (print_rtx): Likewise.
+       * rtl.def (CALL_PLACEHOLDER): Remove.
+       * rtl.h (sibcall_use_t): Remove enum.
+       (optimize_sibling_and_tail_recursive_calls,
+       replace_call_placeholder): Remove function prototypes.
+       * stmt.c (tail_recursion_args): Remove.
+       (optimize_tail_recursion): Remove.
+       (expand_return): Don't check for possible tail recursion.
+       * tree.h (optimize_tail_recursion): Remove prototype.
+
+2004-06-02  Jan Hubicka  <jh@suse.cz>
+
+       * tree-cfg.c (tree_find_edge_insert_loc):  Allow inserting before
+       return_stmt.
+
+2004-06-02  Jason Merrill  <jason@redhat.com>
+
+       * Makefile.in (TAGS): Don't mess with c-parse.[ch].
+       Do include c-parse.in.
+
+2004-06-02  Eric Christopher  <echristo@redhat.com>
+
+       * c-typeck.c (common_type): Don't lose type qualifiers
+       when creating new variants.
+
+2004-06-02  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-optimization/14042
+       PR tree-optimization/14729
+       PR tree-optimization/14736
+       * tree-ssa.c (tree_ssa_useless_type_conversion_1):
+       Check the type which the pointer points to
+       instead of the pointer types.
+
+2004-06-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       PR tree-optimization/15738.
+       * builtins.c (fold_builtin_strchr): Transform
+       strrchr (s, '\0') to strchr (s, '\0').
+
+2004-06-02  Steven Bosscher  <stevenb@suse.de>
+
+       * i386.c (ix86_adjust_cost): Don't increase the cost for
+       load+operation for PROCESSOR_PENTIUMPRO, it is already
+       modelled in the DFA description
+
+2004-06-01  Jerry Quinn  <jlquinn@optonline.net>
+
+       * Makefile.in (EXPR_H): Add insn-config.h, function.h,
+       $(RTL_H), flags.h, $(TREE_H), $(MACHMODE_H), $(EXPR_H).
+       (ALIAS_H, EMIT_RTL_H): New.
+       (cselib.o): Replace EXPR_H with EMIT_RTL_H.
+       (cfgcleanup.o): Add EMIT_RTL_H.
+       (alias.o): Replace EXPR_H with EMIT_RTL_H and ALIAS_H.
+       * alias.c: Replace expr.h with emit-rtl.h and alias.h.
+       * attribs.c, c-lex.c, c-obj-common.c, c-semantics.c: Remove expr.h.
+       * cfgcleanup.c, cselib.c: Replace expr.h with emit-rtl.h.
+       * expr.h: Add include guard.  Include function.h, rtl.h, flags.h,
+       tree.h, machmode.h, insn-config.h, alias.h, emit-rtl.h.
+       (get_varargs_alias_set, get_frame_alias_set, record_base_value,
+       record_alias_subset, new_alias_set, can_address_p): Move to alias.h.
+       (set_mem_alias_set, set_mem_align, set_mem_expr, set_mem_offset,
+       set_mem_size): Move to emit-rtl.h.
+       * emit-rtl.h: New.
+       * alias.h: New.
+
+2004-06-01  Eric Botcazou  <ebotcazou@act-europe.fr>
+
+       * function.c (walk_fixup_memory_subreg): New parameter 'var'.
+       Call fixup_memory_subreg only if the MEM is equal to 'var'.
+       Adjust recursive calls to self.
+       (fixup_var_refs_insn): Pass 'var' to walk_fixup_memory_subreg.
+
+2004-06-01  Richard Henderson  <rth@redhat.com>
+           Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * c-parse.in (OFFSETOF, offsetof_member_designator): New.
+       (primary): Handle offsetof.  Add error productions for faux functions.
+       Move component_ref objc checking to build_component_ref.
+       (reswords): Add offsetof.
+       (rid_to_yy): Add offsetof.
+       * c-tree.h (build_offsetof): Declare.
+       * c-common.h (objc_is_public): Declare.
+       * c-typeck.c (build_component_ref): Check objc_is_public.
+       (build_offsetof): New.
+       * stub-objc.c (objc_is_public): New.
+       * objc/objc-act.c, objc/objc-act.h (objc_is_public): Rename
+       from is_public.
+       * ginclude/stddef.h (offsetof): Use __builtin_offsetof.
+       * doc/extend.texi (Offsetof): Move from C++ section to C section
+       and rewrite for __builtin_offsetof.
+
+2004-06-01  Peter Barada  <peter@the-baradas.com>
+           Peter Jakubek  <peter@laseranimation.com>
+
+       * config/m68k/m68k.c(m68k_output_mi_thunk):  For ColdFire, use %d0 as
+       a scratch to perform an add to memory.
+
+2004-06-01  Bernardo Innocenti  <bernie@develer.com>
+
+       PR target/14018
+       * config/m68k/m68k.c (m68k_align_loops_string, m68k_align_jumps_string,
+       m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
+       m68k_align_funcs): Remove.
+       (override_options): Remove code to handle -malign-* options.
+       * config/m68k/m68k.h (TARGET_OPTIONS): Remove -malign-* options.
+       (FUNCTION_BOUNDARY, LOOP_ALIGN, LOOP_ALIGN_AFTER_BARRIER): Remove.
+       (m68k_align_loops_string, m68k_align_jumps_string,
+       m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
+       m68k_align_funcs): Remove definitions.
+
+2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       PR target/15626
+       * doc/install.texi (sparc-sun-solaris2*): Document messages issued
+       by the Sun linker in conjunction with the Sun assembler.
+       (sparc-sun-solaris2.7): Update revision info for Sun patch 106950.
+
+2004-06-01  Jeff Law  <law@redhat.com>
+
+       * stmt.c (expand_decl): Be more selective about calling
+       mark_reg_pointer.
+
+2004-06-01  Nicola Pero  <nicola@brainstorm.co.uk>
+
+       PR objc/7993
+       * objc-act.c (is_private): Do not emit the 'instance variable %s
+       is declared private' error.
+       (is_public): Emit the error after calling is_private.
+       (lookup_objc_ivar): If the instance variable is private, return 0
+       - the instance variable is invisible here.
+
+2004-06-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * doc/invoke.texi (-static-libgcc): Explicitly mention
+       non-GNU linkers.
+
+2004-06-01  Bernardo Innocenti  <bernie@develer.com>
+
+       PR target/12968
+       * doc/invoke.texi: Document stack alignment side-effect of -mshort.
+
+2004-05-31  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/15749
+       * c-decl.c (grokdeclarator, finish_struct): Don't pedwarn for
+       misuses of structures with flexible array members if
+       in_system_header.
+
+2004-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR target/15693
+       * config/sparc/sparc.c (compare_operand): New predicate.
+       * config/sparc/sparc.h (PREDICATE_CODES): Add it.
+       * config/sparc/sparc.md (cmpsi expander): Use it.  If the first
+       operand is a ZERO_EXTRACT and the second operand is not zero,
+       force the former to a register.
+       (cmpdi expander): Likewise.
+
+2004-05-31  Geoffrey Keating  <geoffk@apple.com>
+
+       * gengtype-lex.l: Catch stray GTY markers in the files gengtype
+       looks at.
+       * alias.c (alias_invariant_size): Make alias_invariant_size
+       static, fix GTY marker.
+
+2004-05-31  Kazu Hirata  <kazu@cs.umass.edu>
+
+       PR tree-optimization/15743.
+       * builtins.c (fold_builtin_1): Fold index() and rindex().
+
+2004-05-31  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/15069
+       * fold-const.c (fold_single_bit_test): Only perform "(X & C) != 0"
+       into "X < 0" (where C is the signbit) if X's type is a full mode.
+
+2004-05-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa.md: Disable the peephole2 patterns that generate indexed
+       floating-point stores when indexing is disabled.
+
+2004-05-31  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       * c-pretty-print.c (pp_c_left_bracket): Make a function.
+       (pp_c_right_bracket): Likewise.
+       (pp_c_star): Likewise.
+       (pp_c_ampersand): Define.
+       * c-pretty-print.h (pp_c_left_bracket): Declare.
+       (pp_c_right_bracket): Likewise.
+       (pp_c_star): Likewise.
+       (pp_c_ampersand): Likewise.
+
+2004-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sol2.h (__enable_execute_stack): ANSIfy function
+       definition.
+
+2004-05-31  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * c-incpath.c (add_path): Canonicalize paths to use '/' if
+       HAVE_DOS_BASED_FILESYSTEM.
+
+2004-05-31  Steven Bosscher  <stevenb@suse.de>
+
+       * tree-ssa-dom.c (record_equivalences_from_incoming_edge):
+       Only look at case labels if the immediate dominator is also
+       the only predecessor.  Don't look for more case labels if the
+       first seen is a case range.
+
+2004-05-31  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c: Add a prototype for fold_builtin_strchr().
+
+2004-05-31  Paolo Bonzini  <bonzini@gnu.org>
+
+       Revert this patch:
+       2004-05-27  Paolo Bonzini  <bonzini@gnu.org>
+
+       * combine.c (gen_binary): Remove.
+       (known_cond, simplify_shift_const
+       find_split_point, combine_simplify_rtx,
+       simplify_if_then_else, simplify_set,
+       simplify_logical, expand_field_assignment,
+       extract_left_shift, force_to_mode,
+       if_then_else_cond, apply_distributive_law,
+       simplify_and_const_int, simplify_shift_const,
+       gen_lowpart_for_combine, simplify_comparison,
+       reversed_comparison): Replace with
+       simplify_gen_binary, simplify_gen_relational or
+       distribute_and_simplify_rtx.
+       (distribute_and_simplify_rtx): New function.
+
+2004-05-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands
+       when generating PIC code.
+
+2004-05-30  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * c-decl.c (c_expand_body_1): Remove and fold back into ...
+       (c_expand_body): here.
+       (c_expand_decl): Move to ...
+       * c-common.c (c_expand_decl): Here and remove check for nested
+       functions.
+       * c-common.h (c_expand_decl): Add prototype.
+       * c-tree.h (c_expand_decl): Remove.
+
+2004-05-30  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (combine_comparisons, optimize_bit_field_compare,
+       range_binop, fold_truthop, fold_binary_op_with_conditional_arg,
+       fold_mathfn_compare, fold_inf_compare, fold,
+       fold_relational_hi_lo, nondestructive_fold_binary_to_constant):
+       Use constant_boolean_node where appropriate.  Don't bother using
+       fold_convert on the second argument to omit_one_operand.
+
+2004-05-30  Roger Sayle  <roger@eyesopen.com>
+
+       * doc/c-tree.texi (Expressions): Document FLOOR_DIV_EXPR,
+       CEIL_DIV_EXPR, ROUND_DIV_EXPR, FLOOR_MOD_EXPR, CEIL_MOD_EXPR,
+       ROUND_MOD_EXPR, EXACT_DIV_EXPR.  Improve documentation of
+       TRUNC_DIV_EXPR, TRUNC_MOD_EXPR and comparison operations.
+       Add missing (but documented) tree nodes to the index.
+
+2004-05-30  Steven Bosscher  <stevenb@suse.de>
+
+       PR tree-optimization/14819
+       * builtins.c (fold_builtin_strchr): New.
+       (fold_builtin_1): Handle BUILT_IN_STRCHR and BUILT_IN_STRRCHR
+       with fold_builtin_strchr().
+
+2004-05-30  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * bb-reorder.c, builtins.c, c-common.c, c-gimplify.c,
+       c-incpath.c, cgraphunit.c, ddg.c, defaults.h, dwarf2out.c,
+       expmed.c, flags.h, gcc.c, gensupport.c, gimplify.c, global.c,
+       passes.c, reg-stack.c, target.h, toplev.c, tree-alias-ander.c,
+       tree-alias-common.c, tree-cfg.c, tree-complex.c, tree-dfa.c,
+       tree-eh.c, tree-mudflap.c, tree-mudflap.h, tree-outof-ssa.c,
+       tree-phinodes.c, tree-pretty-print.c, tree-ssa-alias.c,
+       tree-ssa-ccp.c, tree-ssa-live.c, tree-ssa-live.h,
+       tree-ssa-pre.c, tree.h, value-prof.h, varasm.c: Fix comment
+       formatting.
+
+2004-05-30  Steven Bosscher  <stevenb@suse.de>
+
+       * gimplify.c (sort_case_labels): New.  Split out from...
+       (gimplify_switch_expr): ...here.  Use it.
+       * tree-eh.c (lower_try_finally_switch): Sort the labels of
+       the SWITCH_EXPR created here before leaving the function.
+       * tree.c (sort_case_labels): Add prototype.
+
+2004-05-30  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * fold-const.c (fold) [case TRUTH_NOT_EXPR]: Make sure the type is
+       of BOOLEAN_TYPE.
+
+2004-05-30  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * c-common.c, calls.c, cfgcleanup.c, cgraph.c, cgraphunit.c,
+       ddg.c, ddg.h, df.c, df.h, except.c, expr.c, flags.h,
+       fold-const.c, gcc.c, gimplify.c, haifa-sched.c,
+       modulo-sched.c, tree-inline.c, tree-into-ssa.c, tree-nested.c,
+       tree-nrv.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-live.c,
+       tree-ssa-loop.c, tree-ssa-pre.c, tree-tailcall.c, tree.h: Fix
+       comment typos.  Follow spelling conventions.
+
+2004-05-29  Geoffrey Keating  <geoffk@apple.com>
+
+       * gengtype-yacc.y: Add NESTED_PTR token.
+       (option): Record `nested_ptr' option.
+       * gengtype-lex.l: Handle `nested_ptr' keyword.
+       * gengtype.c (walk_type): Process `nested_ptr' option.
+       * gengtype.h (struct nested_ptr_data): New.
+       * doc/gty.texi (GTY Options): Document `nested_ptr' option.
+       * stringpool.c (struct string_pool_data): Make 'entries' point to
+       ht_identifier instead of tree.
+       (gt_pch_save_stringpool): Don't adjust pointers.
+       (gt_pch_restore_stringpool): Call ht_load.
+
+2004-05-29  Jason Merrill  <jason@redhat.com>
+
+       * gimplify.c (gimplify_expr): Don't build a statement list
+       if no gimplification was necessary.
+
+2004-05-29  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * pretty-print.c (pp_base_format_text): Support %< instead of %`
+       and %> as well as %'.
+       * c-format.c: Use %< and %>.
+       (gcc_diag_char_table, gcc_cdiag_char_table,
+       gcc_cxxdiag_char_table): Update.
+
+2004-05-29  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-typeck.c (common_type): Correct comment.
+
+2004-05-29  Peter Barada  <peter@the-baradas.com>
+
+       * config/m68k/m68k.c (CONST_METHOD): Add MVZ, MVS.
+       * config/m68k/m68k.c (const_method): Likewise.
+       * config/m68k/m68k.c (const_int_cost): Likewise.
+       * config/m68k/m68k.c (const_int_cost): Likewise.
+       * config/m68k/m68k.c (output_move_const_into_data_reg): Likewise.
+
 2004-05-29  Peter Barada  <peter@the-baradas.com>
 
-       * config/m68k/m68k.h(EXTRA_CONSTRAINT): add 'U' for register offset
+       * config/m68k/m68k.h (EXTRA_CONSTRAINT): add 'U' for register offset
        addressing.
        * config/m68k/m68k.md: Add 'U,U' alternative to ColdFire variants of
        movsi,movhi,movqi insn patterns.
        and the remaining even if flag_unsafe_math_optimizations
        is off but we are under -fno-trapping-math.
        (fold_relational_const): Integer modes do not honor NaNs.
-       
+
 2004-05-28  Paul Brook  <paul@codesourcery.com>
 
        * config/arm/arm.c (arm_output_epilogue): Remove redundant code.
 
        * cfgbuild.c (control_flow_insn_p):  Notice noreturn call
 
-2004-05-25  Paolo Bonzini  <bonzini@gnu.org>
+2004-05-27  Paolo Bonzini  <bonzini@gnu.org>
 
        * combine.c (gen_binary): Remove.
        (known_cond, simplify_shift_const
        calculate_local_reg_bb_info, set_up_bb_rts_numbers, rpost_cmp,
        modify_bb_reg_pav, calculate_reg_pav,
        make_accurate_live_analysis): New functions.
-       
+
 2004-05-25  Devang Patel  <dpatel@apple.com>
 
        * alias.c (init_alias_analysis): Use ggc_calloc instead of
        xrealloc.
        (end_alias_analysis): Use ggc_free instead fo free.
-       
+
 2004-05-25  Andrew Pinski  <pinskia@physics.uc.edu>
 
        PR target/15546
        (nonzero_bits, cached_nonzero_bits, nonzero_bits1,
        num_sign_bit_copies, cached_num_sign_bit_copies,
        num_sign_bit_copies1): New, from combine.c.
-       * rtlhooks.c: New file. 
+       * rtlhooks.c: New file.
 
 2004-05-25  Svein E. Seldal  <Svein.Seldal@solidas.com>
 
        to support 32-bit -mint8 mode.
 
        * doc/invoke.texi (-mint8): Added documentation for the -mint8
-       option in the AVR architecture. 
+       option in the AVR architecture.
 
 2004-05-24  Mike Stump  <mrs@apple.com>
 
 
        PR tree-optimization/14197
        * builtins.c: Include "tree-gimple.h"
-       (readonly_data_expr): Use get_base_address.  Make sure to call 
+       (readonly_data_expr): Use get_base_address.  Make sure to call
        decl_readonly_section only on trees it can handle.
        * tree-gimple.c (get_base_address): Accept STRING_CST and
        CONSTRUCTOR expressions.