OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 4419dd1..c2e5639 100644 (file)
@@ -1,3 +1,389 @@
+2006-02-26  Steven Bosscher  <stevenb.gcc@gmail.com>
+
+       * common.opt (-floop-optimize, -frerun-loop-opt): Remove.
+       * tree-pass.h (pass_loop_optimize): Remove.
+       * passes.c (pass_loop_optimize): Never run it.
+       * toplev.c (backend_init): Don't call init_loop.
+       * opts.c (flag_loop_optimize_set): Remove.
+       (decode_options): Never set flag_loop_optimize or flag_rerun_loop_opt.
+       (common_handle_option) <OPT_floop_optimize>: Remove.  Don't disable
+       the old RTL loop optimizer when profiling enabled.
+       * predict.c (tree_estimate_probability): Always strip builtin_expect.
+       * cfgcleanup.c (try_forward_edges): Don't avoid killing loop
+       pre-headers for the sake of the old RTL loop optimizer.
+       * Makefile.in: Remove all references to loop.o.
+
+       * doc/invoke.texi: Remove all references to -floop-optimize
+       and -frerun-loop-opt.
+
+2006-02-26  Zack Weinberg  <zackw@panix.com>
+
+       * doc/md.texi (Machine Constraints): Refer to all files with paths
+       relative to gcc directory (i.e. config/CPU/file).  Add missing
+       @table @code ... @end table to M32C subsection.
+
+2006-02-26  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & 1) ^ 1 as
+       (X & 1) == 0.
+       <BIT_AND_EXPR>: Fold (X ^ 1) & 1 and ~X & 1 as (X & 1) == 0.
+
+2006-02-26  Roger Sayle  <roger@eyesopen.com>
+           James A. Morrison  <phython@gcc.gnu.org>
+
+       PR middle-end/21137
+       * fold-const.c (fold_binary) <EQ_EXPR>:  Fold ((X>>C1)&C2) eq/ne 0,
+       when C2 is a power of two, as either (X&(C2<<C1)) eq/ne 0 if the
+       new constant C2<<C1, or as (X<0) or (X,false) depending upon the
+       signedness of the shift operation.
+
+2006-02-26  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/26359
+       * tree-ssa-alias.c (new_type_alias): Set fields for new tag.
+
+2006-02-25  Roger Sayle  <roger@eyesopen.com>
+
+       * simplify-rtx.c (simplify_relational_operation_1):  Simplify
+       (X^Y) == 0 as X == Y and (X^Y) != 0 as X != Y.  Simplify (X^Y) == Y
+       as X == 0, and some symmetry related transformations.
+       Simplify (X^C1) == C2 as X == (C1^C2).  Split long comment line.
+
+2006-02-25  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/23673
+       * fold-const.c (fold_binary) <EQ_EXPR>:  Fold (X^Y) == 0 as X == Y
+       and (X^Y) != 0 as X != Y.  Fold (X^Y) == Y as X == 0, and some
+       symmetry related transformations.  Fold (X^C1) == C2 as
+       X == (C1^C2).
+
+2006-02-25  Juergen Weigert  <jw@suse.de>
+       Richard Guenther  <rguenther@suse.de>
+
+       * scan-decls.c (scan_decls): Don't fetch new statement after CPP_EOF.
+
+2006-02-24  Adam Nemet  <anemet@caviumnetworks.com>
+
+       * combine.c (gen_lowpart_or_truncate): Call
+       simplify_gen_unary(TRUNCATE, ...) instead of gen_rtx_TRUNCATE.
+
+2006-02-24  Diego Novillo  <dnovillo@redhat.com>
+
+       * doc/invoke.texi: Move -fopenmp description to "Options for
+       Code Generation".
+       Remove reference to -lgomp.
+
+2006-02-24  David Edelsohn  <edelsohn@gnu.org>
+
+       * doc/install.texi: Require GNU tar version 1.14.
+
+2006-02-24  Geoffrey Keating  <geoffk@apple.com>
+
+       * doc/tm.texi (Run-time Target): Document C_COMMON_OVERRIDE_OPTIONS.
+       * doc/invoke.texi (C++ Dialect Options): Document
+       -fno-use-cxa-get-exception-ptr.
+       * configure.ac: Define DEFAULT_USE_CXA_ATEXIT to 2 not 1.
+       * configure: Regenerate.
+       * c.opt (fuse-cxa-get-exception-ptr): New.
+       * c-opts.c (c_common_handle_option): Handle
+       OPT_fuse_cxa_get_exception_ptr.
+       * c-common.c (flag_use_cxa_atexit): Update documentation.
+       (flag_use_cxa_get_exception_ptr): New.
+       * c-common.h (flag_use_cxa_get_exception_ptr): New.
+       * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Improve
+       documentation.
+       (C_COMMON_OVERRIDE_OPTIONS): New.
+
+2006-02-24  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/24952
+       * combine.c (try_combine): Explicitly check whether GET_CODE is
+       a SET or a CLOBBER, instead on checking that it isn't a USE.
+
+2006-02-24  Roger Sayle  <roger@eyesopen.com>
+
+       * fold-const.c (fold_comparison): New subroutine of fold_binary
+       containing transformations common to both the equality and
+       ordering relational operators, factored out of fold_binary.
+       (fold_binary): Separate out the equality operators (EQ_EXPR
+       and NE_EXPR) from the ordering operators (LT_EXPR, GT_EXPR,
+       LE_EXPR and GE_EXPR), calling fold_comparison to perform the
+       transformations common to both.
+       (fold_div_compare): Fix latent bugs in the previously unreachable
+       LT_EXPR and GE_EXPR cases.
+
+2006-02-24  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_init_builtins): Change
+       decl libname for clog to __clog on AIX.
+
+       * config/rs6000/xcoff.h (MAX_OFILE_ALIGNMENT): Define.
+
+2006-02-24  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/26453
+       * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
+       output traceback table for thunks.  Localise rs6000_stack_info call.
+
+2006-02-23  Roger Sayle  <roger@eyesopen.com>
+           Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * gthr-posix.h (__gthrw): Fix typo in comment.
+
+2006-02-23  Geoffrey Keating  <geoffk@apple.com>
+
+       * doc/cpp.texi (Character sets): Document that we do support
+       input files to be in any character set.
+
+2006-02-23  Jeff Law  <law@redhat.com>
+
+       * tree.h (PHI_ARG_NONZERO): Remove.
+       * tree-phinodes.c (add_phi_arg): No longer initialize PHI_ARG_NONZERO.
+       (remove_phi_arg_num): No longer copy PHI_ARG_NONZERO from the old
+       node to the new node.
+
+       PR tree-optimization/26425
+       * tree-vrp.c (vrp_visit_assignment): If the LHS's type has a NULL
+       min/max, then assume its varying.
+
+2006-02-23  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/26316
+       * rtlanal.c (enum may_trap_p_flags): New.
+       (may_trap_p_1): Take flags instead of unaligned_mems argument.  Ignore
+       MEM_NOTRAP_P if flags & MTP_AFTER_MOVE.
+       (may_trap_p, may_trap_or_fault_p): Pass flags to may_trap_p_1.
+       (may_trap_after_code_motion_p): New function.
+       * loop-invariant.c (find_identical_invariants): Fix dump formating.
+       (find_invariant_insn): Use may_trap_after_code_motion_p.
+       * rtl.h (may_trap_after_code_motion_p): Declare.
+
+2006-02-23  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * emit-rtl.c (immed_double_const): Cleanup.
+
+2006-02-23  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/26376
+       * tree-ssa-structalias.c (find_func_aliases):  Use get_id_for_tree,
+       remove assert.
+
+2006-02-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/26412
+       * gimplify.c (omp_add_variable): Guard variable size decl test with
+       DECL_SIZE (decl) check.
+
+2006-02-23  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/26439
+       * tree-ssa-structalias.c (find_func_aliases): Handle complex types
+       like aggregate types.
+
+2006-02-23  Jakub Jelinek  <jakub@redhat.com>
+
+       * configure.ac: Add --with{,out}-long-double-128 configure option.
+       (TARGET_DEFAULT_LONG_DOUBLE_128): New test.
+       * configure: Rebuilt.
+       * config.in: Rebuilt.
+       * doc/install.texi (Options specification): Document
+       --with-long-double-128.
+
+       * config/rs6000/linux.h [TARGET_DEFAULT_LONG_DOUBLE_128]
+       (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128.
+       * config/rs6000/linux64.h [TARGET_DEFAULT_LONG_DOUBLE_128]
+       (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128.
+
+2006-02-23  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/s390/s390.c (override_options): Handle
+       TARGET_DEFAULT_LONG_DOUBLE_128.
+
+       * config/alpha/alpha.c (override_options): Handle
+       TARGET_DEFAULT_LONG_DOUBLE_128.
+
+       * config/sparc/sparc.c (sparc_override_options): Handle
+       TARGET_DEFAULT_LONG_DOUBLE_128.
+
+2006-02-22  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * Makefile.in (stmp-fixinc): Use real-$(INSTALL_HEADERS_DIR).
+       (real-install-headers-tar, real-install-headers-cpio)
+       (real-install-headers-cp): New targets.
+
+2006-02-22  Richard Sandiford  <richard@codesourcery.com>
+
+       * tree.h (variable_section): Delete.
+       * varasm.c (variable_section): Delete.
+
+2006-02-22  Paolo Bonzini  <bonzini@gnu.org>
+
+       * install.texi: Add notes on install.texi2html.
+       (Building in parallel): Do not use footnotes.
+
+2006-02-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR libgomp/26234
+       * doc/install.texi (Configuration): Document --disable-libgomp.
+
+2006-02-21  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/i386/darwin.h (DWARF2_FRAME_REG_OUT): New.
+
+2006-02-21  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/i386/sse.md (vec_extractv2df_1_sse): New.
+       (vec_extractv2df_0_sse): New.
+
+2006-02-21  Alexandre Oliva  <aoliva@redhat.com>
+
+       * defaults.h (CFA_FRAME_BASE_OFFSET): Define.
+       * config/ia64/ia64.h (CFA_FRAME_BASE_OFFSET): Override.
+       * doc/tm.texi (CFA_FRAME_BASE_OFFSET): Document.
+       * dwarf2out.c (build_cfa_loc): New offset parameter.  Add it
+       to the result of the expression.
+       (def_cfa_1): Adjust.
+       (frame_pointer_cfa_offset): Rename to...
+       (frame_pointer_fb_offset): ... this.  Adjust all uses.
+       (convert_cfa_to_loc_list): Rename to...
+       (convert_cfa_to_fb_loc_list): ... this.  New offset parameter.
+       Pass it on to build_cfa_loc.
+       (compute_frame_pointer_to_cfa_displacement): Rename to...
+       (compute_frame_pointer_to_fb_displacement): ... this.  New
+       offset parameter.  Use it in computation.
+       (gen_subprogram_die): Compute cfa_fb_offset with the new
+       macro, and use it to compute the fb loc list and the
+       displacement.
+
+2006-02-21  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/predicates.md (cc_operand): Delete predicate.  All uses
+       replaced with register_operand.
+       * config/bfin/bfin.c (bfin_register_move_cost): Moving CC to any
+       non-DREG is expensive.
+       * config/bfin/bfin.h (FIXED_REGISTERS): CC isn't fixed.
+       * config/bfin/bfin.md (movbi): Fix constraints and template for moves
+       involving memory.
+
+2006-02-21  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * doc/install.texi2html: Use set -e.
+
+2006-02-21  Richard Sandiford  <richard@codesourcery.com>
+
+       * doc/tm.texi (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
+       (ASM_OUTPUT_SHARED_LOCAL): Delete.
+       * doc/invoke.texi (-fshared-data): Delete.
+       * common.opt (fshared-data): Delete.
+       * varasm.c (asm_emit_uninitialised): Remove flag_shared_data handling.
+       (assemble_static_space): Remove #if 0 code.
+       * system.h (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
+       (ASM_OUTPUT_SHARED_LOCAL): Poison.
+       * config/cris/cris.h: Remove FIXME.
+
+2006-02-21  Paolo Bonzini  <bonzini@gnu.org>
+
+       * doc/sourcebuild.texi (Front End Directory): No more double-colon
+       hooks.
+
+2006-02-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/26379
+       * combine.c (simplify_shift_const_1): Disable nested shifts
+       optimization for vector shifts.
+
+2006-02-20  Roger Sayle  <roger@eyesopen.com>
+
+       PR tree-optimization/26361
+       * tree-vrp.c (extract_range_from_unary_expr): Handle NEGATE_EXPR
+       of unsigned integer types.
+
+2006-02-20  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       * tree-chrec.c (eq_evolutions_p): New.
+       * tree-chrec.h (eq_evolutions_p): Declared.
+       * tree-data-ref.c: Fix formatting.
+       (datadep_stats, dependence_stats): New.
+       (gcd): Moved...
+       (print_direction_vector): New.
+       (dump_data_dependence_relation): Use print_direction_vector.
+       (object_analysis, create_data_ref): Handle COMPONENT_REF.
+       (compute_subscript_distance): Static.
+       (initialize_data_dependence_relation): Static.  Get the number
+       of loops surrounding the references from the callers, and initialize
+       DDR_SIZE_VECT to nb_loops.  Use both base_addr_differ_p and
+       base_object_differ_p analyzers.
+       (analyze_ziv_subscript, analyze_siv_subscript_cst_affine,
+       compute_overlap_steps_for_affine_1_2,
+       analyze_subscript_affine_affine): Count the classified dependences.
+       Print a message when a test failed.
+       (can_use_analyze_subscript_affine_affine): New.
+       (analyze_siv_subscript): Compute the data dependences on symbolic
+       scevs that verify can_use_analyze_subscript_affine_affine.
+       (chrec_steps_divide_constant_p): Returns true, false, or unknown.
+       (analyze_miv_subscript): Update use of chrec_steps_divide_constant_p.
+       Handle symbolic scevs.
+       (analyze_overlapping_iterations): Let symbolic affine scevs to be
+       analyzed.
+       (subscript_dependence_tester): Moved...
+       (build_classic_dist_vector, build_classic_dir_vector): Don't use
+       lambda_vector_clear on newly allocated vectors.  Get nb_loops from
+       DDR_SIZE_VECT instead of getting it in parameter.
+       (subscript_dependence_tester): ... here.  Take as a parameter
+       loop_nest_depth.  Call build_classic_dist_vector and
+       build_classic_dir_vector.
+       (compute_affine_dependence): Update subscript_dependence_tester
+       parameters.  Update datadep_stats counters.  Call
+       compute_subscript_distance.
+       (compute_self_dependence): Save the dist and dir vectors.  Call
+       compute_subscript_distance.
+       (ddr_p, DEF_VEC_P(ddr_p), DEF_VEC_ALLOC_P(ddr_p,heap)): Moved...
+       (compute_all_dependences): Reorder parameters as they were before
+       conversion to VEC.  Pass nb_loops and loop_nest_depth.  Don't call
+       compute_subscript_distance.  Update the use of
+       compute_affine_dependence and initialize_data_dependence_relation.
+       (find_data_references_in_loop): Handle COMPONENT_REF.
+       (compute_data_dependences_for_loop): Initialize dependence_stats.
+       Don't call build_classic_dist_vector and build_classic_dir_vector.
+       Update the parameters of initialize_data_dependence_relation and
+       compute_all_dependences.  Print the statistics from datadep_stats.
+       (analyze_all_data_dependences): Static.  Not used until the pass for
+       checking the data dependences is contributed.
+       * tree-data-ref.h (ddr_p, DEF_VEC_P(ddr_p),
+       DEF_VEC_ALLOC_P(ddr_p,heap)): ... here.
+       (initialize_data_dependence_relation, compute_affine_dependence,
+       analyze_all_data_dependences, compute_subscript_distance): Removed.
+       (print_direction_vector): New.
+       * lambda.h (gcd): ... here.
+       (lambda_vector_gcd): Moved here from gcd_vector.
+       * lambda-code.c (gcd, gcd_vector): Removed.
+       (lambda_compute_target_space): Use lambda_vector_gcd.  Fix formatting.
+       * Makefile.in (tree-vect-patterns.o): Depends on TREE_DATA_REF_H.
+
+2006-02-20  Diego Novillo  <dnovillo@redhat.com>
+
+       * ipa-type-escape.c: Tidy some comments and white space.
+       * tree-ssa-operands.c: Likewise.
+
+2006-02-20  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/25879
+       * tree-pretty-print.c (debug_tree_chain): Walk the chains.
+       (dump_decl_name): Do not walk the decl tree chains.
+       * tree-pass.h (TDF_CHAIN): Remove.
+
+2006-02-20  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+
+       * Makefile.in (C): Remove
+       (PROTO): Remove
+       (.PHONY): Remove C and PROTO
+
+2006-02-20  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/26236
+       * doc/c-tree.texi (INTEGER_TYPE): Remove reference to the now
+       deprecated CHAR_TYPE tree code.
+
 2006-02-20  Paolo Bonzini  <bonzini@gnu.org>
 
        * configure.ac (target_list): Add install-info, dvi, html.
        * tree-pass.h (PROP_tmt_usage): New property.
        (TODO_update_tmt_usage): New todo.
        * tree-ssa-alias.c (updating_used_alone): New variable.
-       (recalculate_used_alone): New function.   
+       (recalculate_used_alone): New function.
        (compute_may_aliases): Set updating_used_alone, call
-       recalculate_used_alone. 
+       recalculate_used_alone.
        * tree-sra.c (pass_sra): Note that this pass destroys
        PROP_tmt_usage, and add TODO_update_tmt_usage.
        * tree-ssa-forwprop.c (pass_forwprop): Ditto.
        * tree-ssa-operands.c (add_virtual_operand): Only append bare def
        for clobber if used alone, and add assert to verify used_alone
        status.
-       
+
 2006-02-20  Angel Nunez Mencias  <anunez@de.ibm.com>
 
        * config/s390/s390.c (legitimize_pic_address): Assertions checking
        that were configured.  For all the other variables except
        lang_specs_files, include all the languages in the tree.
        * configure: Regenerate.
-       
+
        * Makefile.in (stmp-fixinc): Copy includes from the prev-gcc directory,
        if there is one.  Run the commands to run fixincludes in the same
        subshell.
        PR middle-end/25600
        * fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when
        C is one less than the width of X (and related transformations).
-       * simplify_rtx.c (simplify_unary_operation_1): Transform 
+       * simplify_rtx.c (simplify_unary_operation_1): Transform
        (neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C)
        depending on STORE_FLAG_VALUE, were C is one less then the
        width of X.
 2006-02-17  Daniel Berlin  <dberlin@dberlin.org>
 
        Fix PR tree-optimization/26341
-       * tree-ssa-operands.c (add_virtual_operand): Remove assert 
+       * tree-ssa-operands.c (add_virtual_operand): Remove assert
        about NAME_MEMORY_TAG's.
 
 2006-02-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
        general and floating-point registers to the 32-bit pattern.
        * pa.c (pa_secondary_reload): Don't abort if reload tries to find a
        secondary reload to load a QI or HI mode constant into a floating
-       point register. 
+       point register.
        * pa32-regs.h (VALID_FP_MODE_P): Allow QImode and HImode.
        * pa64-regs.h (VALID_FP_MODE_P): Likewise.
 
        PR rtl-optimization/25603
        * reload.c (reg_inc_found_and_valid_p): New. Check REG_INC note.
        (regno_clobbered_p): Use it. Reusing SETS argument for REG_INC case.
-       * reload1.c (choose_reload_regs): Added call of regno_clobbered_p 
+       * reload1.c (choose_reload_regs): Added call of regno_clobbered_p
        with new meaning of SETS.
 
 2006-02-16  Joseph S. Myers  <joseph@codesourcery.com>
        (add_virtual_operand): Here.  Add offset, size, and for_clobber
        arguments.  Prune alias sets.
        (add_call_clobber_ops): Call add_virtual_operand.
-       
+
 2006-02-15  Jakub Jelinek  <jakub@redhat.com>
 
        PR middle-end/26300
        * params.def (PARAM_MAX_FIELDS_FOR_FIELD_SENSITIVE): Ditto.
        * tree-ssa-structalias.c (create_variable_info_for): Use
        MAX_FIELDS_FOR_FIELD_SENSITIVE.
-       
+
 2006-02-14  Zdenek Dvorak <dvorakz@suse.cz>
 
        * doc/invoke.texi (-fprefetch-loop-arrays, -fprefetch-loop-arrays-rtl):
 2006-02-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>
 
        * doc/invoke.texi (-Write-strings): Document that it is enabled by
-       default. 
+       default.
        * c.opt (-Wwrite-strings): Declare variable warn_write_strings.
        Clarify documentation.
        * c-common.h (warn_write_strings): Remove.
 2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>
 
        PR middle-end/26134
-       * fold-const.c (fold_indirect_ref_1): Fold 
+       * fold-const.c (fold_indirect_ref_1): Fold
        "*(foo *)&complexfoo" to "__real__ complexfoo"
        and "((foo*)&complexfoo)[1]" to "__imag__ complexfoo".
 
 2006-02-09  Andrew Pinski  <pinskia@physics.uc.edu>
 
-       * tree-flow-inline.h (var_can_have_subvars): 
+       * tree-flow-inline.h (var_can_have_subvars):
        Volatile variables should not have subvariables.
 
 2006-02-09  Diego Novillo  <dnovillo@redhat.com>
        Do return slot optimization if we have an INIT_EXPR.
 
        PR tree-opt/24365
-       * tree-inline.c (declare_return_variable): Also clear 
+       * tree-inline.c (declare_return_variable): Also clear
        DECL_COMPLEX_GIMPLE_REG_P as needed in the modify_dest case.
 
        PR c++/16405
 
 2006-02-07  Pete Steinmetz  <steinmtz@us.ibm.com>
 
-        * sched-rgn.c (compute_dom_prob_ps, compute_trg_info): Eradicate
+       * sched-rgn.c (compute_dom_prob_ps, compute_trg_info): Eradicate
        use of float in probability computations.  Use edge probabilities
        in place of statically computed probabilities.
        (min_spec_prob): New static variable.
        (insert_aux): Move AGGREGATE_TYPE_P check here.
        (compute_avail): Set bb local stmt uids.
        (pass_pre): Use TODO_update_ssa_only_virtuals.
-       
+
 2006-02-06  Ben Elliston  <bje@au.ibm.com>
 
        * configure.ac: Unconditionally disable decimal float by default.
        * config/s390/2084.md ("x_fsimptf", "x_fmultf", "x_fdivtf",
        "x_floadtf", "x_ftrunctf", "x_ftruncdf"): New insn reservations.
        * config/s390/fixdfdi.h (__fixunstfdi, __fixtfdi): New functions.
-       * config/s390/s390.c (struct processor_costs): Add mxbr, sqxbr, dxbr 
+       * config/s390/s390.c (struct processor_costs): Add mxbr, sqxbr, dxbr
        and dxr fields.
        (z900_cost, z990_cost, z9_109_cost): Values for the new fields added.
        (s390_rtx_costs): Use the new fields to calculate rtx costs.
        builtin define.
        (LONG_DOUBLE_TYPE_SIZE): Set to 128 or 64.
        (LIBGCC2_LONG_DOUBLE_TYPE_SIZE, WIDEST_HARDWARE_FP_SIZE): Define.
-       (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, CLASS_MAX_NREGS, 
+       (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, CLASS_MAX_NREGS,
        CANNOT_CHANGE_MODE_CLASS): Consider TFmode.
-       * config/s390/s390.md ("type" attribute): Add fsimptf, floadtf, fmultf, 
+       * config/s390/s390.md ("type" attribute): Add fsimptf, floadtf, fmultf,
        fdivtf, fsqrttf, ftrunctf, ftruncdf as possible values.
        (FPR mode macro): Add TFmode.
        (DSF mode macro): New.
        (<de>, <dee> mode attributes): Removed.
        (<xde>, <xdee>, <RRe>, <RXe>, <Rf> mode attributes): New.
-       ("*cmp<mode>_ccs_0", "*cmp<mode>_ccs_0_ibm", "*cmp<mode>_ccs", 
-       "*cmp<mode>_ccs_ibm", "fix_trunc<FPR:mode><GPR:mode>2_ieee", 
-       "floatdi<mode>2", "floatsi<mode>2_ieee", "*add<mode>3", 
-       "*add<mode>3_cc", "*add<mode>3_cconly", "*add<mode>3_ibm", 
-       "*sub<mode>3", "*sub<mode>3_cc", "*sub<mode>3_cconly", 
+       ("*cmp<mode>_ccs_0", "*cmp<mode>_ccs_0_ibm", "*cmp<mode>_ccs",
+       "*cmp<mode>_ccs_ibm", "fix_trunc<FPR:mode><GPR:mode>2_ieee",
+       "floatdi<mode>2", "floatsi<mode>2_ieee", "*add<mode>3",
+       "*add<mode>3_cc", "*add<mode>3_cconly", "*add<mode>3_ibm",
+       "*sub<mode>3", "*sub<mode>3_cc", "*sub<mode>3_cconly",
        "*sub<mode>3_ibm", "*mul<mode>3_ibm", "*fmadd<mode>", "*fmsub<mode>",
-       "*div<mode>3", "*div<mode>3_ibm", "*neg<mode>2_cc", 
-       "*neg<mode>2_cconly", "*neg<mode>2", "*neg<mode>2_ibm", 
+       "*div<mode>3", "*div<mode>3_ibm", "*neg<mode>2_cc",
+       "*neg<mode>2_cconly", "*neg<mode>2", "*neg<mode>2_ibm",
        "*abs<mode>2_cc", "*abs<mode>2_cconly", "*abs<mode>2",
-       "*abs<mode>2_ibm", "*negabs<mode>2_cc", "*negabs<mode>2_cconly", 
+       "*abs<mode>2_ibm", "*negabs<mode>2_cc", "*negabs<mode>2_cconly",
        "*negabs<mode>2", "sqrt<mode>2"):
        Changed <de> to <xde>. R constraint replaced by <Rf>.
-       ("*mul<mode>3"): Changed <dee> to <xdee>. R constraint replaced by 
+       ("*mul<mode>3"): Changed <dee> to <xdee>. R constraint replaced by
        <Rf>.
        ("fix_trunc<FPR:mode>di2"): 'FPR:' removed.
-        ("*fmadd<mode>", "*fmsub<mode>"): FPR mode replaced by DSF.
-       ("*movtf_64", "*movtf_31"): New insn definitions followed by 5 
+       ("*fmadd<mode>", "*fmsub<mode>"): FPR mode replaced by DSF.
+       ("*movtf_64", "*movtf_31"): New insn definitions followed by 5
        splitters.
-       ("movtf", "reload_outtf", "reload_intf", "trunctfdf2", "trunctfsf2", 
+       ("movtf", "reload_outtf", "reload_intf", "trunctfdf2", "trunctfsf2",
        "extenddftf2", "extendsftf2"): New expanders.
-       ("*trunctfdf2_ieee", "*trunctfdf2_ibm", "*trunctfsf2_ieee", 
+       ("*trunctfdf2_ieee", "*trunctfdf2_ibm", "*trunctfsf2_ieee",
        "*trunctfsf2_ibm", "*extenddftf2_ieee", "*extenddftf2_ibm",
        "*extendsftf2_ieee", "*extendsftf2_ibm"): New insn patterns.
        * config/s390/s390.opt (mlong-double-128, mlong-double-64):
        New options.
        * config/s390/t-crtstuff (TARGET_LIBGCC2_CFLAGS): Macro defined.
-       * config/s390/libgcc-glibc.ver (__divtc3, __multc3, __powitf2, 
+       * config/s390/libgcc-glibc.ver (__divtc3, __multc3, __powitf2,
        __fixtfti, __fixunstfti, __floattitf, __fixtfdi, __fixunstfdi,
        __floatditf): Add a GCC_4.1.0 symbol version tag.
        * doc/invoke.texi (-mlong-double-128, -mlong-double-64): Document