From 82695ae971b591b6a1a8eaf3f5b63ffd32606417 Mon Sep 17 00:00:00 2001 From: bellard Date: Sun, 14 Jul 2002 23:00:53 +0000 Subject: [PATCH] fixed PC32 relocation --- i386-gen.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/i386-gen.c b/i386-gen.c index 6631d07..46afd78 100644 --- a/i386-gen.c +++ b/i386-gen.c @@ -112,7 +112,7 @@ void greloc_patch(unsigned char *ptr, *(int *)ptr += val; break; case R_386_PC32: - *(int *)ptr += val - addr - 4; + *(int *)ptr += val - addr; break; } } @@ -355,7 +355,7 @@ void gfunc_call(GFuncContext *c) /* relocation case */ greloc(cur_text_section, vtop->c.sym, ind + 1 - (int)cur_text_section->data, R_386_PC32); - oad(0xe8, 0); + oad(0xe8, -4); } else { oad(0xe8, vtop->c.ul - ind - 5); }