diff options
-rw-r--r-- | dynasm/dasm_ppc.h | 2 |
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) | |||
342 | case DASM_STOP: case DASM_SECTION: goto stop; | 342 | case DASM_STOP: case DASM_SECTION: goto stop; |
343 | case DASM_ESC: *cp++ = *p++; break; | 343 | case DASM_ESC: *cp++ = *p++; break; |
344 | case DASM_REL_EXT: | 344 | case DASM_REL_EXT: |
345 | n = DASM_EXTERN(Dst, (unsigned char *)cp, (ins & 2047), 1); | 345 | n = DASM_EXTERN(Dst, (unsigned char *)cp, (ins & 2047), 1) - 4; |
346 | goto patchrel; | 346 | goto patchrel; |
347 | case DASM_ALIGN: | 347 | case DASM_ALIGN: |
348 | ins &= 255; while ((((char *)cp - base) & ins)) *cp++ = 0x60000000; | 348 | ins &= 255; while ((((char *)cp - base) & ins)) *cp++ = 0x60000000; |