aboutsummaryrefslogtreecommitdiff
path: root/src/lj_mcode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_mcode.c')
-rw-r--r--src/lj_mcode.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lj_mcode.c b/src/lj_mcode.c
index fc67eaee..b34d7c85 100644
--- a/src/lj_mcode.c
+++ b/src/lj_mcode.c
@@ -269,6 +269,7 @@ static void mcode_allocarea(jit_State *J)
269 ((MCLink *)J->mcarea)->next = oldarea; 269 ((MCLink *)J->mcarea)->next = oldarea;
270 ((MCLink *)J->mcarea)->size = sz; 270 ((MCLink *)J->mcarea)->size = sz;
271 J->szallmcarea += sz; 271 J->szallmcarea += sz;
272 J->mcbot = (MCode *)lj_err_register_mcode(J->mcarea, sz, (uint8_t *)J->mcbot);
272} 273}
273 274
274/* Free all MCode areas. */ 275/* Free all MCode areas. */
@@ -279,7 +280,9 @@ void lj_mcode_free(jit_State *J)
279 J->szallmcarea = 0; 280 J->szallmcarea = 0;
280 while (mc) { 281 while (mc) {
281 MCode *next = ((MCLink *)mc)->next; 282 MCode *next = ((MCLink *)mc)->next;
282 mcode_free(J, mc, ((MCLink *)mc)->size); 283 size_t sz = ((MCLink *)mc)->size;
284 lj_err_deregister_mcode(mc, sz, (uint8_t *)mc + sizeof(MCLink));
285 mcode_free(J, mc, sz);
283 mc = next; 286 mc = next;
284 } 287 }
285} 288}