From e52f65dcd1d8d4d2c16fa4e377a4ada4de6ef3f6 Mon Sep 17 00:00:00 2001 From: Pierrick Bouvier Date: Thu, 27 Aug 2026 22:14:46 +0000 Subject: [PATCH] tests/tcg/s390x/console.c: directly implement memcpy and memset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pc-bios/s390-ccw/sclp.c uses memcpy and memset. pc-bios/s390-ccw is part of QEMU repository. However roms/SLOF is only available if submodules have been initialized, which is not not always the case. To break this dependency, just copy their definition here, and remove include to submodules files. Reviewed-by: Ilya Leoshkevich Tested-by: Aniket Sahu Signed-off-by: Pierrick Bouvier Message-ID: <20260827221506.91574-86-pierrick.bouvier@oss.qualcomm.com> Signed-off-by: Alex Bennée --- tests/tcg/s390x/console.c | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/tests/tcg/s390x/console.c b/tests/tcg/s390x/console.c index 6c26f04949..061b9437d9 100644 --- a/tests/tcg/s390x/console.c +++ b/tests/tcg/s390x/console.c @@ -6,8 +6,34 @@ */ #include "../../../pc-bios/s390-ccw/sclp.c" -#include "../../../roms/SLOF/lib/libc/string/memset.c" -#include "../../../roms/SLOF/lib/libc/string/memcpy.c" +#include "string.h" + + +void * +memcpy(void *dest, const void *src, size_t n) +{ + char *cdest; + const char *csrc = src; + + cdest = dest; + while (n-- > 0) { + *cdest++ = *csrc++; + } + + return dest; +} + +void * +memset(void *dest, int c, size_t size) +{ + unsigned char *d = (unsigned char *)dest; + + while (size-- > 0) { + *d++ = (unsigned char)c; + } + + return dest; +} void __sys_outc(char c) {