Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp19220888rwd; Wed, 28 Jun 2023 06:42:30 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ51GheuDQvzelduLKo7ukcJeq5hBvMOTXRsw1Sfcujo5MbVQda1Zi9AqB/tix+5jyzg3SIL X-Received: by 2002:a05:6a20:4428:b0:12a:cc8:75e0 with SMTP id ce40-20020a056a20442800b0012a0cc875e0mr6725921pzb.59.1687959749830; Wed, 28 Jun 2023 06:42:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687959749; cv=none; d=google.com; s=arc-20160816; b=dyXenAw6tf+oMIG5CYGIrgBnKPjp+6/C4bvo1iV/8ler1qsJABr8o20qt+A5TWLDDG gw1YYtX6uw0TRKebSWnvXG2Fj35sBh7vJfLUG/V/HKaoSUSHPrfk/VRbI0jU8T4+90I0 B+xvxsRgnAam4OFCN+/E7eRc9zr25q6iCurumhB3HnMHoS6XfQx8Ivf+of7IEQUhcG99 M9JLnufWvYZCWRyx49OemH+xXPNrglnnUf92GkAjOaYQRe1OBG9PkovW+XhJhrv+vNtl S7jgXQy55VcOJqAMAUCkdjFQCs9CIDeSVFTmnBlNDkk9elJriZ0no+CoA9ep3SrGRxpt S73Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from; bh=o+XWqNWrKZfL0q65kllcs7ElT5BKR65TeLuKgX30XE8=; fh=CABfkMhKo5yB9DuGBIJJBQ5z8vnCCyGNX8ln70ySW7c=; b=OQKSvfsr4CsJCN6sGlLgEJQ09mou475f8iV+Pt5qkDoCQIaeQl2vECYskZGZCTwgHm glTiO5M6YERtpqJ4oWi2aGEJupA63+xUTOIj4T+nss6jhZ3F0TeXIAc/EN3hhSvbLOZV dKsBk0BbRGNEzrHWvD+VIisuHoEuUiKEanAm1hUyqSgh1G+UJ+EYIip4OjCb3SNeb7ZW 9qDe6QwJ3EmK0WQ/xd3AAxpobEG82H911BcIb+VVyGGai58Bf1NyryWncjlkjrIaNJuA WeZHdzp4V7RbLQP8OU/pXFm01vx75cWqL7emnyCUYsbbq7W7af7I/UnW0jG5DGouIHgb ublw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cr3-20020a056a000f0300b00681ad13f7cbsi501953pfb.121.2023.06.28.06.42.18; Wed, 28 Jun 2023 06:42:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232078AbjF1Ngw (ORCPT + 99 others); Wed, 28 Jun 2023 09:36:52 -0400 Received: from bg4.exmail.qq.com ([43.154.54.12]:28837 "EHLO bg4.exmail.qq.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231555AbjF1Ngm (ORCPT ); Wed, 28 Jun 2023 09:36:42 -0400 X-QQ-mid: bizesmtp68t1687959386tfk2bzmm Received: from linux-lab-host.localdomain ( [116.30.129.193]) by bizesmtp.qq.com (ESMTP) with id ; Wed, 28 Jun 2023 21:36:24 +0800 (CST) X-QQ-SSF: 01200000000000D0V000000A0000000 X-QQ-FEAT: znfcQSa1hKaTu/Ha7ZQ1+V2pKPKgcx9n9xqgBcc+SOYAX8h6kkRGQ1foUBAeE kncvdehoqJs9juDKWFcfnf91v40tNFH0eQpUaw2087LC37IxT3o70ShZHzxi4qbU8j9f4Jf OjQC38WI2V8z38rxPbae6PLJ7uZIFfF0g0UWlirZRWVd7RAIUtlkOg0YAdNOG7nAc701TXf g0LWaq6rxYsTiXEGw5rt3bGahKrMMBKAxfA1Z220RnBaJ+5lds/fz4bTaMuZjVqYqdKB4vJ CYpmXXl+DIMJE2YeOLonC/ZLLx35FWmy08Mx6wHrLSe8+5+1VVxXmzDcJcJDFWG5D/R9cFA zUiGHVhsiY0vSp2vIBMvWK7tymqDyhYUVoV5h3yHFMWKg9BnCvyvWng45N1mA== X-QQ-GoodBg: 0 X-BIZMAIL-ID: 10609451260477278999 From: Zhangjin Wu To: thomas@t-8ch.de, w@1wt.eu Cc: falcon@tinylab.org, arnd@arndb.de, david.laight@aculab.com, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-riscv@lists.infradead.org Subject: [PATCH v5 08/14] tools/nolibc: arch-mips.h: shrink with SYSCALL_CLOBBERLIST Date: Wed, 28 Jun 2023 21:31:25 +0800 Message-Id: <9e932ce3fdba8ed744319b170ce094a916ac71be.1687957589.git.falcon@tinylab.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:tinylab.org:qybglogicsvrsz:qybglogicsvrsz3a-3 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org my_syscall share a same long clobber list, define a macro for them. Signed-off-by: Zhangjin Wu --- tools/include/nolibc/arch-mips.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/tools/include/nolibc/arch-mips.h b/tools/include/nolibc/arch-mips.h index 1fd1eedc12a6..55a9f01825e0 100644 --- a/tools/include/nolibc/arch-mips.h +++ b/tools/include/nolibc/arch-mips.h @@ -57,6 +57,10 @@ struct sys_stat_struct { * don't have to experience issues with register constraints. */ +#define SYSCALL_CLOBBERLIST \ + "memory", "cc", "at", "v1", "hi", "lo", \ + "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" + #define my_syscall0(num) \ ({ \ register long _num __asm__ ("v0") = (num); \ @@ -68,8 +72,7 @@ struct sys_stat_struct { "addiu $sp, $sp, 32\n" \ : "=r"(_num), "=r"(_arg4) \ : "r"(_num) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) @@ -87,8 +90,7 @@ struct sys_stat_struct { : "=r"(_num), "=r"(_arg4) \ : "0"(_num), \ "r"(_arg1) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) @@ -107,8 +109,7 @@ struct sys_stat_struct { : "=r"(_num), "=r"(_arg4) \ : "0"(_num), \ "r"(_arg1), "r"(_arg2) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) @@ -128,8 +129,7 @@ struct sys_stat_struct { : "=r"(_num), "=r"(_arg4) \ : "0"(_num), \ "r"(_arg1), "r"(_arg2), "r"(_arg3) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) @@ -149,8 +149,7 @@ struct sys_stat_struct { : "=r" (_num), "=r"(_arg4) \ : "0"(_num), \ "r"(_arg1), "r"(_arg2), "r"(_arg3), "r"(_arg4) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) @@ -172,8 +171,7 @@ struct sys_stat_struct { : "=r" (_num), "=r"(_arg4) \ : "0"(_num), \ "r"(_arg1), "r"(_arg2), "r"(_arg3), "r"(_arg4), "r"(_arg5) \ - : "memory", "cc", "at", "v1", "hi", "lo", \ - "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "t8", "t9" \ + : SYSCALL_CLOBBERLIST \ ); \ _arg4 ? -_num : _num; \ }) -- 2.25.1