'MIPS MT' is defined as a Module by MIPS. Extract the helper definitions to 'mod-mt_helper.h.inc'.
Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> Message-Id: <20201120210844.2625602-9-f4...@amsat.org> --- target/mips/helper.h | 23 +-------------------- target/mips/mod-mt_helper.h.inc | 36 +++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 22 deletions(-) create mode 100644 target/mips/mod-mt_helper.h.inc diff --git a/target/mips/helper.h b/target/mips/helper.h index 82f40c3b9bc..18366bc0345 100644 --- a/target/mips/helper.h +++ b/target/mips/helper.h @@ -179,25 +179,6 @@ DEF_HELPER_2(dmtc0_entrylo0, void, env, i64) DEF_HELPER_2(dmtc0_entrylo1, void, env, i64) #endif -/* MIPS MT functions */ -DEF_HELPER_2(mftgpr, tl, env, i32) -DEF_HELPER_2(mftlo, tl, env, i32) -DEF_HELPER_2(mfthi, tl, env, i32) -DEF_HELPER_2(mftacx, tl, env, i32) -DEF_HELPER_1(mftdsp, tl, env) -DEF_HELPER_3(mttgpr, void, env, tl, i32) -DEF_HELPER_3(mttlo, void, env, tl, i32) -DEF_HELPER_3(mtthi, void, env, tl, i32) -DEF_HELPER_3(mttacx, void, env, tl, i32) -DEF_HELPER_2(mttdsp, void, env, tl) -DEF_HELPER_0(dmt, tl) -DEF_HELPER_0(emt, tl) -DEF_HELPER_1(dvpe, tl, env) -DEF_HELPER_1(evpe, tl, env) - -/* R6 Multi-threading */ -DEF_HELPER_1(dvp, tl, env) -DEF_HELPER_1(evp, tl, env) #endif /* !CONFIG_USER_ONLY */ /* microMIPS functions */ @@ -208,9 +189,6 @@ DEF_HELPER_4(ldm, void, env, tl, tl, i32) DEF_HELPER_4(sdm, void, env, tl, tl, i32) #endif -DEF_HELPER_2(fork, void, tl, tl) -DEF_HELPER_2(yield, tl, env, tl) - /* CP1 functions */ DEF_HELPER_2(cfc1, tl, env, i32) DEF_HELPER_4(ctc1, void, env, tl, i32, i32) @@ -451,3 +429,4 @@ DEF_HELPER_3(cache, void, env, tl, i32) #include "mod-dsp_helper.h.inc" #include "mod-msa_helper.h.inc" +#include "mod-mt_helper.h.inc" diff --git a/target/mips/mod-mt_helper.h.inc b/target/mips/mod-mt_helper.h.inc new file mode 100644 index 00000000000..0db58e2a780 --- /dev/null +++ b/target/mips/mod-mt_helper.h.inc @@ -0,0 +1,36 @@ +/* + * MIPS Multi-Threading helpers for QEMU. + * + * Copyright (c) 2004-2005 Jocelyn Mayer + * Copyright (c) 2006 Marius Groeger (FPU operations) + * Copyright (c) 2006 Thiemo Seufer (MIPS32R2 support) + * Copyright (c) 2009 CodeSourcery (MIPS16 and microMIPS support) + * + * SPDX-License-Identifier: LGPL-2.1-or-later + */ + +#ifndef CONFIG_USER_ONLY +DEF_HELPER_2(mftgpr, tl, env, i32) +DEF_HELPER_2(mftlo, tl, env, i32) +DEF_HELPER_2(mfthi, tl, env, i32) +DEF_HELPER_2(mftacx, tl, env, i32) +DEF_HELPER_1(mftdsp, tl, env) +DEF_HELPER_3(mttgpr, void, env, tl, i32) +DEF_HELPER_3(mttlo, void, env, tl, i32) +DEF_HELPER_3(mtthi, void, env, tl, i32) +DEF_HELPER_3(mttacx, void, env, tl, i32) +DEF_HELPER_2(mttdsp, void, env, tl) + +DEF_HELPER_0(dmt, tl) +DEF_HELPER_0(emt, tl) + +DEF_HELPER_1(dvpe, tl, env) +DEF_HELPER_1(evpe, tl, env) + +/* R6 Multi-threading */ +DEF_HELPER_1(dvp, tl, env) +DEF_HELPER_1(evp, tl, env) +#endif /* !CONFIG_USER_ONLY */ + +DEF_HELPER_2(fork, void, tl, tl) +DEF_HELPER_2(yield, tl, env, tl) -- 2.26.2