Browse Source

Fix frame setup for error handling in next().

Mike Pall 15 years ago
parent
commit
9f6707ddbb
4 changed files with 1665 additions and 1663 deletions
  1. 493 493
      src/buildvm_x64.h
  2. 563 563
      src/buildvm_x64win.h
  3. 1 0
      src/buildvm_x86.dasc
  4. 608 607
      src/buildvm_x86.h

File diff suppressed because it is too large
+ 493 - 493
src/buildvm_x64.h


File diff suppressed because it is too large
+ 563 - 563
src/buildvm_x64win.h


+ 1 - 0
src/buildvm_x86.dasc

@@ -1432,6 +1432,7 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
   |  cmp dword [BASE+4], LJ_TTAB;  jne ->fff_fallback
   |  mov L:RB, SAVE_L
   |  mov L:RB->base, BASE		// Add frame since C call can throw.
+  |  mov L:RB->top, BASE		// Dummy frame length is ok.
   |  mov PC, [BASE-4]
   |.if X64WIN
   |  lea CARG3d, [BASE+8]

File diff suppressed because it is too large
+ 608 - 607
src/buildvm_x86.h


Some files were not shown because too many files changed in this diff