diff options
| author | 2025-12-25 13:28:56 +0100 | |
|---|---|---|
| committer | 2025-12-25 13:28:56 +0100 | |
| commit | a6c2f8a9177eeae64b83e4aeafe46dbe310b3861 (patch) | |
| tree | d7d4ad2a189170a5ca56a9b46f3571fb12d72bb4 /ir/intrin.c | |
| parent | 882ea80770120e4f94e98e46ef824cafc9ccfe1f (diff) | |
avoid GOT relocations in unnecessary instances
Also change xcon to have a flagset for symbols (whether it's a function,
locally defined; later: thread local, etc).
Diffstat (limited to 'ir/intrin.c')
| -rw-r--r-- | ir/intrin.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ir/intrin.c b/ir/intrin.c index d31f9bb..dcd05a5 100644 --- a/ir/intrin.c +++ b/ir/intrin.c @@ -24,7 +24,7 @@ intrin(struct block *blk, int *curi, enum intrin in, struct arg *args, int narg, /* memcpy */ *args[1].ty = *args[0].ty = mktyperef(cls2type(KPTR)); insertinstr(blk, (*curi)++, mkarginstr(cls2type(cls), mkintcon(cls, td->siz))); - *this = mkinstr(Ocall, 0, mksymref(intern("memcpy"), 1), this->r); + *this = mkinstr(Ocall, 0, mksymref(intern("memcpy"), SFUNC), this->r); calltab.p[this->r.i].narg = 3; calltab.p[this->r.i].ret = cls2type(0); return 0; |