OSDN Git Service

* ipa-type-escape.c (look_for_casts): Revamp using handled_component_p.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index e79b7de..4045c4b 100644 (file)
@@ -1,3 +1,198 @@
+2007-01-17  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-type-escape.c (look_for_casts): Revamp using handled_component_p.
+
+2007-01-17  Eric Christopher  <echristo@apple.com>
+
+       * config.gcc: Support core2 processor.
+
+2007-01-16  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssanames.c (release_dead_ssa_names): Instead of ggc_freeing
+       the names, just unlink the chain so we don't crash on dangling pointers
+       to dead SSA names.
+
+2007-01-16  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (cgraph_decide_inlining_incrementally): Kill.
+       * tree-pass.h: Reorder to make IPA passes appear toegher.
+       (pass_early_inline, pass_inline_parameters, pass_apply_inline): Declare.
+       * cgraphunit.c (cgraph_finalize_function): Do not compute inling
+       parameters, do not call early inliner.
+       * ipa-inline.c: Update comments.  Include tree-flow.h
+       (cgraph_decide_inlining): Do not compute inlining parameters.
+       (cgraph_decide_inlining_incrementally): Return TODOs; assume to
+       be called with function context set up.
+       (pass_ipa_inline): Remove unreachable functions before pass.
+       (cgraph_early_inlining): Simplify assuming to be called from the
+       PM as local pass.
+       (pass_early_inline): New pass.
+       (cgraph_gate_ipa_early_inlining): New gate.
+       (pass_ipa_early_inline): Turn into simple wrapper.
+       (compute_inline_parameters): New function.
+       (gate_inline_passes): New gate.
+       (pass_inline_parameters): New pass.
+       (apply_inline): Move here from tree-optimize.c
+       (pass_apply_inline): New pass.
+       * ipa.c (cgraph_remove_unreachable_nodes): Verify cgraph after
+       transforming.
+       * tree-inline.c (optimize_inline_calls): Return TODOs rather than
+       doing them by hand.
+       (tree_function_versioning): Do not allocate dummy struct function.
+       * tree-inline.h (optimize_inline_calls): Update prototype.
+       * tree-optimize.c (execute_fixup_cfg): Export.
+       (pass_fixup_cfg): Remove
+       (tree_rest_of_compilation): Do not apply inlines.
+       * tree-flow.h (execute_fixup_cfg): Declare.
+       * Makefile.in (gt-passes.c): New.
+       * passes.c: Include gt-passes.h
+       (init_optimization_passes): New passes.
+       (nnodes, order): New static vars.
+       (do_per_function_toporder): New function.
+       (execute_one_pass): Dump current pass here.
+       (execute_ipa_pass_list): Don't dump current pass here.
+
+2007-01-16  Janis Johnson  <janis187@us.ibm.com>
+
+       * config/dfp-bit.c (dfp_compare_op): Return separate value for NaN.
+       (DFP_NE, DFP_LE, DFP_GE): Return false for NaN.
+
+2007-01-16  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/darwin-ldouble.c: Build file for SOFT_FLOAT.
+       (strong_alias): Define.
+       (__gcc_qmul): Provide non-FMA for soft-float.
+       (__gcc_qdiv): Same.
+       (__gcc_qneg): New.
+       (__gcc_qeq): New.
+       (__gcc_qle): New.
+       (__gcc_qge): New.
+       (__gcc_qunord): New.
+       (__gcc_stoq): New.
+       (__gcc_dtoq): New.
+       (__gcc_qtos): New.
+       (__gcc_qtod): New.
+       (__gcc_qtoi): New.
+       (__gcc_qtou): New.
+       (__gcc_itoq): New.
+       (__gcc_utoq): New.
+       (fmsub): New.
+       * config/rs6000/rs6000.c (rs6000_init_libfuncs): Initialize
+       soft-float functions.
+       * config/rs6000/libgcc-ppc-glibc.ver: Version soft-float symbols.
+       * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Do not warn
+       about long double soft float.
+
+2007-01-16  Dorit Nuzman  <dorit@il.ibm.com>
+            Tehila Meyzels  <tehila@il.ibm.com>
+
+       * tree-vectorizer.h (is_pattern_stmt_p): New.
+       * tree-vect-analyze.c (vect_determine_vectorization_factor): Fix
+       formatting (tabs instead of spaces). Cleanup and clarify setting
+       of STMT_VINFO_VECTYPE. Call is_pattern_stmt_p.
+       * tree-vect-transform.c (vect_get_vec_def_for_operand): Fix typo.
+       (vectorizable_type_demotion): Check that types are integral.
+       (vectorizable_type_promotion): Likewise.
+       (vectorizable_store): Fix typo.  Eliminate new-line at end of
+       comments.
+
+2007-01-16  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssanames.c (release_dead_ssa_names): Remove invalidated
+       cgraph edges too.
+
+2007-01-15  Eric Christopher  <echristo@apple.com>
+
+       * ifcvt.c: Include vec.h, vecprim.h.
+       (check_cond_move_block): New argument regs.
+       Reorganize. Add registers used to regs.
+       (cond_move_process_if_block): Use regs set above as
+       loop bounds.
+
+2007-01-15  Eric Christopher  <echristo@apple.com>
+
+       * config/darwin.h: Update copyright.
+       (TARGET_OPTION_TRANSLATE_TABLE): Add umbrella.
+       (LINK_COMMAND_SPEC): Add -u.
+       (LINK_SPEC): Fix umbrella for above.
+
+2007-01-15  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/soft-fp/op-common.h, config/soft-fp/op-4.h: Update from
+       glibc CVS.
+
+2007-01-15  Tom Tromey  <tromey@redhat.com>
+
+       * doc/sourcebuild.texi (libgcj Tests): Don't mention jacks.
+       * doc/install.texi (Testing): Don't mention jacks.
+       (Configuration): Document --enable-java-maintainer-mode.  Move
+       --with-java-home to libgcj-specific section.  Document
+       --with-ecj-jar.
+       (Prerequisites): Mention --enable-java-maintainer-mode, ecj1.
+
+2007-01-15  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-dce.c (DCE_TODOs): New.
+       (propagate_necessity): Return if something changed.
+       (eliminate_unnecessary_stmts): Likewise.
+       (perform_tree_ssa_dce): Return TODO flags when needed.
+       (pass_dce, pass_dce_loop, pass_cd_dce): Remove TODO flags.
+
+2007-01-15  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (fyl2xxf3_i387): Rename from fyl2x_xf3.
+       (fyl2x_extend<mode>xf3_i387): New insn pattern.
+       (log<mode>2): Rename from logsf2 and logdf2 and macroize insn
+       insn patterns using X87MODEF12 mode macro.  Extend operand 1
+       to XFmode. Use SSE_FLOAT_MODE_P to disable patterns for SSE math.
+       (log10<mode>2): Ditto.
+       (log2<mode>2): Ditto.
+       (log1p<mode>2): Ditto.
+       (logb<mode>2): Ditto.
+       (fyl2xp1xf3_i387): Rename from fyl2xp1_xf3.
+       (fyl2xp1_extend<mode>xf3_i387): New insn pattern.
+       (*fxtractxf3_i387): Rename from *fxtractxf3.
+       (fxtract_extend<mode>xf3_i387): New insn pattern.
+       (ilogbsi2): Use match_dup 3, not match_operand:XF 3.
+
+       * config/i386/i386.c (ix86_emit_i387_log1p): Use gen_fyl2xp1xf3_i387()
+       and gen_fyl2xxf3_i387().
+
+2007-01-14  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * loop-unswitch.c (unswitch_loop): Do not call fix_loop_placement.
+       * cfgloopmanip.c (fix_loop_placement): Made static.  Use
+       get_loop_exit_edges.  Changed return type to bool.
+       * cfgloop.h (fix_loop_placement): Declaration removed.
+
+2007-01-14  Dorit Nuzman  <dorit@il.ibm.com>
+
+       * param.h (MIN_VECT_LOOP_BOUND): New.
+       * params.def (MIN_VECT_LOOP_BOUND): New.
+       * tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): Takes another
+       argument - minimum threshold for number of iterations.
+       * tree-vectorizer.h (slpeel_tree_peel_loop_to_edge): Add another
+       argument to declaration.
+       * tree-vect-analyze.c (vect_analyze_operations): Check value of
+       MIN_VECT_LOOP_BOUND.
+       * tree-vect-transform.c (vect_do_peeling_for_loop_bound): Call
+       slpeel_tree_peel_loop_to_edge with additional argument.
+       (vect_do_peeling_for_alignment): Likewise.
+       * doc/invoke.texi (min-vect-loop-bound): Document new param option.
+
+2007-01-14  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/30413
+       * config/i386/i386.c (print_operand) ['z']: Output 'b' for
+       operands of size 1.
+
+2007-01-14  Jan Hubicka  <jh@suse.cz>
+
+       * tree-dfa.c (remove_referenced_var): New function.
+       * tree-ssa-live.c (remove_unused_locals): Walk referenced vars and
+       prune referenced vars list too.
+       * tree-flow.h (remove_referenced_var): Declare.
+
 2007-01-14  Jan Hubicka  <jh@suse.cz>
 
        * tree-eh.c (add_stmt_to_eh_region_fn): Do not add call_exprs
 2007-01-12  Olga Golovanevsky  <olga@il.ibm.com>
 
        * builtins.def : Add BUILT_IN_FREE.
-       
+
 2007-01-12  Jan Hubicka  <jh@suse.cz>
 
        PR tree-optimization/30443
 2007-01-10  Razya Ladelsky  <razya@il.ibm.com>
 
        * function.c (get_last_funcdef_no): New function.
-       * function.h (get_last_funcdef_no): Declare. 
+       * function.h (get_last_funcdef_no): Declare.
        * tree-inline.c (initialize_cfun): Add initialization.
        (tree_function_versioning): Cleanup.
-       
+
 2007-01-10  Jan Hubicka  <jh@suse.cz>
 
        * tree-inline.c (setup_one_parameter): Do not propagate into abnormal
 
        * config/i386/i386.md (*sinxf2): Rename to *sinxf2_i387.
        (*cosxf2): Rename to cosxf2_i387.
-
        (*sindf2, *sinsf2): Extend operand 1 to XFmode.  Macroize patterns
        using X87MODEF12 mode macro. Rename patterns to
        *sin_extend<mode>xf2_i387.  Use SSE_FLOAT_MODE_P to disable patterns
        (*cosdf2, *cossf2): Ditto.
        (sincosdf3, sincossf3): Ditto.  Rewrite corresponding splitters
        to match extended input operands.
-
        (sincos<mode>3): New expander.
-
        (*sinextendsfdf2, *cosextendsfdf2, *sincosextendsfdf3): Remove
        insn patterns and corresponding splitters.
 
        (fold_sign_changed_comparison): Likewise.
        (fold_unary): Likewise.
        (fold_negate_const): Likewise.
-       (fold_abs_const): Likewise. 
+       (fold_abs_const): Likewise.
        (fold_not_const): Likewise.
        * c-common.c (shorten_compare): Use force_fit_type_double.
        * convert.c (convert_to_pointer): Likewise.
        * config/score/t-score-elf (MULTILIB_OPTIONS): Change.
        * config/score/predicates.md (const_uimm5, sr0_operand, const_simm12,
        const_simm15, const_pow2, const_npow2): Added.
-       * config/score/misc.md (insv, extv, extzv, movmemsi, 
+       * config/score/misc.md (insv, extv, extzv, movmemsi,
        move_lbu_a/b, mov_lhu_a/b etc): Added and fix some bug.
-       * config/score/score.c (score_address_cost, score_select_cc_mode): 
+       * config/score/score.c (score_address_cost, score_select_cc_mode):
        Added.
        Change CONST_OK_FOR_LETTER_P/EXTRA_CONSTRAINT define.
        Update score_rtx_costs for MACRO TARGET_RTX_COSTS.