Add analysis pass to build the refined program structure tree.
The hash table utility functions are copied and adapted from code Antoniu contributed. 2010-05-27 Tobias Grosser <grosser@fim.uni-passau.de> Antoniu Pop <antoniu.pop@gmail.com> * Makefile.in (OBJS-common): Add refined-regions.o. (refined-regions.o): New. (graphite-scop-detection.o): Use refined-regions.h. * graphite-scop-detection.c: Include refined-regions.h (build_scops): Also build the refined region tree. * refined-regions.c: New. Adds an algorithm to detect refined regions. (print_refined_region): New. (debug_refined_region): New. (refined_region_contains_bb_p): New. (refined_region_contains_region_p): New. (is_common_df): New. (struct find_regions_global_data): New. (is_region): New. (typedef struct bb_bb_def): New. (new_bb_bb_def): New. (bb_bb_map_hash): New. (eq_bb_bb_map): New. (find_new_bb): New. (bb_reg_def): New. (new_bb_reg_def): New. (bb_reg_map_hash): New. (eq_bb_reg_map): New. (find_new_region): New. (insert_new_reg): New. (insert_new_bb): New. (insert_shortcut): New. (get_next_postdom): New. (create_region): New. (find_regions_with_entry): New. (find_regions_adc): New. (find_regions): New. (get_topmost_parent): New. (build_regions_tree): New. (calculate_region_tree): New. (free_region_tree): New. * refined-regions.h: New. (struct refined_region): New. (calculate_region_tree): New. (free_region_tree): New. (refined_region_contains_bb_p): New. (refined_region_contains_region_p): New. (print_refined_region): New. (debug_refined_region): New. From-SVN: r163108
This commit is contained in:
parent
8c131b3b21
commit
25c57e8357
@ -1,3 +1,51 @@
|
|||||||
|
2010-05-27 Tobias Grosser <grosser@fim.uni-passau.de>
|
||||||
|
Antoniu Pop <antoniu.pop@gmail.com>
|
||||||
|
|
||||||
|
* Makefile.in (OBJS-common): Add refined-regions.o.
|
||||||
|
(refined-regions.o): New.
|
||||||
|
(graphite-scop-detection.o): Use refined-regions.h.
|
||||||
|
* graphite-scop-detection.c: Include refined-regions.h
|
||||||
|
(build_scops): Also build the refined region tree.
|
||||||
|
* refined-regions.c: New. Adds an algorithm to detect refined
|
||||||
|
regions.
|
||||||
|
(print_refined_region): New.
|
||||||
|
(debug_refined_region): New.
|
||||||
|
(refined_region_contains_bb_p): New.
|
||||||
|
(refined_region_contains_region_p): New.
|
||||||
|
(is_common_df): New.
|
||||||
|
(struct find_regions_global_data): New.
|
||||||
|
(is_region): New.
|
||||||
|
(typedef struct bb_bb_def): New.
|
||||||
|
(new_bb_bb_def): New.
|
||||||
|
(bb_bb_map_hash): New.
|
||||||
|
(eq_bb_bb_map): New.
|
||||||
|
(find_new_bb): New.
|
||||||
|
(bb_reg_def): New.
|
||||||
|
(new_bb_reg_def): New.
|
||||||
|
(bb_reg_map_hash): New.
|
||||||
|
(eq_bb_reg_map): New.
|
||||||
|
(find_new_region): New.
|
||||||
|
(insert_new_reg): New.
|
||||||
|
(insert_new_bb): New.
|
||||||
|
(insert_shortcut): New.
|
||||||
|
(get_next_postdom): New.
|
||||||
|
(create_region): New.
|
||||||
|
(find_regions_with_entry): New.
|
||||||
|
(find_regions_adc): New.
|
||||||
|
(find_regions): New.
|
||||||
|
(get_topmost_parent): New.
|
||||||
|
(build_regions_tree): New.
|
||||||
|
(calculate_region_tree): New.
|
||||||
|
(free_region_tree): New.
|
||||||
|
* refined-regions.h: New.
|
||||||
|
(struct refined_region): New.
|
||||||
|
(calculate_region_tree): New.
|
||||||
|
(free_region_tree): New.
|
||||||
|
(refined_region_contains_bb_p): New.
|
||||||
|
(refined_region_contains_region_p): New.
|
||||||
|
(print_refined_region): New.
|
||||||
|
(debug_refined_region): New.
|
||||||
|
|
||||||
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
|
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
|
||||||
|
|
||||||
* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
|
* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
|
||||||
|
Loading…
Reference in New Issue
Block a user