OSDN Git Service

* doc/invoke.texi (Objective-C and Objective-C++ Dialect Options
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9846816..c10eeae 100644 (file)
@@ -1,4 +1,546 @@
-2005-12-17  Jon Grimm  <jgrimm2@us.ibm.com>
+2005-12-29  Mike Stump  <mrs@apple.com>
+
+       * doc/invoke.texi (Objective-C and Objective-C++ Dialect Options
+       -fobjc-exceptions): Don't imply this doesn't work with the GNU
+       runtime.
+
+2005-12-29  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * varasm.c (get_section): Use gcc_assert.
+
+2005-12-29  Paul Brook  <paul@codesourcery.com>
+
+       * config/m68k/m68k.h (RETURN_ADDR_RTX): Define.
+       * config/m68k/m68k.c (m68k_initial_elimination_offset): Remove FIXME.
+       Include offset due to FIRST_PARM_OFFSET.
+
+2005-12-29  Paul Brook  <paul@codesourcery.com>
+
+       * config/m68k/lb1sf68.asm (__cmpdf2): Fix typo in immediate mask.
+       Create wrapper and rename body...
+       (__cmpdf2_internal): ... to this.  Return correct value for unordered
+       result.
+       (__cmpsf2): Create wrapper and rename body...
+       (__cmpsf2_internal): ... to this.  Return corerct value for unordered
+       result.
+       (__eqdf2, __nedf2, __gtdf2, __gedf2, __ltdf2, __ledf2): Use
+       __cmpdf2_internal.
+       (__eqsf2, __nesf2, __gtsf2, __gesf2, __ltsf2, __lesf2): Use
+       __cmpsf2_internal.
+
+2005-12-29  Paul Brook  <paul@codesourcery.com>
+
+       * config/m68k/fpgnulib.c (__extendsfdf2): Handle negative zero.
+       (__truncdfsf2): Ditto.
+       (__extenddfxf2): Ditto.
+       (__truncxfdf2): Ditto.
+       * config/m68k/lb1sf68.asm (__addsf3): Return -0.0 for -0.0 + -0.0.
+       (__adddf3): Ditto.
+
+2005-12-29  Daniel Jacobowitz  <dan@codesourcery.com>
+       Paul Brook  <paul@codesourcery.com>
+
+       * config/m68k/m68k.c (m68k_output_pic_call): Don't use bsr.l for
+       !TARGET_68020.
+       * config/m68k/t-m68kelf (EXTRA_PARTS): Remove.
+       (EXTRA_MULTILIB_PARTS): Set.
+       * config/m68k/t-uclinux (EXTRA_PARTS): Remove.
+       (EXTRA_MULTILIB_PARTS): Set.
+
+2005-12-29  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/25572
+       * config/rs6000/rs6000.c (create_TOC_reference): Set regs_ever_live.
+
+2005-12-28  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config.gcc (mt-*-*): Add --with-arch support.
+       (--with): Print accepted options on error.
+       * config/mt/mt.h (OPTION_DEFAULT_SPECS): Define.
+
+       * config/mt/mt.c (DEF_VEC_P(basic_block),
+       DEF_VEC_ALLOC_P(basic_bloc,heap)): Remove from here.
+
+2005-12-28  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/25394
+       * fold-const.c (fold_checksum_tree): Guard 
+       portions of checksumming with correct structure checks.
+
+2005-12-27  Kazu Hirata  <kazu@codesourcery.com>
+
+       * global.c, tree-ssa-pre.c: Move DEF_VEC_P(basic_block) and
+       DEF_VEC_ALLOC_P(basic_block,{gc,heap}) to ...
+       * basic-block.h: ... here.
+
+2005-12-27  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (int_const_binop): Return NULL_TREE when an expression
+       can't be evaluated at compile-time (instead of calling abort).
+       Return NULL_TREE for division (and modulus) by zero.
+       (const_binop):  Return NULL_TREE for floating point operators that
+       aren't handled by real_arithmetic.
+       (fold_binary):  Eliminate "wins" variable, and "binary" label, by
+       folding operators with constant operands early.  Assert that
+       operands are non-NULL.
+
+2005-12-27  Kazu Hirata  <kazu@codesourcery.com>
+
+       * tree-vrp.c (extract_range_from_binary_expr): Use
+       build_int_cst instead of fold_convert.
+
+2005-12-26  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/23171, c++/23172, c++/25417.
+       * c-decl.c (compound_literal_number): Remove.
+       (build_compound_literal): Use set_compound_literal_name.
+       * c-common.c (compound_literal_number): New variable.
+       (set_compound_literal_name): New function.
+       * c-common.h (set_compound_literal_name): Declare.
+       
+2005-12-26  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR tree-optimization/25125
+       * convert.c (convert_to_integer): Don't narrow the type of a
+       PLUX_EXPR or MINUS_EXPR if !flag_wrapv and the unwidened type
+       is signed.
+
+2005-12-26  Graham Stott  <graham.stott@btinternet.com>
+
+       PR middle-end/25568
+       * combine.c (simplify_shift_const_1 <case PLUS>):Fix enable-checking
+       rtl bootstrap failure.
+
+2005-12-25  Kazu Hirata  <kazu@codesourcery.com>
+
+       * final.c (compute_alignments): Make it static.
+       * gcse.c (gcse_main, bypass_jumps): Likewise.
+       * web.c (web_main): Likewise.
+       * output.h: Remove the prototype for compute_alignments.
+       * rtl.h: Remove the prototypes for web_main, gcse_main, and
+       bypass_jumps.
+
+2005-12-24  Roger Sayle  <roger@eyesopen.com>
+
+       * expr.c (force_operand): Use expand_fix and expand_float to
+       implement integer <-> FP conversions instead of convert_to_mode.
+
+2005-12-24  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/23171
+       * varasm.c (initializer_constant_valid_p): An ADDR_EXPR of a
+       CONSTRUCTOR is invalid.
+
+2005-12-23  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-pass.h (pass_eliminate_useless_stores): Remove.
+       * tree-ssa-pre.c (is_copy_stmt): Ditto.
+       (follow_copies_till_vuse): Ditto.
+       (do_eustore): Ditto.
+       (gate_eustores): Ditto.
+       (pass_eliminate_useless_stores): Ditto.
+       * passes.c (init_optimization_passes): Ditto.
+
+2005-12-23  Paolo Bonzini  <bonzini@gnu.org>
+
+        * combine.c (simplify_shift_const): Fix typo.  Use, whenever
+       applicable, simplify_const_binary_operation.
+
+        (simplify_shift_const): Leave only the fallback
+        case when no simplification is possible.  Extract to...
+        (simplify_shift_const_1): ... here.  Always create a new
+        RTX instead of substituting.  Remove the signed_count variable.
+        Return NULL_RTX if no substitution is possible.
+
+        (simplify_and_const_int): Leave only the fallback
+        case when no simplification is possible.  Extract to...
+        (simplify_and_const_int_1): ... here.  Always create a new
+        RTX instead of substituting.  Return NULL_RTX if no substitution
+        is possible.
+
+        (force_to_mode, simplify_comparison): Don't pass a non-NULL first
+        parameter to simplify_and_const_int and simplify_shift_const,
+        unless it is equal to the expected non-simplified result.
+
+2005-12-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/25005
+       * regrename.c (replace_oldest_value_reg): Use validate_change with
+       IN_GROUP set to 1 instead of doing direct modifications.
+       (copyprop_hardreg_forward_1): Likewise.  If any replace_oldest_*
+       replacements have been performed on an instruction, use
+       apply_change_group ().
+
+2005-12-23  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/arit.c (do_31div): Clarify what "31" refers to.
+       [L_divsi3] (__Udiv): Don't use as inline function.
+       [L_modsi3] (__Umod): Ditto.
+       (__Div): Rearrange to call do_31div directly instead of __Udiv.
+       (__Mod): Similarly regarding __Umod.
+
+       PR target/24342
+       * config/cris/cris.c (cris_split_movdx): Add REG_INC notes for
+       emitted insns with post-increments.
+       (cris_expand_epilogue): Ditto.
+
+2005-12-22  Jakub Jelinek  <jakub@redhat.com>
+           Richard Henderson  <rth@redhat.com>
+
+       Merge from gomp-branch.
+       * builtins.def: Move all DEF_SYNC_BUILTIN to ...
+       * sync-builtins.def: ... new file.
+       (BUILT_IN_FETCH_AND_ADD_16,
+       BUILT_IN_FETCH_AND_SUB_16, BUILT_IN_FETCH_AND_OR_16,
+       BUILT_IN_FETCH_AND_AND_16, BUILT_IN_FETCH_AND_XOR_16,
+       BUILT_IN_FETCH_AND_NAND_16, BUILT_IN_ADD_AND_FETCH_16,
+       BUILT_IN_SUB_AND_FETCH_16, BUILT_IN_OR_AND_FETCH_16,
+       BUILT_IN_AND_AND_FETCH_16, BUILT_IN_XOR_AND_FETCH_16,
+       BUILT_IN_NAND_AND_FETCH_16, BUILT_IN_BOOL_COMPARE_AND_SWAP_16,
+       BUILT_IN_VAL_COMPARE_AND_SWAP_16, BUILT_IN_LOCK_TEST_AND_SET_16,
+       BUILT_IN_LOCK_RELEASE_16): New builtins.
+       * builtin-types.def (BT_I16, BT_FN_I16_VPTR_I16,
+       BT_FN_BOOL_VPTR_I16_I16, BT_FN_I16_VPTR_I16_I16): Add.
+       * builtins.c (expand_builtin): Handle sync BUILT_IN_*_16 builtins.
+       * c-common.c (enum c_builtin_type): Move to top-level from
+       c_common_nodes_and_builtins enum builtin_type.
+       (builtin_types): Move from c_common_nodes_and_builtins.
+       (def_fn_type): New.
+       (c_common_nodes_and_builtins): Use it.
+       (def_builtin_1): Check for error_mark_node.
+       (sync_resolve_size): Handle also 128 bit sync builtins.
+       * Makefile.in (BUILTINS_DEF): New.  Use it instead of builtins.def.
+
+       * config/i386/i386.h (x86_cmpxchg8b, x86_cmpxchg16b): New decls.
+       (TARGET_CMPXCHG8B, TARGET_CMPXCHG16B): Define.
+       * config/i386/i386.c (x86_cmpxchg8b, x86_cmpxchg16b): New variables.
+       * config/i386/sync.md (CASMODE, DCASMODE): New mode macros.
+       (doublemodesuffix, DCASHMODE): New mode attrs.
+       (sync_compare_and_swap<mode>): Change into expand, use CASMODE
+       instead of IMODE, if mode is wider than a word, expand into
+       sync_double_compare_and_swap*.
+       (*sync_compare_and_swap<mode>): New insn.
+       (sync_double_compare_and_swap<mode>): Likewise.
+       (*sync_double_compare_and_swapdi_pic): Likewise.
+       (sync_compare_and_swap_cc<mode>): Use CASMODE instead of IMODE, if
+       mode is wider than a word, expand into
+       sync_double_compare_and_swap_cc*.
+       (sync_double_compare_and_swap_cc<mode>): New insn.
+       (*sync_double_compare_and_swap_ccdi_pic): Likewise.
+
+2005-12-22  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/mmintrin.h (_mm_add_si64): Only define for SSE2.
+       (_mm_sub_si64): Likewise.
+       * config/i386/xmmintrin.h (_mm_shuffle_pi16, _m_pshufw): Likewise.
+
+2005-12-23  Alan Modra  <amodra@bigpond.net.au>
+
+       PR rtl-optimization/25432
+       * reload1.c (eliminate_regs_in_insn): Update insn code on
+       successfully re-recognizing modified insn.
+
+2005-12-22  Richard Guenther  <rguenther@suse.de>
+
+       * tree.c (tree_fold_gcd): Use build_int_cst where appropriate.
+       * tree-ssa-loop-ivcanon.c (create_canonical_iv): Likewise.
+       * varasm.c (array_size_for_constructor): Likewise.
+       * fold-const.c (size_diffop, invert_truthvalue,
+       optimize_bit_field_compare, make_range, build_range_check,
+       fold_cond_expr_with_comparison, fold_truthop,
+       fold_single_bit_test_into_sign_test, fold_binary): Likewise.
+
+2005-12-22  Dale Johannesen  <dalej@apple.com>
+
+       * config/i386/sse.md (sse_movhlps):  Reverse operands for
+       2nd and 3rd alternatives.
+
+2005-12-22  Andrew Pinski <pinskia@physics.uc.edu>
+
+       PR tree-opt/25513
+       * tree-dfa.c (make_rename_temp): Set DECL_COMPLEX_GIMPLE_REG_P complex
+       variables.
+
+2005-12-22  Zdenek Dvorak <dvorakz@suse.cz>
+           Steven Bosscher <stevenb@suse.de>
+
+       * df.c (df_bitmaps_free): Only work for bbs for that structures are
+       allocated.
+       (df_bb_modify): Realloc tables to the new index.
+       (df_find_use): New function.
+       (df_find_def, df_reg_used): Handle subregs.
+       * df.h (df_find_use): Declare.
+
+       * loop-invariant.c: Include hashtab.h.
+       (struct invariant): Remove processed field, add eqto and reg fields.
+       (struct invariant_expr_entry): New.
+       (invariant_for_use, hash_invariant_expr_1, invariant_expr_equal_p,
+       hash_invariant_expr, eq_invariant_expr, find_or_insert_inv,
+       find_identical_invariants, merge_identical_invariants): New functions.
+       (create_new_invariant): Return the new invariant.  Initialize new
+       fields.
+       (find_invariants): Call merge_identical_invariants.
+       (get_inv_cost, best_gain_for_invariant, set_move_mark,
+       move_invariant_reg): Handle equivalent invariants.
+       * Makefile.in (loop-invariant.o): Add HASHTAB_H dependency.
+
+2005-12-22  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c++/23333
+       * c-lex.c (c_lex_with_flags): Add PURE_ZERO to cpp_flags if
+       number is a single digit '0'.
+
+2005-12-22  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR tree-optimization/23518
+       * fold-const.c (make_range): Don't move a constant to the
+       other side of the comparison if the type is signed and -fwrapv
+       is given.
+
+2005-12-22  Kazu Hirata  <kazu@codesourcery.com>
+
+       * tree-vrp.c (extract_range_from_binary_expr): Clean up uses
+       of vr0.type.
+
+2005-12-21  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR middle-end/24998
+       * config/arm/t-arm-elf (LIB1ASMFUNCS): Add _floatundidf and
+       _floatundisf.
+
+2005-12-21  Andrew Haley  <aph@redhat.com>
+
+       PR middle-end/25121
+       * recog.c (peephole2_optimize): Don't peephole any
+       RTX_FRAME_RELATED_P insns.
+
+2005-12-21  Kazu Hirata  <kazu@codesourcery.com>
+
+       * tree-data-ref.c (estimate_niter_from_size_of_data): Replace
+       fold_build2 with fold_binary.
+       * tree-ssa-ccp.c (visit_assignment, maybe_fold_stmt_addition):
+       Replace fold_build1 with fold_unary.
+       * tree-ssa-reassoc.c (optimize_ops_list): Replace fold_build2
+       with fold_binary.
+
+2005-12-21  Steven Bosscher  <stevenb@suse.de>
+
+       PR rtl-optimization/25196
+       * postreload-gcse.c (record_last_set_info): Notice stack pointer
+       changes in push insns without REG_INC notes.
+
+2005-12-21  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR tree-optimization/25382.
+       * tree-vrp.c (extract_range_from_binary_expr): Extract a range
+       from BIT_AND_EXPR.
+
+2005-12-21  Janis Johnson  <janis187@us.ibm.com>
+           Ben Elliston  <bje@au.ibm.com>
+
+       * configure.ac: Enable C extension for decimal float if invoked
+       with --enable-decimal-float.
+       * doc/install.texi (Configuration): Document it.
+       * configure, config.in: Regenerate.
+
+2005-12-20  Mike Stump  <mrs@apple.com>
+
+       * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Handle the
+       ambiguity between -seg_addr_table and -seg_addr_table_filename.
+       (WORD_SWITCH_TAKES_ARG): Likewise.
+       (LINK_SPEC): Likewise.
+
+2005-12-20  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * cfganal.c (flow_reverse_top_sort_order_compute):
+       Renamed to post_order_compute and additional parameter added which
+       allows the inclusion of entry and exit blocks into list.
+       (mark_dfs_back_edges): Fixed comment.
+       (flow_depth_first_order_compute): Renamed to
+       pre_and_rev_post_order_compute additional parameter added which
+       allows the inclusion of entry and exit blocks into list.
+       * global.c (set_up_bb_rts_numbers): Call to
+       flow_reverse_top_sort_order_compute renamed to
+       post_order_compute.
+       * var-tracking.c (vt_stack_adjustments): Fixed comment.
+       (vt_find_locations): Call to
+       flow_depth_first_order_compute renamed to
+       pre_and_rev_post_order_compute.
+       * cfgloop.c (flow_find_loops): Ditto.
+       * tree-ssa-reassoc.c (init_reassoc): Ditto.
+       * df.c (df_analyze_1, df_analyze_subcfg): Calls to
+       flow_reverse_top_sort_order_compute renamed to post_order_compute
+       and calls to flow_reverse_top_sort_order_compute renamed to
+       post_order_compute.
+       * basic_block.h: Ditto.
+
+
+2005-12-20  Roger Sayle  <roger@eyesopen.com>
+           Paolo Bonzini  <bonzini@gnu.org>
+
+       PR rtl-optimization/25115
+       * gcse.c (pre_insert_copy_insn): Fall back to the sole
+       SET in the insn if there is no SET for an
+       expression that is equivalent to EXPR.
+
+2005-12-20  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/24306
+       * builtins.c (std_gimplify_va_arg_expr): Do not align
+       va frame for zero sized types.
+       * config/i386/i386.c (ix86_gimplify_va_arg): Likewise.
+
+2005-12-20  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR tree-optimization/25501
+       * tree-cfgcleanup.c (merge_phi_nodes): Check that RESULT is
+       used in the PHI argument corresponding to the edge from BB to
+       DEST.
+
+2005-12-20  Richard Guenther  <rguenther@suse.de>
+
+       Revert
+       2005-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * tree-cfg.c (mark_used_vars): New function.
+       (dump_function_to_file): Dump only used VAR_DECLs.
+
+2005-12-19  Roger Sayle  <roger@eyesopen.com>
+
+       * combine.c (try_combine): Improve splitting of binary operators
+       by taking advantage of reassociative transformations.
+
+2005-12-19  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-dom.c (thread_across_edge): Do not use local_fold.
+       Strip away all type conversions after simplifying the
+       condition.
+
+       * tree-cfgcleanup.c (merge_phi_nodes): Allow merging in some
+       cases the forwarder block dominates the destination.
+
+2005-12-19  DJ Delorie  <dj@redhat.com>
+
+       * reload1.c (spill_failure): Dump reload data to dump file.
+       (find_reload_regs): Likewise.
+
+2005-12-19  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/24793
+       * tree-ssa-loop-ivopts.c (get_ref_tag): Remember the
+       original reference if there are subvars.
+       * tree-ssa-operands.c (get_tmr_operands): Handle subvars.
+
+2005-12-19  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * df.c (df_analyze_1, df_analyze_subcfg, iterative_dataflow):
+       Corrected basic block number calculations for changes in entry and
+       exit numbering.
+       
+2005-12-19  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-flow.h (struct var_ann_d): Change type of
+       may_aliases field to VEC(tree, gc) *.
+       (may_aliases): Declaration changed.
+       * tree-ssa-alias.c (group_aliases, add_may_alias,
+       replace_may_alias, dump_may_aliases_for,
+       is_aliased_with, add_type_alias, new_type_alias):
+       Work with VEC(tree, gc) * instead of varray.
+       * tree-flow-inline.h (may_aliases): Ditto.
+       * tree-ssa.c (verify_flow_insensitive_alias_info,
+       verify_name_tags): Ditto.
+       * tree-ssa-operands.c (add_stmt_operand): Ditto.
+
+2005-12-19  J"orn Rennecke <joern.rennecke@st.com>
+
+       * cfgcleanup.c: Temporarily revert patches for PR 20070 till Bernd
+       comes back.
+
+2005-12-19  J"orn Rennecke <joern.rennecke@st.com>
+
+       * struct-equiv.c (struct_equiv_improve_checkpoint): Fix sets_cc0_p
+       check.
+
+2005-12-19  Ben Elliston  <bje@au.ibm.com>
+
+       * doc/install.texi (Configuration): Typo in Fortran subheading.
+
+2005-12-19  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/mt/mt.md (decrement_and_branch_until_zero): Add another
+       scratch.  Correct its reload split. Adjust its peephole.
+       (doloop_end): Add additional scratch.
+       (nop): Use 'nop'.
+       * config/mt/mt.c (MT_INT_ARG_FIRST): Remove.
+       (mt_asm_output_opcode, mt_print_operand): Use 'nop'.
+       (mt_function_arg_slotno): Use FIRST_ARG_REGNUM.
+       (mt_builtin_saveregs): Replace with ...
+       (mt_setup_incoming_varargs): ... here.  Save just the varadic
+       args.
+       (mt_va_start): Remove.
+       (mt_reorg_hazard): Ignore USE insns.  Don't call set_noop_p.
+       (mt_machine_reorg): Split all insns here.
+       (TARGET_SETUP_INCOMING_VARARGS): Override.
+       * config/mt/mt.h (TARGET_CPU_CPP_BUILTINS): Define __mt__ only.
+       Set to CPU type.
+       (EXPAND_BUILTIN_VA_START): Remove.
+
+2005-12-17  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * flow.c (update_life_info, count_or_remove_death_notes): Fixed
+       latent bug that could happen if update_life_info was called with a
+       blocks parameter and the call to cleanup_cfg actually deleted one
+       of those blocks. 
+
+2005-12-19  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-ssa-structalias.c (update_alias_info): Remove handling
+       of may_be_aliased (SSA_NAME_VAR (op)) case.
+
+2005-12-19  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-flow.h (struct stmt_ann_d): Remove
+       makes_aliased_loads and makes_aliased_stores fields.
+       * tree-ssa-ccp.c (likely_value): Do not use makes_aliased_stores
+       and makes_aliased_loads fields.
+       * tree-ssa-dom.c (eliminate_redundant_computations): Do not
+       use makes_aliased_stores.
+       * tree-ssa-operands.c (clobbered_aliased_loads,
+       clobbered_aliased_stores, ro_call_aliased_loads): Removed.
+       (build_ssa_operands, add_stmt_operand, add_call_clobber_ops,
+       add_call_read_ops): Do not set makes_aliased_stores and
+       makes_aliased_loads fields.
+       * tree-ssa.c (verify_ssa): Do not verify makes_aliased_stores
+       field.
+
+2005-12-18  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/darwin.h: Don't include darwin-sections.def to declare
+       global variables; instead create darwin_section_enum.
+       (darwin_section_enum): New.
+       (darwin_sections): New.
+       * config/darwin.c: Don't include darwin-sections.def to define
+       global variables.
+       (darwin_sections): New.
+       (output_objc_section_asm_op): Rewrite to take advantage of
+       darwin_sections.
+       (darwin_init_sections): Rewrite to use darwin_sections.
+       (machopic_output_indirection): Update for darwin_sections array.
+       (machopic_select_section): Likewise.
+       (machopic_select_rtx_section): Likewise.
+       (machopic_asm_out_constructor): Likewise.
+       (machopic_asm_out_destructor): Likewise.
+       (darwin_file_end): Likewise.
+       * config/rs6000/rs6000.c (machopic_output_stub): Likewise.
+       * config/i386/i386.c (machopic_output_stub): Likewise.
+
+2005-12-18  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/25481
+       * tree-ssa-structalias.c (handle_ptr_arith): Handle accesses we
+       don't have a varinfo for.
+
+2005-12-18  Jon Grimm  <jgrimm2@us.ibm.com>
            Janis Johnson  <janis187@us.ibm.com>
            Ben Elliston  <bje@au.ibm.com>
 
 
 2005-12-15  Paolo Bonzini  <bonzini@gnu.org>
 
-        * combine.c: Remove force_to_mode's fourth parameter.
-        (force_to_mode): Do not handle REG.
-        (canon_reg_for_combine): New.
-        (make_field_assignment): Use it where the removed argument was non-NULL.
+       * combine.c: Remove force_to_mode's fourth parameter.
+       (force_to_mode): Do not handle REG.
+       (canon_reg_for_combine): New.
+       (make_field_assignment): Use it where the removed argument was non-NULL.
 
 2005-12-15  Alan Modra  <amodra@bigpond.net.au>
 
 
 2005-12-13  Nathan Sidwell  <nathan@codesourcery.com>
 
-       * sim/common/sim-signal.c (sim_signal_to_target): Add missing ':'.
-       * sim/common/sim-signal.h (sim_signal_to_target): Return an int.
-
        * config/mt/t-mt (crti.o, crtn.o): Add multilib options.
        (EXTRA_MULTILIB_PARTS): Define.
 
 
        Back out this change:
        2005-03-07  Kazu Hirata  <kazu@cs.umass.edu>
-          * recog.c (verify_changes): Make it static.
-          * recog.h: Remove the corresponding prototype.
+         * recog.c (verify_changes): Make it static.
+         * recog.h: Remove the corresponding prototype.
 
 2005-12-13  J"orn Rennecke <joern.rennecke@st.com>
 
        * config/arm/bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=gnu for
        apcs/atpcs.
 
-2005-12-11 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+2005-12-11 Rafael vila de Espndola <rafael.espindola@gmail.com>
 
        * tree-flow.h: Allow compilation with a C++ compiler.
        (struct edge_prediction): Prefix all field names  with "ep_".
 
 2005-12-09  Aldy Hernandez  <aldyh@redhat.com>
 
-        * config/ms1/t-ms1 (MULTILIB_OPTIONS): Define.
-        (MULTILIB_DIRNAMES): Define.
+       * config/ms1/t-ms1 (MULTILIB_OPTIONS): Define.
+       (MULTILIB_DIRNAMES): Define.
 
 2005-12-09  Ulrich Weigand  <uweigand@de.ibm.com>
 
        call_used_regs can't be used to save reg in another reg.
 
 2005-12-08  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
-            Christophe Jaillet  <christophe.jaillet@wanadoo.fr>
+           Christophe Jaillet  <christophe.jaillet@wanadoo.fr>
 
        * ipa-type-escape.c (analyze_variable): Use gcc_assert instead of
        abort.
        * tree.h (DECL_EXTERNAL): Clarify documentation.
 
 2005-12-08  Andreas Krebbel  <krebbel1@de.ibm.com>
-            Jakub Jelinek  <jakub@redhat.com>
+           Jakub Jelinek  <jakub@redhat.com>
 
        PR target/25268
        * config/s390/s390.c (s390_decompose_shift_count): Remove BITS
        * coretypes.h (section): Provide dummy definition for target files.
        * config/darwin.h: Revert previous change.
 
-2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+2005-12-07  Rafael vila de Espndola  <rafael.espindola@gmail.com>
 
        * doc/sourcebuild.texi (all.build, install-normal): Remove.
        * configure.ac: Remove all.build and install-normal from target_list
        * configure: Regenerate.
        * Makefile.in (install): Don't depend on install-normal.
 
-2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+2005-12-07  Rafael vila de Espndola  <rafael.espindola@gmail.com>
 
        * Makefile.in: Document the use of stamps.
 
-2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+2005-12-07  Rafael vila de Espndola  <rafael.espindola@gmail.com>
 
        * doc/gty.texi: Remove instructions for adding a dependency on s-gtype.
        * Makefile.in: Add code to compute some dependencies on s-gtype
 2005-12-06  Jan Beulich  <jbeulich@novell.com>
 
        * config/i386/i386.c (builtin_description): Use MASK_SSE2 for
-       __builtin_ia32_paddq and __builtin_ia32_subq.
+       __builtin_ia32_paddq and __builtin_ia32_psubq.
        (ix86_init_mmx_sse_builtins): Use MASK_SSE|MASK_3DNOW_A for
        __builtin_ia32_pshufw.
        * config/i386/i386.md (mmx_adddi3, mmx_subdi3): Depend on TARGET_SSE2.
 
 2005-12-05  Paolo Bonzini  <bonzini@gnu.org>
 
-        * config/rs6000/predicates.md (logical_const_operand): Split
-        out of logical_operand.
-        (logical_operand): Use it.
-        * config/rs6000/rs6000.md (cmp -> xor peephole2): Use
-        logical_const_operand.
+       * config/rs6000/predicates.md (logical_const_operand): Split
+       out of logical_operand.
+       (logical_operand): Use it.
+       * config/rs6000/rs6000.md (cmp -> xor peephole2): Use
+       logical_const_operand.
 
 2005-12-05  Jan Beulich  <jbeulich@novell.com>
 
 
 2005-12-01  Ben Elliston  <bje@au.ibm.com>
 
-        * mklibgcc.in: Parameterise the script to build soft float
+       * mklibgcc.in: Parameterise the script to build soft float
        functions by iterating over each type, rather than cloning the
        code for each type.
 
        (tree_expr_nonnegative_p): Likewise.
 
 2005-11-30  Dale Johannesen  <dalej@apple.com>
-            Andrew Pinski  <pinskia@physics.uc.edu>
+           Andrew Pinski  <pinskia@physics.uc.edu>
 
        * combine.c (find_split_point):  Sign extend bitmask
        when changing bitfield assignment to IOR of AND.
        * gcc.c (main): Compare language[0] with '*' when iterating over
        the infiles.
 
-2005-07-13  Adrian Strae½tling  <straetling@de.ibm.com>
+2005-07-13  Adrian Straetling  <straetling@de.ibm.com>
 
        * config/s390/s390.c: (s390_cc_modes_compatible): Move before
        "s390_emit_compare".  Add handling of CCZ1mode.
        Use CCZ1mode instead of CCZmode.
        * config/s390/s390-modes.def: Add CCZ1mode.  Comment new mode.
 
-2005-07-13  Adrian Strae½tling  <straetling@de.ibm.com>
+2005-07-13  Adrian Straetling  <straetling@de.ibm.com>
 
        * config/s390/s390.md: ("cmpstrsi", "*cmpstr<mode>"): New
        pattern.