From 71392a91c333d47b6b3c8f99c897e3b5a7eb6d58 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sun, 6 Mar 2016 17:25:52 +0000 Subject: generalize mips-specific reloc code not to hard-code sym/type encoding this change is made in preparation for adding the mips64 port, which needs a 64-bit (and mips64-specific) form of the R_INFO macro, but it's a better abstraction anyway. based on part of the mips64 port patch by Mahesh Bodapati and Jaydeep Patil of Imagination Technologies. --- ldso/dynlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ldso/dynlink.c') diff --git a/ldso/dynlink.c b/ldso/dynlink.c index 87f3b7f8..e458f386 100644 --- a/ldso/dynlink.c +++ b/ldso/dynlink.c @@ -1134,7 +1134,7 @@ static void do_mips_relocs(struct dso *p, size_t *got) Sym *sym = p->syms + j; rel[0] = (unsigned char *)got - base; for (i-=j; i; i--, sym++, rel[0]+=sizeof(size_t)) { - rel[1] = sym-p->syms << 8 | R_MIPS_JUMP_SLOT; + rel[1] = R_INFO(sym-p->syms, R_MIPS_JUMP_SLOT); do_relocs(p, rel, sizeof rel, 2); } } -- cgit v1.2.1