[prev in list] [next in list] [prev in thread] [next in thread]
List: gcc-patches
Subject: tree-vectorizer.c splitup
From: Dorit Naishlos <DORIT () il ! ibm ! com>
Date: 2005-01-31 17:27:36
Message-ID: OFC7216140.7C04EE39-ONC2256F9A.005AE42D-C2256F9A.005FE965 () il ! ibm ! com
[Download RAW message or body]
Looks like it's time to split up the tree-vectorizer.c file (I hear it's
been a subject of discussion on IRC...). I was thinking to split it as
follows:
tree-simple-loop-utils.c: loop-peeling utilities (non vectorizer specific)
tree-vectorizer.c: main driver and general vectorization utilities
tree-vect-analyze.c: analysis functions
tree-vect-transform.c: transformation functions
Would this be acceptable for 4.0?
Here's a more detailed breakdown of the funnctions into the proposed files:
tree-simple-loop-utils.c
========================
- slpeel_tree_peel_loop_to_edge
- slpeel_tree_duplicate_loop_to_edge_cfg
- slpeel_update_phis_for_duplictae_loop
- slpeel_update_phi_nodes_for_guard
- slpeel_make_loop_iterate_ntimes
- slpeel_add_loop_guard
- slpeel_can_duplicate_loop_p
- slpeel_verify_cfg_after_peeling
- allocate_nre_names
- rename_use_op
- rename_def_op
- rename_variables_in_bb
- free_new_names
- rename_variables_in_loop
tree-vectorizer.c
=================
- vectorize_loops
- get_vectype_for_scalar_type
- new_stmt_vec_info
- new_loop_vec_info
- destroy_loop_vec_info
- debug_loop_stats
- debug_loop_details
- vect_strip_conversions
- vect_force_dr_alignment_p
- need_imm_uses_for
- vect_is_simple_iv_evolution
- vect_is_simple_use
- vect_supportable_dr_alignment
- vect_force_dr_alignment_p
tree-vect-transform.c
=====================
- vect_transform_loop
- vect_do_peeling_for_alignment
- vect_do_peeling_for_loop_bound
- vect_build_loop_niters
- vect_generate_tmps_on_preheader
- vect_update_ivs_after_vectorizer
- vect_gen_niters_for_prolog_loop
- vect_update_inits_of_drs
- vect_transform_stmt
- vectorizable_operation
- vectorizable_store
- vectorizable_load
- vectorizable_assignment
- vect_get_new_vect_var
- vect_create_index_for_vector_ref
- vect_create_addr_base_for_vector_ref
- vect_align_data_ref
- vect_create_data_ref_ptr
- vect_create_destination_var
- vect_init_vector
- vect_get_vec_def_for_operand
- vect_finish_stmt_generation
tree-vect-analyze.c
===================
- vect_analyze_loop
- vect_analyze_loop_form
- vect_get_loop_niters
- vect_can_advance_ivs_p
- vect_mark_stmts_to_be_vectorized
- vect_stmt_relevant_p
- vect_mark_relevant
- exist_non_indexing_operands_for_use_p
- vect_analyze_scalar_cycles
- vect_analyze_data_refs.
- vect_analyze_pointer_ref_access.
- vect_get_memtag_and_dr.
- vect_analyze_offset_expr
- vect_get_base_and_offset
- vect_analyze_data_ref_dependences.
- vect_analyze_data_refs_alignment
- vect_compute_data_refs_alignment
- vect_get_ptr_offset
- vect_enhance_data_refs_alignment
- vect_analyze_data_ref_accesses.
- vect_analyze_operations
thanks,
dorit
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic