OSDN Git Service

Sort static functions in topological order.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a2ed1b6..51f32e8 100644 (file)
@@ -1,3 +1,121 @@
+2010-04-07  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * tree-if-conv.c: Sort static functions in topological order.
+
+2010-04-07  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * tree-if-conv.c: Fix indentation and comments.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43519
+       * graphite-clast-to-gimple.c (max_signed_precision_type): Use
+       lang_hooks.types.type_for_size instead of build_nonstandard_integer_type.
+       When converting an unsigned type to signed, double its precision.
+       (gcc_type_for_interval): Use lang_hooks.types.type_for_size.
+       (gcc_type_for_iv_of_clast_loop): Call max_signed_precision_type.
+       (graphite_create_new_loop_guard): When ub + 1 wraps around, use lb <= ub.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43519
+       * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
+       POINTER_PLUS_EXPR for pointer types.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/43519
+       * Makefile.in (graphite-clast-to-gimple.o): Depends on langhooks.h.
+       * graphite-clast-to-gimple.c: Include langhooks.h.
+       (max_signed_precision_type): New.
+       (max_precision_type): Takes two types as arguments.
+       (precision_for_value): New.
+       (precision_for_interval): New.
+       (gcc_type_for_interval): New.
+       (gcc_type_for_value): New.
+       (gcc_type_for_clast_term): New.
+       (gcc_type_for_clast_red): New.
+       (gcc_type_for_clast_bin): New.
+       (gcc_type_for_clast_expr): Split up into several functions.
+       (gcc_type_for_clast_eq): Rewritten.
+       (compute_bounds_for_level): New.
+       (compute_type_for_level_1): New.
+       (compute_type_for_level): New.
+       (gcc_type_for_cloog_iv): Removed.
+       (gcc_type_for_iv_of_clast_loop): Rewritten.
+       (graphite_create_new_loop): Compute the lower and upper bound types
+       with gcc_type_for_clast_expr.
+       (graphite_create_new_loop_guard): Same.
+       (find_cloog_iv_in_expr): Removed.
+       (compute_cloog_iv_types_1): Removed.
+       (compute_cloog_iv_types): Removed.
+       (gloog): Do not call compute_cloog_iv_types.
+       * graphite-sese-to-poly.c (new_gimple_bb): Do not initialize
+       GBB_CLOOG_IV_TYPES.
+       (free_data_refs_aux): Do not free GBB_CLOOG_IV_TYPES.
+       * sese.h (struct gimple_bb): Removed field cloog_iv_types.
+       (GBB_CLOOG_IV_TYPES): Removed.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Assert that
+       gimple_phi_num_args of the loop close SSA phi node is equal to 1.
+       (detect_commutative_reduction): Same.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-clast-to-gimple.c (graphite_verify): Remove redundant
+       call to verify_ssa.  Invoke verify_loop_closed_ssa with an extra
+       argument.
+       * graphite-scop-detection.c (canonicalize_loop_closed_ssa_form): Same.
+       * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Same.
+       (rewrite_commutative_reductions_out_of_ssa): Same.
+       * passes.c (execute_function_todo): Call verify_ssa for every pass
+       in the LNO.  Invoke verify_loop_closed_ssa with an extra argument.
+       * tree-flow.h (verify_loop_closed_ssa): Update declaration.
+       * tree-parloops.c (parallelize_loops): Invoke verify_loop_closed_ssa
+       with an extra argument.
+       * tree-ssa-loop-manip.c (check_loop_closed_ssa_stmt): Same.  Call
+       verify_ssa only when the extra argument is true.
+       (gimple_duplicate_loop_to_header_edge): Invoke verify_loop_closed_ssa
+       with an extra argument.
+       (tree_transform_and_unroll_loop): Same.
+
+2010-04-06  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * passes.c (execute_function_todo): Call verify_loop_closed_ssa
+       for all the passes of the LNO having LOOP_CLOSED_SSA.
+       * tree-if-conv.c (pass_if_conversion): Remove TODO_verify_loops.
+       * tree-loop-distribution.c (pass_loop_distribution): Same.
+       * tree-pass.h (TODO_verify_loops): Removed.
+       * tree-ssa-loop.c (pass_tree_loop_init): Same.
+       (pass_lim): Same.
+       (pass_tree_unswitch): Same.
+       (pass_predcom): Same.
+       (pass_vectorize): Same.
+       (pass_linear_transform): Same.
+       (pass_graphite_transforms): Same.
+       (pass_iv_canon): Same.
+       (pass_complete_unroll): Same.
+       (pass_complete_unrolli): Same.
+       (pass_parallelize_loops): Same.
+       (pass_loop_prefetch): Same.
+       (pass_iv_optimize): Same.
+
+2010-04-06  Changpeng Fang  <changpeng.fang@amd.com>
+
+       PR middle-end/32824
+       * passes.c (init_optimization_passes): Move pass_lim before
+       pass_copy_prop and pass_dce_loop.
+
+2010-04-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/43667
+       * config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
+       instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
+       (ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
+       MULTI_* defines for 4 argument vpermil2p* builtins.
+
 2010-04-06  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386-protos.h (x86_maybe_negate_const_int): Declare.
        * config/i386/sync.md (sync_add<mode>): Use
        x86_maybe_negate_const_int to output insn mnemonic.
 
-
 2010-04-06  Jan Hubicka  <jh@suse.cz>
 
        PR tree-optimization/42906