From patchwork Mon Dec 10 15:28:26 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 153289 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3698409ljp; Mon, 10 Dec 2018 07:41:57 -0800 (PST) X-Google-Smtp-Source: AFSGD/XaXgVH/UQWzjG662Ejk5v6Ug9dTbtHHJyBWm1YfOa0Z9/6Kf+U5TZcK6kEjB4E1BahZgWd X-Received: by 2002:a0c:ad16:: with SMTP id u22mr12095052qvc.240.1544456517357; Mon, 10 Dec 2018 07:41:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544456517; cv=none; d=google.com; s=arc-20160816; b=CE/imIL7xJN8RmTxDnl9ea4vkukQr6E+CKIjI/5AfIH5eCdkGSRqYwKUOfhIVgDRcn njc/nYHehaJ0gju3++GvwVJsDk48U1L6yqnte5sMdGP+MpkbMGQ7trkDUH7oooDLXPzJ Jz8eQhJrDU6Tt4Bo4UIqSV/zHRXTCEL7YbJxuycXxH0U41qGuGnScFI03Rv/PI1gym1M wGadW7ol7TDTGtinXCYjib+f91BYClh0WaSAQ2XuSCy1cGbLvu+51layhjoUwHVoCo14 N+LSymtK5eVods+1ddvVSc/G1IzJ2U0if9CFaS1WFsYRoKO1UJOi/shhiU0Ix2EuBCHY 5OiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature; bh=/U1pyU+stUfvYOAsG/d5zAnLuBxRcYUDLgZPKFsVVuE=; b=tXNiith9yRe7DJCrsQOMO7R/Tl3rw0VDD3h+yY7GRp9Ft5ePWeLuYHAl7QTURAasdI 74tQ0UUYG6DZgQ2hENFHerfO4bzi+TD8vNX2uUmPHZ9uPp4HO64m7sUrPaaTuhI/EzQp FWYrW7g6t+nr777jMMJFGAaC6is4LADXB0aj+C1TUHVQ1kTCLsZw2Uil3nDHXW4yxtbW GT2v5e8jJoy56x9pNiCtsGIV7OoZGU9X2zL7mYV0ePMaYgPX3TF8RbaAZPI1LODVbhqh pYXbNxJ8OvBPL1SqI7ZssPXePXnqJUv8Q45bdnYyq5WkjYMED/9bt5AS4y8wRfFvvejH m0Rw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=FQ0WyCul; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id i8si6249310qvp.40.2018.12.10.07.41.57 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 10 Dec 2018 07:41:57 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=FQ0WyCul; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:33404 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWNgy-000279-PB for patch@linaro.org; Mon, 10 Dec 2018 10:41:56 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43353) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWNU9-00089R-S0 for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gWNU8-0000Xd-DW for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:41 -0500 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]:40912) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gWNU8-0000XE-45 for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:40 -0500 Received: by mail-wr1-x444.google.com with SMTP id p4so10896736wrt.7 for ; Mon, 10 Dec 2018 07:28:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/U1pyU+stUfvYOAsG/d5zAnLuBxRcYUDLgZPKFsVVuE=; b=FQ0WyCulaRM/4qSsbOKUoGrN6RS2W7kfQtLRvDC95FojmanAUmrhSRpxcKFA96514y B3tx4NcEsBYz9NdxIB4t3vqGelCUxptxUIOcsl9H8n+doHQ40eq5hR7SNLYNWAhXqZ9Q h7Df3G3n1dnoe3Lh+uH+jIPOFn1Jjhvu4ufmY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/U1pyU+stUfvYOAsG/d5zAnLuBxRcYUDLgZPKFsVVuE=; b=J29lGt+QuGO+vPhSQhw26LoJbus8tDPwp28EqL4Cy9ImAWgHUmrJXhc5pBbYE2ET2I qD+NrGI3TjCUkWCjXGO9i45wB38SH0CTnrctq7S5Y5SzK/6OCh390tJl1Ouj9m5tlEg/ qtloRyETVXGdZsV/fx0Sbpn7e/WwbkDWxsGwcYi4eaJbY2HTIr9rFM4O35wruBOaBOgS 3Bh0IxfWCfoXeteq4yLb3M4QUc6igqo1YkBKtD8EPFtatzQ1mTEbZUVepWdNTPtUyu4R xIKS/kJemYffmqEgowk3dJkAA6seUJm8pT5zofEO0uQt8Vx28rWSA7dJogSp6leUXmkC 3EFw== X-Gm-Message-State: AA+aEWZrl70xUt1xRLXequs4Ipni41SDd1/XXpsz33/jtg5Sf1di753m QjZYfTtOwVAYzue1P+zELy32xg== X-Received: by 2002:adf:f8d2:: with SMTP id f18mr10319637wrq.265.1544455719029; Mon, 10 Dec 2018 07:28:39 -0800 (PST) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id b131sm12508911wma.21.2018.12.10.07.28.32 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Dec 2018 07:28:34 -0800 (PST) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id A42473E06D8; Mon, 10 Dec 2018 15:28:30 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Date: Mon, 10 Dec 2018 15:28:26 +0000 Message-Id: <20181210152829.29271-11-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181210152829.29271-1-alex.bennee@linaro.org> References: <20181210152829.29271-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::444 Subject: [Qemu-devel] [RFC PATCH 10/13] tests/tcg/cris: cleanup sys.c X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: jcmvbkbc@gmail.com, michael@walle.cc, amarkovic@wavecomp.com, edgar.iglesias@gmail.com, shorne@gmail.com, =?utf-8?q?Alex_Benn=C3=A9?= =?utf-8?q?e?= , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This is a mini library which provides helper functions to the tests which are all currently written in assembly. A bunch of minor changes: - removed libc related headers (fedora-cris-cross is a system compiler) - re-organised the functions to avoid forward declarations - cleaned up brace usage - restored exit for _fail case - removed tabs and fixed indentation Signed-off-by: Alex Bennée --- tests/tcg/cris/system/sys.c | 96 ++++++++++++++++++------------------- 1 file changed, 48 insertions(+), 48 deletions(-) -- 2.17.1 diff --git a/tests/tcg/cris/system/sys.c b/tests/tcg/cris/system/sys.c index 21f08c0747..aa342335d6 100644 --- a/tests/tcg/cris/system/sys.c +++ b/tests/tcg/cris/system/sys.c @@ -1,59 +1,59 @@ -#include -#include -#include - -static inline int mystrlen(char *s) { - int i = 0; - while (s[i]) - i++; - return i; +/* + * Helper functions for CRIS system tests + * + * There is no libc and only a limited set of headers. + */ + +#include + +void exit(int status) +{ + register unsigned int callno asm ("r9") = 1; /* NR_exit */ + + asm volatile ("break 13\n" + : /* no outputs */ + : "r" (callno) + : "memory" ); + while(1); } -void pass(void) { - char s[] = "passed.\n"; - write (1, s, sizeof (s) - 1); - exit (0); -} +size_t write(int fd, const void *buf, size_t count) +{ + register unsigned int callno asm ("r9") = 4; /* NR_write */ + register unsigned int r10 asm ("r10") = fd; + register const void *r11 asm ("r11") = buf; + register size_t r12 asm ("r12") = count; + register unsigned int r asm ("r10"); -void _fail(char *reason) { - char s[] = "\nfailed: "; - int len = mystrlen(reason); - write (1, s, sizeof (s) - 1); - write (1, reason, len); - write (1, "\n", 1); -// exit (1); -} + asm volatile ("break 13\n" + : "=r" (r) + : "r" (callno), "0" (r10), "r" (r11), "r" (r12) + : "memory"); -void *memset (void *s, int c, size_t n) { - char *p = s; - int i; - for (i = 0; i < n; i++) - p[i] = c; - return p; + return r; } -void exit (int status) { - register unsigned int callno asm ("r9") = 1; /* NR_exit */ - - asm volatile ("break 13\n" - : - : "r" (callno) - : "memory" ); - while(1) - ; +static inline int mystrlen(char *s) +{ + int i = 0; + while (s[i]) { + i++; + } + return i; } -ssize_t write (int fd, const void *buf, size_t count) { - register unsigned int callno asm ("r9") = 4; /* NR_write */ - register unsigned int r10 asm ("r10") = fd; - register const void *r11 asm ("r11") = buf; - register size_t r12 asm ("r12") = count; - register unsigned int r asm ("r10"); - asm volatile ("break 13\n" - : "=r" (r) - : "r" (callno), "0" (r10), "r" (r11), "r" (r12) - : "memory"); +void pass(void) { + char s[] = "passed.\n"; + write(1, s, sizeof (s) - 1); + exit(0); +} - return r; +void _fail(char *reason) { + char s[] = "\nfailed: "; + int len = mystrlen(reason); + write(1, s, sizeof (s) - 1); + write(1, reason, len); + write(1, "\n", 1); + exit(1); }