aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2004-12-10 18:50:23 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-07 21:05:58 -0700
commit7fc734e0cdde8d48717a10b482b06e19e60743fe (patch)
treea7aac685c0b6501974b6163f9b03b765a2bb98c6 /linearize.c
parentExpose lookup_storage/add_storage to code generator. (diff)
downloadsparse-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.c6
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;
}