diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-12-10 18:50:23 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-07 21:05:58 -0700 |
commit | 7fc734e0cdde8d48717a10b482b06e19e60743fe (patch) | |
tree | a7aac685c0b6501974b6163f9b03b765a2bb98c6 /linearize.c | |
parent | Expose lookup_storage/add_storage to code generator. (diff) | |
download | sparse-7fc734e0cdde8d48717a10b482b06e19e60743fe.tar.gz sparse-7fc734e0cdde8d48717a10b482b06e19e60743fe.tar.bz2 sparse-7fc734e0cdde8d48717a10b482b06e19e60743fe.zip |
Add the argument pseudos to the "enter" instruction
Not only does it make sense, but the back-end needs to
know what pseudos got allocated ;)
Diffstat (limited to 'linearize.c')
-rw-r--r-- | linearize.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/linearize.c b/linearize.c index 71a23a1..037b3f5 100644 --- a/linearize.c +++ b/linearize.c @@ -758,9 +758,13 @@ pseudo_t value_pseudo(long long val) static pseudo_t argument_pseudo(struct entrypoint *ep, int nr) { pseudo_t pseudo = __alloc_pseudo(0); + struct instruction *entry = ep->entry; + pseudo->type = PSEUDO_ARG; pseudo->nr = nr; - pseudo->def = ep->entry; + pseudo->def = entry; + add_pseudo(&entry->arg_list, pseudo); + /* Argument pseudos have neither usage nor def */ return pseudo; } |