summaryrefslogtreecommitdiff
path: root/gcc/ira-int.h
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@codesourcery.com>2010-07-14 01:55:02 +0000
committerBernd Schmidt <bernds@gcc.gnu.org>2010-07-14 01:55:02 +0000
commit9140d27b2a52d6f3f0422c3391fbce84efad4442 (patch)
tree9c749fb9aac24e8dcbb64a1d5159f2ff5c57e64f /gcc/ira-int.h
parenta49ae2179409cf9ed7e78e93643ec4891e9ae8fe (diff)
downloadgcc-9140d27b2a52d6f3f0422c3391fbce84efad4442.tar.gz
ira-int.h (struct live_range): Rename allocno member to object and change type to ira_object_t.
* ira-int.h (struct live_range): Rename allocno member to object and change type to ira_object_t. (struct ira_object): New member live_ranges. (struct ira_allocno): Remove member live_ranges. (ALLOCNO_LIVE_RANGES): Remove. (OBJECT_LIVE_RANGES): New macro. (ira_create_live_range, ira_copy_live_range_list, ira_merge_live_range_list, ira_live_ranges_intersect_p, ira_finish_live_range, ira_finish_live_range_list): Adjust declarations. * ira-build.c (ira_create_object): Initialize live ranges here. (ira_create_allocno): Not here. (ira_create_live_range): Rename from ira_create_allocno_live_range, arg changed to ira_object_t, all callers changed. (copy_live_range): Rename from copy_allocno_live_range, all callers changed. (ira_copy_live_range_list): Rename from ira_copy_allocno_live_range_list, all callers changed. (ira_merge_live_ranges): Rename from ira_merge_allocno_live_range_list, all callers changed. (ira_live_ranges_intersect_p): Rename from ira_allocno_live_ranges_intersect_p, all callers changed. (ira_finish_live_range): Rename from ira_finish_allocno_live_range, all callers changed. (ira_finish_live_range_list): Rename from ira_finish_allocno_live_range_list, all callers changed. (change_object_in_range_list): Rename from change_allocno_in_range_list, last arg changed to ira_object_t, all callers changed. (finish_allocno): Changed to expect live ranges in the allocno's object. (move_allocno_live_ranges, copy_allocno_live_ranges, update_bad_spill_attribute, setup_min_max_allocno_live_range_point, ira_flattening, ira_build): Likewise. * ira-color.c (allocnos_have_intersected_live_ranges_p, slot_coalesced_allocno_live_ranges_intersect, setup_slot_coalesced_allocno_live_ranges, fast_allocation): Likewise. * ira-conflicts.c (build_conflict_bit_table): Likewise. * ira-emit.c (add_range_and_copies_from_move_list): Likewise. * ira-lives.c (make_allocno_born, update_allocno_pressure_excess_length, make_allocno_dead, create_start_finish_chains, remove_some_program_points_and_update_live_ranges, ira_debug_live_range_list): Likewise. From-SVN: r162167
Diffstat (limited to 'gcc/ira-int.h')
-rw-r--r--gcc/ira-int.h30
1 files changed, 15 insertions, 15 deletions
diff --git a/gcc/ira-int.h b/gcc/ira-int.h
index 5cabf9ee104..0c9d1276db3 100644
--- a/gcc/ira-int.h
+++ b/gcc/ira-int.h
@@ -202,7 +202,7 @@ extern ira_loop_tree_node_t ira_loop_nodes;
struct live_range
{
/* Allocno whose live range is described by given structure. */
- ira_allocno_t allocno;
+ ira_object_t object;
/* Program point range. */
int start, finish;
/* Next structure describing program points where the allocno
@@ -236,7 +236,12 @@ struct ira_object
otherwise. Only objects belonging to allocnos with the
same cover class are in the vector or in the bit vector. */
void *conflicts_array;
- /* Allocated size of the previous array. */
+ /* Pointer to structures describing at what program point the
+ object lives. We always maintain the list in such way that *the
+ ranges in the list are not intersected and ordered by decreasing
+ their program points*. */
+ live_range_t live_ranges;
+ /* Allocated size of the conflicts array. */
unsigned int conflicts_array_size;
/* A unique number for every instance of this structure which is used
to represent it in conflict bit vectors. */
@@ -341,11 +346,6 @@ struct ira_allocno
list is chained by NEXT_COALESCED_ALLOCNO. */
ira_allocno_t first_coalesced_allocno;
ira_allocno_t next_coalesced_allocno;
- /* Pointer to structures describing at what program point the
- allocno lives. We always maintain the list in such way that *the
- ranges in the list are not intersected and ordered by decreasing
- their program points*. */
- live_range_t live_ranges;
/* Pointer to a structure describing conflict information about this
allocno. */
ira_object_t object;
@@ -483,7 +483,6 @@ struct ira_allocno
#define ALLOCNO_TEMP(A) ((A)->temp)
#define ALLOCNO_FIRST_COALESCED_ALLOCNO(A) ((A)->first_coalesced_allocno)
#define ALLOCNO_NEXT_COALESCED_ALLOCNO(A) ((A)->next_coalesced_allocno)
-#define ALLOCNO_LIVE_RANGES(A) ((A)->live_ranges)
#define ALLOCNO_OBJECT(A) ((A)->object)
#define OBJECT_ALLOCNO(C) ((C)->allocno)
@@ -498,6 +497,7 @@ struct ira_allocno
#define OBJECT_MIN(C) ((C)->min)
#define OBJECT_MAX(C) ((C)->max)
#define OBJECT_CONFLICT_ID(C) ((C)->id)
+#define OBJECT_LIVE_RANGES(C) ((C)->live_ranges)
/* Map regno -> allocnos with given regno (see comments for
allocno member `next_regno_allocno'). */
@@ -935,13 +935,13 @@ extern bool ira_conflict_vector_profitable_p (ira_object_t, int);
extern void ira_allocate_conflict_vec (ira_object_t, int);
extern void ira_allocate_object_conflicts (ira_object_t, int);
extern void ira_print_expanded_allocno (ira_allocno_t);
-extern live_range_t ira_create_allocno_live_range (ira_allocno_t, int, int,
- live_range_t);
-extern live_range_t ira_copy_allocno_live_range_list (live_range_t);
-extern live_range_t ira_merge_allocno_live_ranges (live_range_t, live_range_t);
-extern bool ira_allocno_live_ranges_intersect_p (live_range_t, live_range_t);
-extern void ira_finish_allocno_live_range (live_range_t);
-extern void ira_finish_allocno_live_range_list (live_range_t);
+extern live_range_t ira_create_live_range (ira_object_t, int, int,
+ live_range_t);
+extern live_range_t ira_copy_live_range_list (live_range_t);
+extern live_range_t ira_merge_live_ranges (live_range_t, live_range_t);
+extern bool ira_live_ranges_intersect_p (live_range_t, live_range_t);
+extern void ira_finish_live_range (live_range_t);
+extern void ira_finish_live_range_list (live_range_t);
extern void ira_free_allocno_updated_costs (ira_allocno_t);
extern ira_copy_t ira_create_copy (ira_allocno_t, ira_allocno_t,
int, bool, rtx, ira_loop_tree_node_t);