diff options
author | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2015-11-13 13:12:22 -0500 |
---|---|---|
committer | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2015-11-13 13:12:22 -0500 |
commit | 291c39565fb3b4e688dce2bfedbdd781ed71e87d (patch) | |
tree | 92ec7f068607a2ce34cec5d857c9302708b2047f /lisc/lisc.h | |
parent | 681fc07defc8902d5b3d827bac50eedc748f8664 (diff) | |
download | roux-291c39565fb3b4e688dce2bfedbdd781ed71e87d.tar.gz |
store the use locations for temporaries
Diffstat (limited to 'lisc/lisc.h')
-rw-r--r-- | lisc/lisc.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lisc/lisc.h b/lisc/lisc.h index 5748587..3643e48 100644 --- a/lisc/lisc.h +++ b/lisc/lisc.h @@ -14,6 +14,7 @@ typedef struct OpDesc OpDesc; typedef struct Ins Ins; typedef struct Phi Phi; typedef struct Blk Blk; +typedef struct Use Use; typedef struct Tmp Tmp; typedef struct Con Con; typedef struct Addr Mem; @@ -247,8 +248,23 @@ struct Blk { char name[NString]; }; +struct Use { + enum { + UXXX, + UPhi, + UIns, + UJmp, + } type; + int bid; + union { + int ins; + Ref phi; + } u; +}; + struct Tmp { char name[NString]; + Use *use; uint ndef, nuse; uint cost; short slot; |