summaryrefslogtreecommitdiff
path: root/utils/tl/thumb.c
diff options
context:
space:
mode:
Diffstat (limited to 'utils/tl/thumb.c')
-rw-r--r--utils/tl/thumb.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/utils/tl/thumb.c b/utils/tl/thumb.c
index ff089918..d3324ebf 100644
--- a/utils/tl/thumb.c
+++ b/utils/tl/thumb.c
@@ -181,7 +181,7 @@ thumbaclass(Adr *a, Prog *p)
a->sym->name, TNAME);
a->sym->type = SDATA;
}
- instoffset = a->sym->value + a->offset + INITDAT;
+ instoffset = a->sym->value + a->offset + INITDAT + a->sym->base;
return C_LEXT; /* INITDAT unknown at this stage */
// return immacon(instoffset, p, C_SEXT, C_LEXT);
case D_AUTO:
@@ -213,7 +213,7 @@ thumbaclass(Adr *a, Prog *p)
s->name, TNAME);
s->type = SDATA;
}
- instoffset = s->value + a->offset + INITDAT;
+ instoffset = s->value + a->offset + INITDAT + s->base;
if(s->type == STEXT || s->type == SLEAF){
instoffset = s->value + a->offset;
#ifdef CALLEEBX
@@ -262,7 +262,7 @@ thumbaclass(Adr *a, Prog *p)
#endif
return C_LCON;
}
- instoffset = s->value + a->offset + INITDAT;
+ instoffset = s->value + a->offset + INITDAT + s->base;
return C_LCON; /* INITDAT unknown at this stage */
// return immcon(instoffset, p);
case D_AUTO: