From fb67ea334b0f3984a114a6e306806a56347a83ba Mon Sep 17 00:00:00 2001 From: Paul Cercueil Date: Sun, 19 Nov 2023 12:43:43 +0100 Subject: [PATCH] git subrepo pull --force deps/lightrec subrepo: subdir: "deps/lightrec" merged: "eb2d1a88ff" upstream: origin: "https://github.com/pcercuei/lightrec.git" branch: "master" commit: "eb2d1a88ff" git-subrepo: version: "0.4.6" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "110b9eb" --- deps/lightrec/.gitrepo | 4 ++-- deps/lightrec/lightrec.c | 2 +- deps/lightrec/optimizer.c | 3 +++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/deps/lightrec/.gitrepo b/deps/lightrec/.gitrepo index 96c4feea..4a24742d 100644 --- a/deps/lightrec/.gitrepo +++ b/deps/lightrec/.gitrepo @@ -6,7 +6,7 @@ [subrepo] remote = https://github.com/pcercuei/lightrec.git branch = master - commit = b9e4089b3b6121f2077dc85a8fe7f934e3ae1c20 - parent = bbe0dac4b7062d5ead765329d9ddb1e1fe01eee2 + commit = eb2d1a88ff22a5a71e27efffdbdb423bb9b91b4f + parent = ab206b0c7fd5228d09d0b0cf3183405a6960ea55 method = merge cmdver = 0.4.6 diff --git a/deps/lightrec/lightrec.c b/deps/lightrec/lightrec.c index f589ce85..13434b46 100644 --- a/deps/lightrec/lightrec.c +++ b/deps/lightrec/lightrec.c @@ -1941,7 +1941,7 @@ struct lightrec_state * lightrec_init(char *argv0, else lut_size = CODE_LUT_SIZE * sizeof(void *); - init_jit(argv0); + init_jit_with_debug(argv0, stdout); state = calloc(1, sizeof(*state) + lut_size); if (!state) diff --git a/deps/lightrec/optimizer.c b/deps/lightrec/optimizer.c index 90b21398..792f35c8 100644 --- a/deps/lightrec/optimizer.c +++ b/deps/lightrec/optimizer.c @@ -299,6 +299,9 @@ static bool reg_is_dead(const struct opcode *list, unsigned int offset, u8 reg) if (opcode_writes_register(list[i].c, reg)) return true; + if (is_syscall(list[i].c)) + return false; + if (has_delay_slot(list[i].c)) { if (op_flag_no_ds(list[i].flags) || opcode_reads_register(list[i + 1].c, reg)) -- 2.39.5