diff options
author | Mike Pall <mike> | 2012-05-07 23:16:19 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2012-05-07 23:16:19 +0200 |
commit | 0d824b7d1417dbb89468d2b6093c2fad127fcc06 (patch) | |
tree | c0817b217d91491e05c80422ff936460331fa8f2 /src/lj_emit_x86.h | |
parent | afc17b3c1aafbd056c2bbb10ef937ebc10de07ee (diff) | |
download | luajit-0d824b7d1417dbb89468d2b6093c2fad127fcc06.tar.gz luajit-0d824b7d1417dbb89468d2b6093c2fad127fcc06.tar.bz2 luajit-0d824b7d1417dbb89468d2b6093c2fad127fcc06.zip |
Fix PHI stack slot syncing.
Diffstat (limited to 'src/lj_emit_x86.h')
-rw-r--r-- | src/lj_emit_x86.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lj_emit_x86.h b/src/lj_emit_x86.h index 4f3a08a1..dfb70574 100644 --- a/src/lj_emit_x86.h +++ b/src/lj_emit_x86.h | |||
@@ -383,6 +383,15 @@ static void emit_jcc(ASMState *as, int cc, MCode *target) | |||
383 | as->mcp = p - 6; | 383 | as->mcp = p - 6; |
384 | } | 384 | } |
385 | 385 | ||
386 | /* jmp target */ | ||
387 | static void emit_jmp(ASMState *as, MCode *target) | ||
388 | { | ||
389 | MCode *p = as->mcp; | ||
390 | *(int32_t *)(p-4) = jmprel(p, target); | ||
391 | p[-5] = XI_JMP; | ||
392 | as->mcp = p - 5; | ||
393 | } | ||
394 | |||
386 | /* call target */ | 395 | /* call target */ |
387 | static void emit_call_(ASMState *as, MCode *target) | 396 | static void emit_call_(ASMState *as, MCode *target) |
388 | { | 397 | { |