diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/host/buildvm_lib.c | 3 | ||||
-rw-r--r-- | src/lj_opt_mem.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/host/buildvm_lib.c b/src/host/buildvm_lib.c index 8914251e..ffc1b2ca 100644 --- a/src/host/buildvm_lib.c +++ b/src/host/buildvm_lib.c | |||
@@ -378,7 +378,8 @@ void emit_lib(BuildCtx *ctx) | |||
378 | char *p; | 378 | char *p; |
379 | /* Simplistic pre-processor. Only handles top-level #if/#endif. */ | 379 | /* Simplistic pre-processor. Only handles top-level #if/#endif. */ |
380 | if (buf[0] == '#' && buf[1] == 'i' && buf[2] == 'f') { | 380 | if (buf[0] == '#' && buf[1] == 'i' && buf[2] == 'f') { |
381 | int ok = 1, len = strlen(buf); | 381 | int ok = 1; |
382 | size_t len = strlen(buf); | ||
382 | if (buf[len-1] == '\n') { | 383 | if (buf[len-1] == '\n') { |
383 | buf[len-1] = 0; | 384 | buf[len-1] = 0; |
384 | if (buf[len-2] == '\r') { | 385 | if (buf[len-2] == '\r') { |
diff --git a/src/lj_opt_mem.c b/src/lj_opt_mem.c index 455b0ca6..07dab0d9 100644 --- a/src/lj_opt_mem.c +++ b/src/lj_opt_mem.c | |||
@@ -229,8 +229,8 @@ static TRef fwd_ahload(jit_State *J, IRRef xref) | |||
229 | if (key->o == IR_KSLOT) key = IR(key->op1); | 229 | if (key->o == IR_KSLOT) key = IR(key->op1); |
230 | lj_ir_kvalue(J->L, &keyv, key); | 230 | lj_ir_kvalue(J->L, &keyv, key); |
231 | tv = lj_tab_get(J->L, ir_ktab(IR(ir->op1)), &keyv); | 231 | tv = lj_tab_get(J->L, ir_ktab(IR(ir->op1)), &keyv); |
232 | lj_assertJ(itype2irt(tv) == irt_type(fins->t), | 232 | if (itype2irt(tv) != irt_type(fins->t)) |
233 | "mismatched type in constant table"); | 233 | return 0; /* Type instability in loop-carried dependency. */ |
234 | if (irt_isnum(fins->t)) | 234 | if (irt_isnum(fins->t)) |
235 | return lj_ir_knum_u64(J, tv->u64); | 235 | return lj_ir_knum_u64(J, tv->u64); |
236 | else if (LJ_DUALNUM && irt_isint(fins->t)) | 236 | else if (LJ_DUALNUM && irt_isint(fins->t)) |