Author: kjs
Date: Tue Dec 16 10:08:06 2008
New Revision: 33967
Modified:
trunk/compilers/pirc/new/pirsymbol.c
trunk/compilers/pirc/new/pirsymbol.h
Log:
[pirc] remove field #1 ("interval") from symbol/pir_reg.
Modified: trunk/compilers/pirc/new/pirsymbol.c
==============================================================================
--- trunk/compilers/pirc/new/pirsymbol.c (original)
+++ trunk/compilers/pirc/new/pirsymbol.c Tue Dec 16 10:08:06 2008
@@ -82,16 +82,16 @@
assign_vanilla_register(NOTNULL(lexer_state * const lexer), symbol * const
sym) {
sym->color = next_register(lexer, sym->type);
- sym->interval = new_live_interval(lexer->lsr, lexer->stmt_counter,
sym->type);
+ sym->info.interval = new_live_interval(lexer->lsr, lexer->stmt_counter,
sym->type);
/* set the reference of the interval to the symbol's color */
- sym->interval->color = &sym->color;
+ sym->info.interval->color = &sym->color;
/* mark the interval, so that its register is not reused, if the
:unique_reg
* flag was set.
*/
if (TEST_FLAG(sym->flags, TARGET_FLAG_UNIQUE_REG))
- SET_FLAG(sym->interval->flags, INTERVAL_FLAG_UNIQUE_REG);
+ SET_FLAG(sym->info.interval->flags, INTERVAL_FLAG_UNIQUE_REG);
}
@@ -302,12 +302,12 @@
/* get a new reg from vanilla reg. allocator */
assign_vanilla_register(lexer, sym);
else /* update end point of interval */
- sym->interval->endpoint = lexer->stmt_counter;
+ sym->info.interval->endpoint = lexer->stmt_counter;
if (TEST_FLAG(lexer->flags, LEXER_FLAG_VERBOSE))
fprintf(stderr, "live range of variable %s: (%d, %d)\n",
sym->name,
- sym->interval->startpoint, sym->interval->endpoint);
+ sym->info.interval->startpoint,
sym->info.interval->endpoint);
return sym;
}
@@ -369,7 +369,7 @@
while (iter != NULL) {
if (iter->regno == regno) {
/* update the end point of this register's live interval */
- iter->interval->endpoint = lexer->stmt_counter;
+ iter->info.interval->endpoint = lexer->stmt_counter;
return iter;
}
@@ -411,9 +411,9 @@
reg->color = pasmregno;
/* create a new live interval for this symbolic register */
- reg->interval = new_live_interval(lexer->lsr, lexer->stmt_counter, type);
+ reg->info.interval = new_live_interval(lexer->lsr, lexer->stmt_counter,
type);
/* let the interval have a pointer to this symbolic register */
- reg->interval->color = ®->color;
+ reg->info.interval->color = ®->color;
/* link this register into the list of "colored" registers; each of
@@ -473,7 +473,7 @@
*/
if (reg) {
/* update end point of interval */
- reg->interval->endpoint = lexer->stmt_counter;
+ reg->info.interval->endpoint = lexer->stmt_counter;
return reg->color;
}
Modified: trunk/compilers/pirc/new/pirsymbol.h
==============================================================================
--- trunk/compilers/pirc/new/pirsymbol.h (original)
+++ trunk/compilers/pirc/new/pirsymbol.h Tue Dec 16 10:08:06 2008
@@ -39,7 +39,8 @@
syminfo info;
int color;
pir_type type;
- live_interval *interval;
+ /* live_interval *interval;
+ */
char const *name; /* name of this symbol */
target_flag flags;
@@ -54,8 +55,8 @@
syminfo info;
int color;
pir_type type;
- live_interval *interval;
-
+ /* live_interval *interval;
+ */
int regno; /* symbolic (PIR) register number */
struct pir_reg *next;