summaryrefslogtreecommitdiff
path: root/dynasm
diff options
context:
space:
mode:
authorMike Pall <mike>2011-10-25 01:18:59 +0200
committerMike Pall <mike>2011-10-25 01:18:59 +0200
commit9df9c7ef730c6af4c3b3f137f8070be29a9bd946 (patch)
treebbcefd97aa9a6792dd1803777b0340a498ac61cf /dynasm
parentbec4d20fb615ccb4e0ac52955aa55b885f020f45 (diff)
downloadluajit2-9df9c7ef730c6af4c3b3f137f8070be29a9bd946.tar.gz
PPC: Fix externally provided relocation offsets in DynASM.
Diffstat (limited to 'dynasm')
-rw-r--r--dynasm/dasm_ppc.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/dynasm/dasm_ppc.h b/dynasm/dasm_ppc.h
index 4b4ffe8a..645e0601 100644
--- a/dynasm/dasm_ppc.h
+++ b/dynasm/dasm_ppc.h
@@ -342,7 +342,7 @@ int dasm_encode(Dst_DECL, void *buffer)
case DASM_STOP: case DASM_SECTION: goto stop;
case DASM_ESC: *cp++ = *p++; break;
case DASM_REL_EXT:
- n = DASM_EXTERN(Dst, (unsigned char *)cp, (ins & 2047), 1);
+ n = DASM_EXTERN(Dst, (unsigned char *)cp, (ins & 2047), 1) - 4;
goto patchrel;
case DASM_ALIGN:
ins &= 255; while ((((char *)cp - base) & ins)) *cp++ = 0x60000000;