Author: kjs
Date: Tue Dec 16 09:39:34 2008
New Revision: 33965
Modified:
trunk/compilers/pirc/new/pircompunit.h
trunk/compilers/pirc/new/pirsymbol.h
Log:
[pirc] more preparation for refactoring of target/symbol/pir_reg structs.
Modified: trunk/compilers/pirc/new/pircompunit.h
==============================================================================
--- trunk/compilers/pirc/new/pircompunit.h (original)
+++ trunk/compilers/pirc/new/pircompunit.h Tue Dec 16 09:39:34 2008
@@ -196,17 +196,18 @@
*/
typedef struct target {
- union sym_union {
+ union sym_union { /* XXX this union will be replaced by
syminfo */
struct symbol *sym;
struct pir_reg *reg;
} s;
- target_flag flags; /* flags like :slurpy etc. */
- char const *alias; /* if this is a named parameter, this is
the alias */
- char const *lex_name; /* if this is a lexical, this field
contains the name */
- struct key *key; /* the key of this target, i.e. $P0[$P1],
$P1 is key. */
+ struct syminfo *syminfo;
+ target_flag flags; /* flags like :slurpy etc. */
+ char const *alias; /* if this is a named parameter, this is
the alias */
+ char const *lex_name; /* if this is a lexical, this field
contains the name */
+ struct key *key; /* the key of this target, i.e. $P0[$P1],
$P1 is key. */
- struct target *next;
+ struct target *next;
} target;
Modified: trunk/compilers/pirc/new/pirsymbol.h
==============================================================================
--- trunk/compilers/pirc/new/pirsymbol.h (original)
+++ trunk/compilers/pirc/new/pirsymbol.h Tue Dec 16 09:39:34 2008
@@ -26,6 +26,11 @@
pir_type type;
live_interval *interval;
+ union sym_id { /* identification of this symbol/reg */
+ char const *name;
+ int regno;
+ } id;
+
} syminfo;