From patchwork Thu Apr 6 21:54:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80565 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1334419vqo; Thu, 6 Apr 2023 15:16:37 -0700 (PDT) X-Google-Smtp-Source: AKy350ZV9weym6tzcKfjWasfQhr7eMwbvn7I4toGK33mObW5bnJAhcQ8Gquld5gbsQ88upN5RoCN X-Received: by 2002:aa7:df0e:0:b0:4fb:9372:f837 with SMTP id c14-20020aa7df0e000000b004fb9372f837mr28638edy.4.1680819397269; Thu, 06 Apr 2023 15:16:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680819397; cv=none; d=google.com; s=arc-20160816; b=HRGKxmfodcLlt4YswbJuexgv46M9T8IIO86jW3L4FW31WxXy5Z5sIlA7YDOfFXA2HZ kXd9B6pzboPfdYd56uJmKGMTB7CjCNzD5s0sUGULPcqQbNSRlR8coIGouvOWBra5gKty ZFIYLfT7BQnbEh+5TYAoRWo+b64biUsgxB/iEHC1pjZesByXScdDFitVqIzR33hqKI38 hIP0+56cRdGEsdZME+AFWwj7URe8fINCUmCJ2E4Zlaa5hlId2QYo7k5liRXTxtIvExrh vqUODFXw7pBhzUBTJVcwCxWlxnhFMVT4GnoNgXaVH0Wa4ReBlDpC/GpdyX9DuqHW+OqF ZDpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=fTZ3Ck1gIBKPUhmmKHwiTXO+aao2sw3BPU+LqJdTCjI=; b=UIr1EEN8TfMxjLVxfWgqT2zune1DIHLuK+jZuNPxbtzBUBbGbWxaeTPthIOyJCXW96 eFrJnwr1C95ptkEOd8WFR+kmNNA5vqoSZNJutHq9fGC+Q4n5jYE703PcTWY1SVDyF7wK 9gYcelifsP9EXlBt01wDGih7v4J/0HfQcfoTPYwsMj9oQboHdd14n6krLtAD913FS7QG w1R7ji+q/fFW2oBViNF2sjAwsrA+WYFggpJB4n8o8TBiE2BhWUGC3W5NKO5xuRzn77Pk iPDeq504kjxbtMpbH0+USU+taAV1CK4uwpcwClBtOUy1AR5EJ/6jdGf5kfwJis2TRy3H bm2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=Al7o5EBh; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id hr35-20020a1709073fa300b009333e2401d0si2919039ejc.48.2023.04.06.15.16.13; Thu, 06 Apr 2023 15:16:37 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=Al7o5EBh; 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 S238795AbjDFVzG (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231411AbjDFVy5 (ORCPT ); Thu, 6 Apr 2023 17:54:57 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 863C0AD02; Thu, 6 Apr 2023 14:54:55 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818092; bh=OcgnK0Ms7iKUc3TQe2cs92M6mnXoTMxMYhUD6BUEzjE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Al7o5EBhk9fVdcBzYPZEdaPJHwKO2ORtiubgQZ+/zeKtZH6A0vekJi37Qe1qWNhcX BWroDIsn/txxYpbjETqAP/Ac7n8RyicjGXxEpnC9/6ey/4FNmPKbKEsvX/Mt1bHOkK 0p8qAjfC4Opqv6OzMwTji3UZvGD7bwYMUnH2b1uw= Date: Thu, 06 Apr 2023 21:54:47 +0000 Subject: [PATCH v2 01/11] tools/nolibc: use standard __asm__ statements MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-1-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=1491; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=OcgnK0Ms7iKUc3TQe2cs92M6mnXoTMxMYhUD6BUEzjE=; b=/tLhsCm0o1ql7hDEB3NMPFg2Mw9aY+TDPxcepfXwZ3cfGVm7hLaY7Gftn6wrO02BFbkXeIaOh 4A+bOEa+Bq1BrgsxG2EClk9aWzQio0erKF1n/E6RFFmCOx/zDQXvZu/ X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762466880249543208?= X-GMAIL-MSGID: =?utf-8?q?1762466880249543208?= Most of the code was migrated to C99-conformant __asm__ statements before. It seems string.h was missed. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/string.h | 4 ++-- tools/testing/selftests/nolibc/nolibc-test.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/include/nolibc/string.h b/tools/include/nolibc/string.h index fffdaf6ff467..0c2e06c7c477 100644 --- a/tools/include/nolibc/string.h +++ b/tools/include/nolibc/string.h @@ -90,7 +90,7 @@ void *memset(void *dst, int b, size_t len) while (len--) { /* prevent gcc from recognizing memset() here */ - asm volatile(""); + __asm__ volatile(""); *(p++) = b; } return dst; @@ -139,7 +139,7 @@ size_t strlen(const char *str) size_t len; for (len = 0; str[len]; len++) - asm(""); + __asm__(""); return len; } diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c index 888da60eb5ba..e692be98973a 100644 --- a/tools/testing/selftests/nolibc/nolibc-test.c +++ b/tools/testing/selftests/nolibc/nolibc-test.c @@ -984,7 +984,7 @@ int main(int argc, char **argv, char **envp) #else else if (ioperm(0x501, 1, 1) == 0) #endif - asm volatile ("outb %%al, %%dx" :: "d"(0x501), "a"(0)); + __asm__ volatile ("outb %%al, %%dx" :: "d"(0x501), "a"(0)); /* if it does nothing, fall back to the regular panic */ #endif } From patchwork Thu Apr 6 21:54:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80558 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1332017vqo; Thu, 6 Apr 2023 15:11:30 -0700 (PDT) X-Google-Smtp-Source: AKy350YqQD7xJU0/sYJFcy47h/xWDPVBrOX1B29wMx6Da7ZbvNIVr4Yf6m2+Iw5rXcwjorVCSGQJ X-Received: by 2002:a17:906:11c6:b0:8af:3b78:315d with SMTP id o6-20020a17090611c600b008af3b78315dmr381761eja.23.1680819090256; Thu, 06 Apr 2023 15:11:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680819090; cv=none; d=google.com; s=arc-20160816; b=unwZz9oU3pjzorbNaoBQMLSFfSyYGznzmQFUvJDrUb3YCZEkn2KDQoc7yVWbVSLOop LtS639ug9OOw5VBZz4yn3EccxnwjTtmnxXA8WROx/peDTsMEBuMedojS4HjArPzM6e0A HSpm/gHm2Ru5g43NVHd3XVOHVzXAix4yPAokVssaNqpSq1dkl+sQfvtT6/9LnRQaDfz/ GUly5nlBbK8bMvTh/MB3ZsFM6VKCHzxbj0PSptWU+j2pYSH3W5Z1Tv7AfragMUUBR2Yw 5bYjQqb+K2vGKCiDS4pHxbJ0E2EmYdO55b0wNQl6SoCGmtWh72OAKCWBUcN2JlWcAcQ+ F+Vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=Dpbnz0LsA/LIUkZGjdFwqSha5KFssVRR/oVoS5muENw=; b=acEVHcPgte/NW29bDTLbzZWWxF/Bb3Cl3MMSkdsvbaqFDaoT+eekAfdMhNubsmVWUN B9QtkTwSUs+nBbVeRMvwrFJpFmR+LHTwCP2D0cGSY59lXcPIelE9CiH6VYTZvdSGz+cw 9BsAvaJ0j7ojvC0GA6anE3ys5tSGYARW7yomJTS+wImUo7SN/o+2ZFhMF1BLr2ZayXJ4 AO+NVEjrnaGPfJY/UT2gXHTJcD4jMAXwnoZB40+I6DsAj/HNfK7svjF8UM5pebwBZb7a tDB1DCu2lYUbzCNuW/GQLGc5SaFQy8Xkq3s15SofRUzGmo1VSV5EejBgD1tDsPQ7xyju OZ1A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=GJSX6AXB; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id td8-20020a1709078c8800b0094995ed7ce3si834661ejc.351.2023.04.06.15.10.33; Thu, 06 Apr 2023 15:11:30 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=GJSX6AXB; 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 S236697AbjDFVy6 (ORCPT + 99 others); Thu, 6 Apr 2023 17:54:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42222 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229586AbjDFVy4 (ORCPT ); Thu, 6 Apr 2023 17:54:56 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 087379EF3; Thu, 6 Apr 2023 14:54:54 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818092; bh=gdtMqD9cVgCQr6akdRRL11+XYs6brwtyfOnOQ2LQk4A=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=GJSX6AXBprEX2dSMIQSilbFhVVjV2o274TjhG8igjp7UpPVZySChxRUu5c621F0aQ 47xUd4MdnZ6mkh+CZEc0ODDC2t2aBG06HyO4KJkj33j+mt/A18r+cMcwy/AtsCVqxk mtCN7ZRgbeBJCAaIRgduLc0KmRj2oRuSAYnjmkm0= Date: Thu, 06 Apr 2023 21:54:48 +0000 Subject: [PATCH v2 02/11] tools/nolibc: use __inline__ syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-2-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3469; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=gdtMqD9cVgCQr6akdRRL11+XYs6brwtyfOnOQ2LQk4A=; b=EdYL72397iLYKjJXbVFusjZuMDs5WazWBO+FX53GIWWTa2/u6/0k/DKwgr0QK48GizOuIFjSc 2QO/U8hWSajAbRI0jryiCQjEJwIQxzWepWr3uS8jK2VPvKfmGHiIEse X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762466558411053165?= X-GMAIL-MSGID: =?utf-8?q?1762466558411053165?= When building in strict C89 mode the "inline" keyword is unknown. While "__inline__" is non-standard it is used by the kernel headers themselves. So the used compilers would have to support it or the users shim it with a #define. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/stdlib.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tools/include/nolibc/stdlib.h b/tools/include/nolibc/stdlib.h index 894c955d027e..902162f80337 100644 --- a/tools/include/nolibc/stdlib.h +++ b/tools/include/nolibc/stdlib.h @@ -102,7 +102,7 @@ char *_getenv(const char *name, char **environ) return NULL; } -static inline __attribute__((unused,always_inline)) +static __inline__ __attribute__((unused,always_inline)) char *getenv(const char *name) { extern char **environ; @@ -231,7 +231,7 @@ int utoh_r(unsigned long in, char *buffer) /* converts unsigned long to an hex string using the static itoa_buffer * and returns the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *utoh(unsigned long in) { utoh_r(in, itoa_buffer); @@ -293,7 +293,7 @@ int itoa_r(long in, char *buffer) /* for historical compatibility, same as above but returns the pointer to the * buffer. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *ltoa_r(long in, char *buffer) { itoa_r(in, buffer); @@ -303,7 +303,7 @@ char *ltoa_r(long in, char *buffer) /* converts long integer to a string using the static itoa_buffer and * returns the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *itoa(long in) { itoa_r(in, itoa_buffer); @@ -313,7 +313,7 @@ char *itoa(long in) /* converts long integer to a string using the static itoa_buffer and * returns the pointer to that string. Same as above, for compatibility. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *ltoa(long in) { itoa_r(in, itoa_buffer); @@ -323,7 +323,7 @@ char *ltoa(long in) /* converts unsigned long integer to a string using the static itoa_buffer * and returns the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *utoa(unsigned long in) { utoa_r(in, itoa_buffer); @@ -367,7 +367,7 @@ int u64toh_r(uint64_t in, char *buffer) /* converts uint64_t to an hex string using the static itoa_buffer and * returns the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *u64toh(uint64_t in) { u64toh_r(in, itoa_buffer); @@ -429,7 +429,7 @@ int i64toa_r(int64_t in, char *buffer) /* converts int64_t to a string using the static itoa_buffer and returns * the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *i64toa(int64_t in) { i64toa_r(in, itoa_buffer); @@ -439,7 +439,7 @@ char *i64toa(int64_t in) /* converts uint64_t to a string using the static itoa_buffer and returns * the pointer to that string. */ -static inline __attribute__((unused)) +static __inline__ __attribute__((unused)) char *u64toa(uint64_t in) { u64toa_r(in, itoa_buffer); From patchwork Thu Apr 6 21:54:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80547 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1323742vqo; Thu, 6 Apr 2023 14:56:47 -0700 (PDT) X-Google-Smtp-Source: AKy350YSHrSSwuf7e6Z7x5TioOC0pSFF9KEmW0QfAhxEqiWO1FKYLdS8+9LGmm0azsMBxS6gqnkO X-Received: by 2002:a17:902:e84f:b0:1a1:953b:9559 with SMTP id t15-20020a170902e84f00b001a1953b9559mr956453plg.3.1680818207478; Thu, 06 Apr 2023 14:56:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818207; cv=none; d=google.com; s=arc-20160816; b=iOguad2fur5mr56buMQzqPGy1B5bOGf3GUrd1A6+A94T+nP2O3m930V4hsHaIMA4lm moD9VQdRI/LZWkbBwGU0nZTkkBSalC4Ujaqb3dcqlrEMIlEoYgImblFW8Ef7atuAl78u v0Lt2x+jAoQGMG/oR00rOmGs2Wk/w5Aq/NFoDa/Scs7bd0CUxhSl2Y4dKTPNBU8slbGj JU85GY2MlA05MBrquSOLCM9dz2z7EXySTgefmcqpxHEtXYgzQL59YGRo30qVzmEH1XL5 8RnNlaiKhP9qM7FR2fBe8GDKvSWQdXdDhug+Fy4bSH2zmLoG2LHi0WN84kRGUYsjbfn3 gPtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=y9o1J9bLMyCJYubuizQrzXCp1T3jhPGOs4L+J5ibUtA=; b=UuKYHuGXaFxA9YXghMlkBPzpEG3qjS/QsLdzO1Uh+v8yl6YQb9fqPlbOqL0eCjzHfx uEu6wjrOmWV0mGom4LNJB3PZ4c4/l3HObSSPYV46dL7V/LtkWsSRycyicYNGv5S0EchG IDUAPq7pgZ83AidC5/h2/95umKaAdAdM3v+hVC5U9J2VL7/TMV+enmorb+vmfx6VgrBG OCOWmVpNVNBVtvV0TabTHJm4xPxJrmU1dhyIvFHlymvk8Z4hfo+d51m7etqQh6dJ+tvR WwT4ObXTyc2abz6zi1A7rogfas4xSDuDVUa1fibGVddFHDiHQkC3BVDOd0GtntLl6ACd L70Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=EfrlOckN; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u4-20020a170902e5c400b001a18307d78asi2714367plf.491.2023.04.06.14.56.34; Thu, 06 Apr 2023 14:56:47 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=EfrlOckN; 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 S238972AbjDFVzJ (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42234 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232901AbjDFVy5 (ORCPT ); Thu, 6 Apr 2023 17:54:57 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12A15A5C5; Thu, 6 Apr 2023 14:54:54 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818092; bh=NbJkCnxIzyUQDNJwE58LVaz04AmILAiIMxaWQbvg4fY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=EfrlOckNquamOCpt2Qg07OWnXl+Q7E34MZf3dT2VlRwniAdB8ixGkgyTthGTtCdlj sXjQ8D03U322k2LkFvj2h3GeVTh1aXxkctwx/1cUjWA9oKIjaUvnCK6cM69vummbtC AgRqVseW4yRLIdYIDjMp3X1BkxHEJbO1p/5fRpUM= Date: Thu, 06 Apr 2023 21:54:49 +0000 Subject: [PATCH v2 03/11] tools/nolibc: i386: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-3-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3632; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=NbJkCnxIzyUQDNJwE58LVaz04AmILAiIMxaWQbvg4fY=; b=zz54OEuctYdVaxu5sItH81WYtOWXKLseoGIdt2bcvyzxasrhfgF78XdNqnmA3LvEWeszpYYcW AUfR4FA/29OBIoU/FG3QULbHJpejJgTqLhegZTKvfTzrcjBSbH/309m X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465632514876167?= X-GMAIL-MSGID: =?utf-8?q?1762465632514876167?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-i386.h | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/include/nolibc/arch-i386.h b/tools/include/nolibc/arch-i386.h index 2d98d78fd3f3..7c41897a08ce 100644 --- a/tools/include/nolibc/arch-i386.h +++ b/tools/include/nolibc/arch-i386.h @@ -194,31 +194,31 @@ void __attribute__((weak,noreturn,optimize("omit-frame-pointer"),no_stack_protec { __asm__ volatile ( #ifdef NOLIBC_STACKPROTECTOR - "call __stack_chk_init\n" // initialize stack protector + "call __stack_chk_init\n" /* initialize stack protector */ #endif - "pop %eax\n" // argc (first arg, %eax) - "mov %esp, %ebx\n" // argv[] (second arg, %ebx) - "lea 4(%ebx,%eax,4),%ecx\n" // then a NULL then envp (third arg, %ecx) - "mov %ecx, environ\n" // save environ - "xor %ebp, %ebp\n" // zero the stack frame - "mov %ecx, %edx\n" // search for auxv (follows NULL after last env) + "pop %eax\n" /* argc (first arg, %eax) */ + "mov %esp, %ebx\n" /* argv[] (second arg, %ebx) */ + "lea 4(%ebx,%eax,4),%ecx\n" /* then a NULL then envp (third arg, %ecx) */ + "mov %ecx, environ\n" /* save environ */ + "xor %ebp, %ebp\n" /* zero the stack frame */ + "mov %ecx, %edx\n" /* search for auxv (follows NULL after last env) */ "0:\n" - "add $4, %edx\n" // search for auxv using edx, it follows the - "cmp -4(%edx), %ebp\n" // ... NULL after last env (ebp is zero here) + "add $4, %edx\n" /* search for auxv using edx, it follows the */ + "cmp -4(%edx), %ebp\n" /* ... NULL after last env (ebp is zero here) */ "jnz 0b\n" - "mov %edx, _auxv\n" // save it into _auxv - "and $-16, %esp\n" // x86 ABI : esp must be 16-byte aligned before - "sub $4, %esp\n" // the call instruction (args are aligned) - "push %ecx\n" // push all registers on the stack so that we - "push %ebx\n" // support both regparm and plain stack modes + "mov %edx, _auxv\n" /* save it into _auxv */ + "and $-16, %esp\n" /* x86 ABI : esp must be 16-byte aligned before */ + "sub $4, %esp\n" /* the call instruction (args are aligned) */ + "push %ecx\n" /* push all registers on the stack so that we */ + "push %ebx\n" /* support both regparm and plain stack modes */ "push %eax\n" - "call main\n" // main() returns the status code in %eax - "mov %eax, %ebx\n" // retrieve exit code (32-bit int) - "movl $1, %eax\n" // NR_exit == 1 - "int $0x80\n" // exit now - "hlt\n" // ensure it does not + "call main\n" /* main() returns the status code in %eax */ + "mov %eax, %ebx\n" /* retrieve exit code (32-bit int) */ + "movl $1, %eax\n" /* NR_exit == 1 */ + "int $0x80\n" /* exit now */ + "hlt\n" /* ensure it does not */ ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_I386_H +#endif /* _NOLIBC_ARCH_I386_H */ From patchwork Thu Apr 6 21:54:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80546 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1323741vqo; Thu, 6 Apr 2023 14:56:46 -0700 (PDT) X-Google-Smtp-Source: AKy350bmb+mgM/lP0vH9AUxxMMQuhfuDpxFwJmsPx8opoeYqUiKJoYLMmZKj+xGwR6R0QfYdLorx X-Received: by 2002:a17:90a:3de1:b0:237:44c3:df0b with SMTP id i88-20020a17090a3de100b0023744c3df0bmr15424pjc.32.1680818206657; Thu, 06 Apr 2023 14:56:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818206; cv=none; d=google.com; s=arc-20160816; b=rlX5PV4xyGq03TkeFc4qNvkrj+PJGJfbAoB63xc10QPd4k/yAL9uEPBIHC7Auz+JGi cbuH5ksOTu8lgBSOpbmC0cqVerXOMKMgJUQkUd5kKVyPtTHxWqS8r+SZbM96hEpG+avr 8Pej4YDRbt2Kbq4R+/JqGtj+sLRGCVGLd+WgB2A8++5s7tV3a4hz+SGA5N4yRAsFofpa +bcKorBd5iVDyujjng+AEPn23zIY/QTfFo6AdsUOmqX8f+6gEczgh4PCJNpLcZN6XvuT HUkQUgwfTs7y+H7mWAY3/19eluc5gUoMVspTEeZDTXp49OJdg2V1nZ2dlUeOnYa6ONwL q2LQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=LEASzUmKot6hbvLjW4HS/lZu+w3jmqOxQ1lULFQSMLs=; b=BxgvTKv8xLRNcy6IAKYGH6mvk+DaZyXf7akvEH+iuH1xWOhs2JWFb/oqDlGFMl9k9N lcab3sAygXsRCRRN72N2mjuE5sTSJQyeE6Qrvls30f+PpyR3NwO+cyA/mJxxo3jXsT47 6oQyQd46nqvh07JnuYyv0tFn0gHwqdqs0+IO/nZIIJEqL/9NnHTY0JzPKpkx/vy2z83b Q7cbJEe/WU2UnDQCx1DMH+6rLwKxK9SaFT+7aDpZ/5qtlysdLWKpwyOzrQqEq3KR1hxe zCC+7mzL9AJVjurlXEORShSwOpOeyU2YgJO1fKkZX+fhUmyG8A9qruAdGpQMyTcufiaZ hMnA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=YhGVNWFG; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u2-20020a63ef02000000b004fba312c233si2181701pgh.413.2023.04.06.14.56.34; Thu, 06 Apr 2023 14:56:46 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=YhGVNWFG; 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 S238717AbjDFVzD (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42236 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230179AbjDFVy5 (ORCPT ); Thu, 6 Apr 2023 17:54:57 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12FC2A5FC; Thu, 6 Apr 2023 14:54:55 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818092; bh=3MGSvpy8BgTYO3uiUf6A95riQqbsUtkLORdyUz+rY5k=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=YhGVNWFGblJqJWs5/gQoihyXPPCDuEPXbZVJP3XV1KRglAlmIcWaBwLqf/H8CJ61E h516d2nFvm/zpOQzOkzlUm9KDG/erlCOyqOb1eUYQ8TrgbiDK0AktAMBIxMJpHXeyb htTcz/aZN9FBqV+Ilblc8tuBMwE0h+70rHE1fvp0= Date: Thu, 06 Apr 2023 21:54:50 +0000 Subject: [PATCH v2 04/11] tools/nolibc: x86_64: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-4-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3259; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=3MGSvpy8BgTYO3uiUf6A95riQqbsUtkLORdyUz+rY5k=; b=D61vWCH2rhmbgKzdGMopqMSfr6vlwxQF6lgD+EmocanAw8HUPZ5lsikNV4rCjvpy4Ap9DnS3n UqAEckRLu2hC/F8gM0MCVDKvCw3U1fBZeVqtWY94dhtzAONYuK4jsiW X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465631428783715?= X-GMAIL-MSGID: =?utf-8?q?1762465631428783715?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-x86_64.h | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/tools/include/nolibc/arch-x86_64.h b/tools/include/nolibc/arch-x86_64.h index f7f2a11d4c3b..d98f6c89d143 100644 --- a/tools/include/nolibc/arch-x86_64.h +++ b/tools/include/nolibc/arch-x86_64.h @@ -194,27 +194,27 @@ void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) _start(void) { __asm__ volatile ( #ifdef NOLIBC_STACKPROTECTOR - "call __stack_chk_init\n" // initialize stack protector + "call __stack_chk_init\n" /* initialize stack protector */ #endif - "pop %rdi\n" // argc (first arg, %rdi) - "mov %rsp, %rsi\n" // argv[] (second arg, %rsi) - "lea 8(%rsi,%rdi,8),%rdx\n" // then a NULL then envp (third arg, %rdx) - "mov %rdx, environ\n" // save environ - "xor %ebp, %ebp\n" // zero the stack frame - "mov %rdx, %rax\n" // search for auxv (follows NULL after last env) + "pop %rdi\n" /* argc (first arg, %rdi) */ + "mov %rsp, %rsi\n" /* argv[] (second arg, %rsi) */ + "lea 8(%rsi,%rdi,8),%rdx\n" /* then a NULL then envp (third arg, %rdx) */ + "mov %rdx, environ\n" /* save environ */ + "xor %ebp, %ebp\n" /* zero the stack frame */ + "mov %rdx, %rax\n" /* search for auxv (follows NULL after last env) */ "0:\n" - "add $8, %rax\n" // search for auxv using rax, it follows the - "cmp -8(%rax), %rbp\n" // ... NULL after last env (rbp is zero here) + "add $8, %rax\n" /* search for auxv using rax, it follows the */ + "cmp -8(%rax), %rbp\n" /* ... NULL after last env (rbp is zero here) */ "jnz 0b\n" - "mov %rax, _auxv\n" // save it into _auxv - "and $-16, %rsp\n" // x86 ABI : esp must be 16-byte aligned before call - "call main\n" // main() returns the status code, we'll exit with it. - "mov %eax, %edi\n" // retrieve exit code (32 bit) - "mov $60, %eax\n" // NR_exit == 60 - "syscall\n" // really exit - "hlt\n" // ensure it does not return + "mov %rax, _auxv\n" /* save it into _auxv */ + "and $-16, %rsp\n" /* x86 ABI : esp must be 16-byte aligned before call */ + "call main\n" /* main() returns the status code, we'll exit with it. */ + "mov %eax, %edi\n" /* retrieve exit code (32 bit) */ + "mov $60, %eax\n" /* NR_exit == 60 */ + "syscall\n" /* really exit */ + "hlt\n" /* ensure it does not return */ ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_X86_64_H +#endif /* _NOLIBC_ARCH_X86_64_H */ From patchwork Thu Apr 6 21:54:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80550 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1324155vqo; Thu, 6 Apr 2023 14:57:48 -0700 (PDT) X-Google-Smtp-Source: AKy350ZSTdFew9UXwYpNpy9EqgabI9ERHhOPqkH5hwgAF/mzk+YkBBcNYUoNBZFEkFLtTJuIIhHb X-Received: by 2002:a05:6a20:a914:b0:d5:f7f5:85e4 with SMTP id cd20-20020a056a20a91400b000d5f7f585e4mr883194pzb.22.1680818267974; Thu, 06 Apr 2023 14:57:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818267; cv=none; d=google.com; s=arc-20160816; b=c6wuW5BUH/hpT0le0W2si2i/AFyHoXlr5WktPaeASbJGxHaM1Dx2D/yUEsZUFm3XtZ jDWnkZnvcLX16wTuZRjY0jpSTrDxltiOh0wQZmqjIpqXQDwh6GpV1/5JphmVyXzHoN5r REL49CL/2x+Zf7PfJk6JwtrTM7v/qElbXotTgdhDRMKvPZBLd9hK0Jg3fapmaD+zsLPV 1hI4dCU5YTkd2d13LPnI1b9ZUHgooolGLxg4/Mxhk745Es//LUx2s1ONDIW2VPAPLux1 2UyMVdsd+YQ62TfXXqKz7Bk3FAi971JAzglBz72NRKS9TTq4kCIY9zVR31KCp9pl52B/ j/9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=VbJ/2Gy9/3JeRVZ2XofX23hn2XnGQ6DqjmXBL9fr80Q=; b=ydmBEcjmFd/BVxYvLqDcSHs9OA1Ni1rYoK2lFHeYPgkBkBpXQ3yDVjh5cLtJfmPmsj RvIcigt7Yu3GeB06llVwiOVlVH8usx+HtcKQ7cnp0S++caoPysxiyl1Ll6VV9Rv5E4Oh Ol4Lf4z60+qNuIOKtEy9gAwzytAUqhTlhc5RYku5D9mHzkQY8xVLL5e9wOGFxab8SPAb H/BGw4fcS8KFGSoBAbdfqtvbgDqvZhOc9sm6WCywUlNdbP+Buwrb7Fp3nCVaCqCoWoyZ p3KuXGBJNgEDSRq/e2/C71o9FFNeQbTNUjJIqkGngkvbo1dwwNiaMcmKEQ2dtv1VvWSQ zNDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=Bm4BZb8G; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 204-20020a6300d5000000b0051324d667adsi2027396pga.889.2023.04.06.14.57.15; Thu, 06 Apr 2023 14:57:47 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=Bm4BZb8G; 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 S239229AbjDFVzO (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42280 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237377AbjDFVy7 (ORCPT ); Thu, 6 Apr 2023 17:54:59 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 39E18A5FC; Thu, 6 Apr 2023 14:54:58 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818094; bh=ivxkrkfr/Vz1LAtJgf52WLXoMkNfU0tK0Pz7f9le2Yc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Bm4BZb8GowdJfVz+QTa0kDUjQVG4JNtoLAHtV7dyIDAGx806KXE3j61OLRAptMCY4 ++NW2oopLQcoYo1MbVL0sBpgsyTEvSEJKPYkQoHTJqZyvuYnwGgBR4JfC+rcbhXtKf OThcesSem4AdHBsztxsrlibsHNS32UTHLxXNq/kE= Date: Thu, 06 Apr 2023 21:54:51 +0000 Subject: [PATCH v2 05/11] tools/nolibc: riscv: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-5-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3358; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=ivxkrkfr/Vz1LAtJgf52WLXoMkNfU0tK0Pz7f9le2Yc=; b=b1N/Dkx1yViUzSy6LzMrmFZOLq0MQqxbkgmMFxlBOMJP3HJEwJ1jYJ2y70l044ZCNrcOy2vSI 68nXdzBuMSNDo95qMOER4oS3/JwfMLSEXf6EKjicJ/eCNqtfB/w6z/A X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465696024305322?= X-GMAIL-MSGID: =?utf-8?q?1762465696024305322?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-riscv.h | 40 +++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/tools/include/nolibc/arch-riscv.h b/tools/include/nolibc/arch-riscv.h index e197fcb10ac0..0d5f15fdedc4 100644 --- a/tools/include/nolibc/arch-riscv.h +++ b/tools/include/nolibc/arch-riscv.h @@ -181,28 +181,28 @@ void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) _start(void) ".option norelax\n" "lla gp, __global_pointer$\n" ".option pop\n" - "lw a0, 0(sp)\n" // argc (a0) was in the stack - "add a1, sp, "SZREG"\n" // argv (a1) = sp - "slli a2, a0, "PTRLOG"\n" // envp (a2) = SZREG*argc ... - "add a2, a2, "SZREG"\n" // + SZREG (skip null) - "add a2,a2,a1\n" // + argv - - "add a3, a2, zero\n" // iterate a3 over envp to find auxv (after NULL) - "0:\n" // do { - "ld a4, 0(a3)\n" // a4 = *a3; - "add a3, a3, "SZREG"\n" // a3 += sizeof(void*); - "bne a4, zero, 0b\n" // } while (a4); - "lui a4, %hi(_auxv)\n" // a4 = &_auxv (high bits) - "sd a3, %lo(_auxv)(a4)\n" // store a3 into _auxv - - "lui a3, %hi(environ)\n" // a3 = &environ (high bits) - "sd a2,%lo(environ)(a3)\n" // store envp(a2) into environ - "andi sp,a1,-16\n" // sp must be 16-byte aligned - "call main\n" // main() returns the status code, we'll exit with it. - "li a7, 93\n" // NR_exit == 93 + "lw a0, 0(sp)\n" /* argc (a0) was in the stack */ + "add a1, sp, "SZREG"\n" /* argv (a1) = sp */ + "slli a2, a0, "PTRLOG"\n" /* envp (a2) = SZREG*argc ... */ + "add a2, a2, "SZREG"\n" /* + SZREG (skip null) */ + "add a2,a2,a1\n" /* + argv */ + + "add a3, a2, zero\n" /* iterate a3 over envp to find auxv (after NULL) */ + "0:\n" /* do { */ + "ld a4, 0(a3)\n" /* a4 = *a3; */ + "add a3, a3, "SZREG"\n" /* a3 += sizeof(void*); */ + "bne a4, zero, 0b\n" /* } while (a4); */ + "lui a4, %hi(_auxv)\n" /* a4 = &_auxv (high bits) */ + "sd a3, %lo(_auxv)(a4)\n" /* store a3 into _auxv */ + + "lui a3, %hi(environ)\n" /* a3 = &environ (high bits) */ + "sd a2,%lo(environ)(a3)\n" /* store envp(a2) into environ */ + "andi sp,a1,-16\n" /* sp must be 16-byte aligned */ + "call main\n" /* main() returns the status code, we'll exit with it. */ + "li a7, 93\n" /* NR_exit == 93 */ "ecall\n" ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_RISCV_H +#endif /* _NOLIBC_ARCH_RISCV_H */ From patchwork Thu Apr 6 21:54:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80549 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1323746vqo; Thu, 6 Apr 2023 14:56:49 -0700 (PDT) X-Google-Smtp-Source: AKy350bvtlQns9wZODMpa4cr8Xz8alK7EUUhQipnPHho4fRYj21z//72YuHJZHBJ4jcFI0sS0JhG X-Received: by 2002:a05:6a20:8c18:b0:de:13c4:5529 with SMTP id j24-20020a056a208c1800b000de13c45529mr647066pzh.62.1680818209042; Thu, 06 Apr 2023 14:56:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818209; cv=none; d=google.com; s=arc-20160816; b=Xj2MAqDmUxSN1YLU+GZd3ZxEDuBp8PclcttNoTQPNacEnJnHvzoK7s8/J5zkieZuOg rNT8K4lb9y9qpviWBrlsAdu2H2hsG4r3gOEkjwIXEmamuxfeGCFVm2vMaQJPbXlnZS9P /Y7ioXPYWDv+2zwblI3pP4gRef2eFI+UaPvfkKF4HvRzevghMF8pcfN6Z8WgnjnVD8ab bhT0LmuoqKRbwI6PYAZ6m0Rw6IXyS8Pcuita9maJIsGvPDY+siuxKD+8T/etW0gwY2tb 3/QphxCnzXHC1YLiO93yGm6gwneSTlwxHxRGtANpBKkYjSQL6uUuzYjNit3wtxUaUuVv iOww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=VLffb6wy0FM6P3KdqUGC1S6N7f2+mQkgWpiEGqcV6yE=; b=VLueiXmNDxFWgo3mFYxU92ym9hJ2RYrnm0JvpY5NU9g6ZbxoVapDKPh83fWMsa1i/d +pvyxzDsZPNlNTb+4RSG92OUWV8hh7KVS+eYJPUIaOJ8g3dIe1o74P06g1ieu22XZjX0 17FnT5VdiKXCn4TDMBHhZLatFZONlsITffkvOdSUE2zFJmqsB4wzOYVJDxCnWbz6bMp1 W1Q06EFq4LH/Q5IfWlFbCSkGnpHYyT5Q+ZOjzeyPt9ss47gcMgyH5lqABuaKyDNtqPv/ Bi1sngmeQUqsKEG3fUfjVsQyaFnrf5oz+HA31eNwmhfbvG+pBXNc7wVVSqcZL/Maibwr cUZw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=icuaixsv; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 204-20020a6300d5000000b0051324d667adsi2027396pga.889.2023.04.06.14.56.35; Thu, 06 Apr 2023 14:56:49 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=icuaixsv; 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 S239118AbjDFVzM (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42282 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237394AbjDFVy7 (ORCPT ); Thu, 6 Apr 2023 17:54:59 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 392729EF3; Thu, 6 Apr 2023 14:54:58 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818093; bh=au6cL+xeGyBx2JuVA4zq1izj1V8MrbDP7tzalqdO45Y=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=icuaixsvpSV0QsITo91zw6WlzMxn6d38otakt/P+NhT01D90wXdkdo2jZ/qXiNcQl 16bvVBbPxX8YRXtltRmQO4EnRZ/iR5q0+wHRvR2r2oMda9o48tqXEUAbqdiRIHCKCw BLBSdEUVTYVVTkwAsHumsrck8m4vqa0GoXIG6Lw4= Date: Thu, 06 Apr 2023 21:54:52 +0000 Subject: [PATCH v2 06/11] tools/nolibc: aarch64: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-6-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=2890; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=au6cL+xeGyBx2JuVA4zq1izj1V8MrbDP7tzalqdO45Y=; b=t6HSMSCHAwNiIiOY7OcGU1mmEiEBHqEReYY/H61cyqGGWnhwXtSJdDQ4CjdbBkKiv4VA5WfgG k+n9qJ57Wl9Cjdn6gdhID3hJikA0A3fo/L1pF4QIHmnDnwOz0E/ryv0 X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465634141742810?= X-GMAIL-MSGID: =?utf-8?q?1762465634141742810?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-aarch64.h | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/tools/include/nolibc/arch-aarch64.h b/tools/include/nolibc/arch-aarch64.h index 383baddef701..76ef26520c85 100644 --- a/tools/include/nolibc/arch-aarch64.h +++ b/tools/include/nolibc/arch-aarch64.h @@ -176,24 +176,24 @@ const unsigned long *_auxv __attribute__((weak)); void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) _start(void) { __asm__ volatile ( - "ldr x0, [sp]\n" // argc (x0) was in the stack - "add x1, sp, 8\n" // argv (x1) = sp - "lsl x2, x0, 3\n" // envp (x2) = 8*argc ... - "add x2, x2, 8\n" // + 8 (skip null) - "add x2, x2, x1\n" // + argv - "adrp x3, environ\n" // x3 = &environ (high bits) - "str x2, [x3, #:lo12:environ]\n" // store envp into environ - "mov x4, x2\n" // search for auxv (follows NULL after last env) + "ldr x0, [sp]\n" /* argc (x0) was in the stack */ + "add x1, sp, 8\n" /* argv (x1) = sp */ + "lsl x2, x0, 3\n" /* envp (x2) = 8*argc ... */ + "add x2, x2, 8\n" /* + 8 (skip null) */ + "add x2, x2, x1\n" /* + argv */ + "adrp x3, environ\n" /* x3 = &environ (high bits) */ + "str x2, [x3, #:lo12:environ]\n" /* store envp into environ */ + "mov x4, x2\n" /* search for auxv (follows NULL after last env) */ "0:\n" - "ldr x5, [x4], 8\n" // x5 = *x4; x4 += 8 - "cbnz x5, 0b\n" // and stop at NULL after last env - "adrp x3, _auxv\n" // x3 = &_auxv (high bits) - "str x4, [x3, #:lo12:_auxv]\n" // store x4 into _auxv - "and sp, x1, -16\n" // sp must be 16-byte aligned in the callee - "bl main\n" // main() returns the status code, we'll exit with it. - "mov x8, 93\n" // NR_exit == 93 + "ldr x5, [x4], 8\n" /* x5 = *x4; x4 += 8 */ + "cbnz x5, 0b\n" /* and stop at NULL after last env */ + "adrp x3, _auxv\n" /* x3 = &_auxv (high bits) */ + "str x4, [x3, #:lo12:_auxv]\n" /* store x4 into _auxv */ + "and sp, x1, -16\n" /* sp must be 16-byte aligned in the callee */ + "bl main\n" /* main() returns the status code, we'll exit with it. */ + "mov x8, 93\n" /* NR_exit == 93 */ "svc #0\n" ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_AARCH64_H +#endif /* _NOLIBC_ARCH_AARCH64_H */ From patchwork Thu Apr 6 21:54:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80548 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1323745vqo; Thu, 6 Apr 2023 14:56:48 -0700 (PDT) X-Google-Smtp-Source: AKy350abv0CqEoDbcG/hlDHcpQb+fcd82hKRpPqpmjcEMhHKEv4Dlh4l5cKOo2RorhGder+NBb+2 X-Received: by 2002:a17:90b:4c41:b0:237:c5cc:15bf with SMTP id np1-20020a17090b4c4100b00237c5cc15bfmr94966pjb.13.1680818208460; Thu, 06 Apr 2023 14:56:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818208; cv=none; d=google.com; s=arc-20160816; b=euGDK6c0leNl4nG/W8SNM9V1KZYKxZOJm25Lm3orV+CLc56hieR458EdrhBv7OWaWW fhjzt89SnN68y/KRO6ZbGXk/HweUmKLhRbuA6+Toma5dSZwCHVe65vV1OIvbkxe5XaIc TP/EtyBa2sK8si2j0YBYEkA/+SGYM0GVi6oFTWxjruabgMiqtw4WSKfHBKCRE35F9sCF 3E8zMp+d4OS5BHQkk8/Y9trQ2qN49ehFcGf/whOoXOIvty5E20eQAcaVyw9N+hH0wS4Z ErVJ/cpceuS+XkWda7uwjJxaILuZLEl+Y7W5+lNHR6ZG/nBlnhy+MSXbI0+0TyIzFAfV 7Qng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=d8bwNWYnN0jcN3r9OkbTE1wmYrZZ4mFaiQ/PG4MPhk4=; b=kO4UJYD4w73WsrxbHaKqkuWuZFlBqkSDc+q7oIG48ITNp+Y9B748+S+KXlqyIRjt0R tZvgqVWO7a4txXTfdjqMz275vGcx+AD6msCeGus4cIv70OZ8VtT4o4lJWcvPQEe6gYTE e48pyrora0CaERJZLBsiXP4W5rcO/WZAUJ0rngEXE4tiTALWp0Hw1hVFRm4cIbSOiWt6 aT2uPoXmqND+Y83XDKEjsCKupGHFqVgrGEGihUZ9TjpnPTTfmiXDerDH2l+HdJHLOYrH Hj7ogb+FpOp+HHypqpq6DNzNyd3W54wP7+oWw1gYkBedP4CJozVswR8Xp9w7Fi+Jnjf6 Brhw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=knWR5xTc; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m2-20020a17090a34c200b002368de9f45esi4651213pjf.9.2023.04.06.14.56.35; Thu, 06 Apr 2023 14:56:48 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=knWR5xTc; 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 S239303AbjDFVzQ (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42300 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236370AbjDFVy7 (ORCPT ); Thu, 6 Apr 2023 17:54:59 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 57F95A5FF; Thu, 6 Apr 2023 14:54:58 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818094; bh=Rf7Jc56HjkpWDXljnPpY5bO94Kjcb/DhOAnDyw2YeEs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=knWR5xTcOlKFmcstTjTjzwApExaXWn9NSBrkqKAWsEJSeW5cnYUTZ04QJslMoL/MB l0L6bscC6c9V/rD502l7smuFCU5v5R8guvoESxeSkfYj3Xl/tzhpkX9PyYTUwp7Hg0 w2RhXnhqDkTYmpuYZ0T9JQfGlRv5y7PPedhUif3g= Date: Thu, 06 Apr 2023 21:54:53 +0000 Subject: [PATCH v2 07/11] tools/nolibc: arm: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-7-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3900; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=Rf7Jc56HjkpWDXljnPpY5bO94Kjcb/DhOAnDyw2YeEs=; b=YwG20llV8yOPYg5+PPSwm+Ukx9mn6MnyiPWyK7kOfNaoTB57yX1mRwtVZw7dwhGZG4Tp6pv8w SLMFUB9v5FvCaHdplAPl4PWYUNXfYo7ONwRjPNPAxSdO6C6ENl7+lfo X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465633679279532?= X-GMAIL-MSGID: =?utf-8?q?1762465633679279532?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-arm.h | 42 ++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/tools/include/nolibc/arch-arm.h b/tools/include/nolibc/arch-arm.h index 42499f23e73c..9fc926f5fbae 100644 --- a/tools/include/nolibc/arch-arm.h +++ b/tools/include/nolibc/arch-arm.h @@ -203,34 +203,34 @@ const unsigned long *_auxv __attribute__((weak)); void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) _start(void) { __asm__ volatile ( - "pop {%r0}\n" // argc was in the stack - "mov %r1, %sp\n" // argv = sp + "pop {%r0}\n" /* argc was in the stack */ + "mov %r1, %sp\n" /* argv = sp */ - "add %r2, %r0, $1\n" // envp = (argc + 1) ... - "lsl %r2, %r2, $2\n" // * 4 ... - "add %r2, %r2, %r1\n" // + argv - "ldr %r3, 1f\n" // r3 = &environ (see below) - "str %r2, [r3]\n" // store envp into environ + "add %r2, %r0, $1\n" /* envp = (argc + 1) ... */ + "lsl %r2, %r2, $2\n" /* * 4 ... */ + "add %r2, %r2, %r1\n" /* + argv */ + "ldr %r3, 1f\n" /* r3 = &environ (see below) */ + "str %r2, [r3]\n" /* store envp into environ */ - "mov r4, r2\n" // search for auxv (follows NULL after last env) + "mov r4, r2\n" /* search for auxv (follows NULL after last env) */ "0:\n" - "mov r5, r4\n" // r5 = r4 - "add r4, r4, #4\n" // r4 += 4 - "ldr r5,[r5]\n" // r5 = *r5 = *(r4-4) - "cmp r5, #0\n" // and stop at NULL after last env + "mov r5, r4\n" /* r5 = r4 */ + "add r4, r4, #4\n" /* r4 += 4 */ + "ldr r5,[r5]\n" /* r5 = *r5 = *(r4-4) */ + "cmp r5, #0\n" /* and stop at NULL after last env */ "bne 0b\n" - "ldr %r3, 2f\n" // r3 = &_auxv (low bits) - "str r4, [r3]\n" // store r4 into _auxv + "ldr %r3, 2f\n" /* r3 = &_auxv (low bits) */ + "str r4, [r3]\n" /* store r4 into _auxv */ - "mov %r3, $8\n" // AAPCS : sp must be 8-byte aligned in the - "neg %r3, %r3\n" // callee, and bl doesn't push (lr=pc) - "and %r3, %r3, %r1\n" // so we do sp = r1(=sp) & r3(=-8); - "mov %sp, %r3\n" // + "mov %r3, $8\n" /* AAPCS : sp must be 8-byte aligned in the */ + "neg %r3, %r3\n" /* callee, and bl doesn't push (lr=pc) */ + "and %r3, %r3, %r1\n" /* so we do sp = r1(=sp) & r3(=-8); */ + "mov %sp, %r3\n" - "bl main\n" // main() returns the status code, we'll exit with it. - "movs r7, $1\n" // NR_exit == 1 + "bl main\n" /* main() returns the status code, we'll exit with it. */ + "movs r7, $1\n" /* NR_exit == 1 */ "svc $0x00\n" - ".align 2\n" // below are the pointers to a few variables + ".align 2\n" /* below are the pointers to a few variables */ "1:\n" ".word environ\n" "2:\n" From patchwork Thu Apr 6 21:54:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80551 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1324225vqo; Thu, 6 Apr 2023 14:57:57 -0700 (PDT) X-Google-Smtp-Source: AKy350YaKSdyPbiQVVrXEIXbkEuj+/2UjWJWKA6wEYWLBKmN27C5RE44cJ+615vKdTPTBV8feWbY X-Received: by 2002:a17:903:1d1:b0:19d:323:e68 with SMTP id e17-20020a17090301d100b0019d03230e68mr847545plh.1.1680818277495; Thu, 06 Apr 2023 14:57:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818277; cv=none; d=google.com; s=arc-20160816; b=CKv+IuRreZ3xk728mySUPQGvoiaI2WnOn5RlxO0R4XPm7Sqs6R3gkvJf0u0qZ6XCKe vca+pvGgMt5JrJ6h5ZMSTNgefVs6jbBiiUntZ8eIywdCaAPV1OEj6htdr6F+lpN+5YOk sScZTBu2z5VWAcrRMs4iA3kJkEKwM+V54FXuGbk5OAp3QuojiLBYRey3T8PWIYJc3foC EAasVVCkk9dxbVnCLblt/5C2jc3/onQVLbhEdKWnkHPHW8LTwA5ljyoCPJFwpGgdsRwg sf6NI/6bZfG4UGO1CFBZa81dsWM65RWI0dLeY5YvBsejDgruzEKl5mvki7vykOL+hf2P ByZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=9p8u1Et+ePUjJwkfAaESuOfgJHcknUUVEGRHyjcL4Fw=; b=HLbhJCKvGsAlxSfTbOHvxTygy6zGOXh5Zf9KO06bnB9Nq7s4Of4d4oDKE6/heaxSdK beB6Hzyo+8lbnmLWDxLEZ/z63vGWVt8JVs4He6fhyEpfjQj3hx6TJgzSXRIDgNvU2W+9 KxNFJklufIsUnmn4od1bmXGbScM4fKbpAHKrn9pSFywI9YRphRTImTFz5R5JS80PaiqR DTzCn7OSxONbkv4X2txm54mnQIgCJGwkuVzHJTYxx0nu5+DADOm7vMxM0cBKGAHVISAj qylhXEIAkOuGxkUQ3miMVPn3ITKctQHHovD0ucbxiYmni4eUQh26wwYg0rpeVWNdGWd9 Jd+w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=ATnC3jHs; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s6-20020a170902ea0600b001a1d2098209si2731340plg.343.2023.04.06.14.57.45; Thu, 06 Apr 2023 14:57:57 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=ATnC3jHs; 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 S230091AbjDFVzm (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42340 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237775AbjDFVzA (ORCPT ); Thu, 6 Apr 2023 17:55:00 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3DDCFAD1F; Thu, 6 Apr 2023 14:54:59 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818094; bh=Qe8nJyPjBlgmIx599eDy96a3x+QpMDsnrKcc0Qv66Ts=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ATnC3jHsaUStckaLysEVMZrrbG0rnq87drAcNeh9DF9hkWl+2+XhjIk81Tgkc0H0O jpuImOwKvA22HpAMPFLYvAPoQiYNLKdVV3ReUc1DSNTIHGVW6L1rmkuHjvHO4bapBu 8c4G35FzuM9YqekvgqcN71MVcj9d0AYzzvidyZOs= Date: Thu, 06 Apr 2023 21:54:54 +0000 Subject: [PATCH v2 08/11] tools/nolibc: mips: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-8-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=4214; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=Qe8nJyPjBlgmIx599eDy96a3x+QpMDsnrKcc0Qv66Ts=; b=idk4i0dx9aQMIIIuqV3T2Pxpyz4qWL8BNHt3AQEwQ6WUS0osDqTsirey4HbMn872g968Y+d9Z XUYG17J9e1JD8u+XPccmRLVAM9vp9dj3SWfkh5uBk0g2Kzgq/uOQaUI X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465706153954415?= X-GMAIL-MSGID: =?utf-8?q?1762465706153954415?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-mips.h | 56 ++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/tools/include/nolibc/arch-mips.h b/tools/include/nolibc/arch-mips.h index bf83432d23ed..8822f150e72f 100644 --- a/tools/include/nolibc/arch-mips.h +++ b/tools/include/nolibc/arch-mips.h @@ -183,42 +183,42 @@ const unsigned long *_auxv __attribute__((weak)); void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) __start(void) { __asm__ volatile ( - //".set nomips16\n" + /*".set nomips16\n"*/ ".set push\n" ".set noreorder\n" ".option pic0\n" - //".ent __start\n" - //"__start:\n" - "lw $a0,($sp)\n" // argc was in the stack - "addiu $a1, $sp, 4\n" // argv = sp + 4 - "sll $a2, $a0, 2\n" // a2 = argc * 4 - "add $a2, $a2, $a1\n" // envp = argv + 4*argc ... - "addiu $a2, $a2, 4\n" // ... + 4 - "lui $a3, %hi(environ)\n" // load environ into a3 (hi) - "addiu $a3, %lo(environ)\n" // load environ into a3 (lo) - "sw $a2,($a3)\n" // store envp(a2) into environ - - "move $t0, $a2\n" // iterate t0 over envp, look for NULL - "0:" // do { - "lw $a3, ($t0)\n" // a3=*(t0); - "bne $a3, $0, 0b\n" // } while (a3); - "addiu $t0, $t0, 4\n" // delayed slot: t0+=4; - "lui $a3, %hi(_auxv)\n" // load _auxv into a3 (hi) - "addiu $a3, %lo(_auxv)\n" // load _auxv into a3 (lo) - "sw $t0, ($a3)\n" // store t0 into _auxv + /*".ent __start\n"*/ + /*"__start:\n"*/ + "lw $a0,($sp)\n" /* argc was in the stack */ + "addiu $a1, $sp, 4\n" /* argv = sp + 4 */ + "sll $a2, $a0, 2\n" /* a2 = argc * 4 */ + "add $a2, $a2, $a1\n" /* envp = argv + 4*argc ... */ + "addiu $a2, $a2, 4\n" /* ... + 4 */ + "lui $a3, %hi(environ)\n" /* load environ into a3 (hi) */ + "addiu $a3, %lo(environ)\n" /* load environ into a3 (lo) */ + "sw $a2,($a3)\n" /* store envp(a2) into environ */ + + "move $t0, $a2\n" /* iterate t0 over envp, look for NULL */ + "0:" /* do { */ + "lw $a3, ($t0)\n" /* a3=*(t0); */ + "bne $a3, $0, 0b\n" /* } while (a3); */ + "addiu $t0, $t0, 4\n" /* delayed slot: t0+=4; */ + "lui $a3, %hi(_auxv)\n" /* load _auxv into a3 (hi) */ + "addiu $a3, %lo(_auxv)\n" /* load _auxv into a3 (lo) */ + "sw $t0, ($a3)\n" /* store t0 into _auxv */ "li $t0, -8\n" - "and $sp, $sp, $t0\n" // sp must be 8-byte aligned - "addiu $sp,$sp,-16\n" // the callee expects to save a0..a3 there! - "jal main\n" // main() returns the status code, we'll exit with it. - "nop\n" // delayed slot - "move $a0, $v0\n" // retrieve 32-bit exit code from v0 - "li $v0, 4001\n" // NR_exit == 4001 + "and $sp, $sp, $t0\n" /* sp must be 8-byte aligned */ + "addiu $sp,$sp,-16\n" /* the callee expects to save a0..a3 there! */ + "jal main\n" /* main() returns the status code, we'll exit with it. */ + "nop\n" /* delayed slot */ + "move $a0, $v0\n" /* retrieve 32-bit exit code from v0 */ + "li $v0, 4001\n" /* NR_exit == 4001 */ "syscall\n" - //".end __start\n" + /*".end __start\n"*/ ".set pop\n" ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_MIPS_H +#endif /* _NOLIBC_ARCH_MIPS_H */ From patchwork Thu Apr 6 21:54:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80559 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1332542vqo; Thu, 6 Apr 2023 15:12:35 -0700 (PDT) X-Google-Smtp-Source: AKy350ZYZUmFz2X7UZMJK2Y0kYqFNXEW6KNbvadYNbc4plDYHprjRV+wD8B+CbQSjRpIpnMyCqtA X-Received: by 2002:aa7:cb18:0:b0:4fb:994d:42c9 with SMTP id s24-20020aa7cb18000000b004fb994d42c9mr874529edt.24.1680819155592; Thu, 06 Apr 2023 15:12:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680819155; cv=none; d=google.com; s=arc-20160816; b=C64+/bt8I68cJxyKJ2gDKJl/AobfEjNQlgzFHp7qn2ZGIgI+ambqpF6/lmCwUaHTtu Kx6MQJfDOQhzdNKl66TQOk4h5r9oe6gMe4oOcFPsdOi2WK+0rG1wVHaJnO0bbYZOD2Zb WzX7QnUyB25N3YRSmSf6nn/zGOW4lrKj4pheRFtbyds1IP2FbIbxOBgpvHo1pCzevJyG 2AXcD1C18qYNiKNXWaEMBS9Rskl8Lofmnbmbue843zQimi9irzXL4BokfPZkFDiET+tv vMYEDFdqLmsxqvL4VYc2glR0yz+fda+9vChn2hEwT2LDekhviDONZRyUsAjL7iWeiTbY 2KEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=97EKR3EN5Kp7xYn3u2Lqjn1Id9BwY3SdjqzqALjBg/Y=; b=aNNEwW5nFO/IIEHYUVV/8xBDOxBiTmt36bRiq7spRHBu1BjVBnGtaydQqWoGzdvFFG wk7lbCDF2m8KdFZKNZIPW+6+gYdZRqESb4zYALx6lCkOhEV4HMR0pQbWDwcOiFrX9iPp vtYUmifYyvgfQZSfCiHH3VkOhCBlOdWob67oX6lUscIo5S1euj4brWIGZOl63shu6hnZ ebrD6AxwZJbbF+oOZfWn4evHy9qmhzkqI5WyK+VYfV6TFna0ICkskdy+z4+4hh9NZ11w penxSDVK1gACz0mY+Q6cEcmb+CvtOoAmIqFOdmeGy3PUXNPDsLxP16HekU8j130BXBHt 5Tsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=hXKjheSe; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j22-20020a170906831600b00933407f013esi907152ejx.147.2023.04.06.15.12.12; Thu, 06 Apr 2023 15:12:35 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=hXKjheSe; 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 S230509AbjDFVza (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42308 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237455AbjDFVzA (ORCPT ); Thu, 6 Apr 2023 17:55:00 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 501E0A5C5; Thu, 6 Apr 2023 14:54:58 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818094; bh=4SCszC2KSDPDlE8IGIH5s/FBuMphlLwMvBNzJo/XgJ8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=hXKjheSeo3gegAXDU7i/Ju0XaPy70/OADFdhowIff4dFm4b7PUNQQ1hsI5ppbNmCp XtwRnJ1ONXD9sIIIsVcOLRyq/ujUXjpBi9C+s621YM5zsHXosmcUA4iKeWbVuL1kzd pPhtCXoIjuGAeI2zBKJWBf7ROVYKVwwJhYHq9gRk= Date: Thu, 06 Apr 2023 21:54:55 +0000 Subject: [PATCH v2 09/11] tools/nolibc: loongarch: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-9-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=4001; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=4SCszC2KSDPDlE8IGIH5s/FBuMphlLwMvBNzJo/XgJ8=; b=9W/LT+KmPcKghegsVGPha9qxNjwMUGJp1YR20WhUV+vkW/BQ2MHn07aThVZ6HEhc4neLtSXO4 Zpidt8d08BBCwD943bsqJSBp/WXk5tzXFz87t859ndpKj0SM8wEjHqu X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762466627169504982?= X-GMAIL-MSGID: =?utf-8?q?1762466627169504982?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/arch-loongarch.h | 38 +++++++++++++++++------------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/tools/include/nolibc/arch-loongarch.h b/tools/include/nolibc/arch-loongarch.h index 029ee3cd6baf..ec3b46a991a9 100644 --- a/tools/include/nolibc/arch-loongarch.h +++ b/tools/include/nolibc/arch-loongarch.h @@ -158,7 +158,7 @@ const unsigned long *_auxv __attribute__((weak)); #define LONG_ADDI "addi.w" #define LONG_SLL "slli.w" #define LONG_BSTRINS "bstrins.w" -#else // __loongarch_grlen == 64 +#else /* __loongarch_grlen == 64 */ #define LONGLOG "3" #define SZREG "8" #define REG_L "ld.d" @@ -173,28 +173,28 @@ const unsigned long *_auxv __attribute__((weak)); void __attribute__((weak,noreturn,optimize("omit-frame-pointer"))) _start(void) { __asm__ volatile ( - REG_L " $a0, $sp, 0\n" // argc (a0) was in the stack - LONG_ADDI " $a1, $sp, "SZREG"\n" // argv (a1) = sp + SZREG - LONG_SLL " $a2, $a0, "LONGLOG"\n" // envp (a2) = SZREG*argc ... - LONG_ADDI " $a2, $a2, "SZREG"\n" // + SZREG (skip null) - LONG_ADD " $a2, $a2, $a1\n" // + argv + REG_L " $a0, $sp, 0\n" /* argc (a0) was in the stack */ + LONG_ADDI " $a1, $sp, "SZREG"\n" /* argv (a1) = sp + SZREG */ + LONG_SLL " $a2, $a0, "LONGLOG"\n" /* envp (a2) = SZREG*argc ... */ + LONG_ADDI " $a2, $a2, "SZREG"\n" /* + SZREG (skip null) */ + LONG_ADD " $a2, $a2, $a1\n" /* + argv */ - "move $a3, $a2\n" // iterate a3 over envp to find auxv (after NULL) - "0:\n" // do { - REG_L " $a4, $a3, 0\n" // a4 = *a3; - LONG_ADDI " $a3, $a3, "SZREG"\n" // a3 += sizeof(void*); - "bne $a4, $zero, 0b\n" // } while (a4); - "la.pcrel $a4, _auxv\n" // a4 = &_auxv - LONG_S " $a3, $a4, 0\n" // store a3 into _auxv + "move $a3, $a2\n" /* iterate a3 over envp to find auxv (after NULL) */ + "0:\n" /* do { */ + REG_L " $a4, $a3, 0\n" /* a4 = *a3; */ + LONG_ADDI " $a3, $a3, "SZREG"\n" /* a3 += sizeof(void*); */ + "bne $a4, $zero, 0b\n" /* } while (a4); */ + "la.pcrel $a4, _auxv\n" /* a4 = &_auxv */ + LONG_S " $a3, $a4, 0\n" /* store a3 into _auxv */ - "la.pcrel $a3, environ\n" // a3 = &environ - LONG_S " $a2, $a3, 0\n" // store envp(a2) into environ - LONG_BSTRINS " $sp, $zero, 3, 0\n" // sp must be 16-byte aligned - "bl main\n" // main() returns the status code, we'll exit with it. - "li.w $a7, 93\n" // NR_exit == 93 + "la.pcrel $a3, environ\n" /* a3 = &environ */ + LONG_S " $a2, $a3, 0\n" /* store envp(a2) into environ */ + LONG_BSTRINS " $sp, $zero, 3, 0\n" /* sp must be 16-byte aligned */ + "bl main\n" /* main() returns the status code, we'll exit with it. */ + "li.w $a7, 93\n" /* NR_exit == 93 */ "syscall 0\n" ); __builtin_unreachable(); } -#endif // _NOLIBC_ARCH_LOONGARCH_H +#endif /* _NOLIBC_ARCH_LOONGARCH_H */ From patchwork Thu Apr 6 21:54:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80556 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1332009vqo; Thu, 6 Apr 2023 15:11:29 -0700 (PDT) X-Google-Smtp-Source: AKy350a4LHBexK9LCLaJM9P8w3AgsusGsBRdR687fyo+VflG4CqeuRL9jnfKVoMYVrORJql1J/VA X-Received: by 2002:a17:906:cccb:b0:921:d539:1a3a with SMTP id ot11-20020a170906cccb00b00921d5391a3amr260152ejb.58.1680819089223; Thu, 06 Apr 2023 15:11:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680819089; cv=none; d=google.com; s=arc-20160816; b=QeRrkYFDj+IWBQYUBkPDoLMeIzh2iHDELVpYhVQH0v7CgwoafBmvmA+9fTXz7rOVbX GkzcHteHFShAxr7r30oY8kyzSw+CcgZ0ywS7wwmbKg/svEWaqpA8RF3VpSNuFC5bYpLU iGeQ9vjibm6E57vutXqivCVNybvNWMrmgFyf6Z6iDcLire8+HK+XE7Wt3u0bX2B0neOH A2kzaWvOpoRy1JVrMYRrbyZWmZ+j5vFnf6ZGe6ooYt2xl4Fwn0p+I0hfzL+N5u6w3EpZ qTEq1F8XzyGMqdcZT+GrxzbUbpO8MwcbIMuxLw48VLBJ2uPOCSdWJHA6ypHe77HIkODA 4qwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=Y9QE6lHGMICftG3rSwNTiDynzV0DojL9X6XD8b3AInU=; b=kjfni2RVgm8qFxaKrBckm+oRZbqyTt2gphM8FEeQNT7LB2SgsnxjoowodIsLT8IAEf 7qrb5MwISDPbw7/46TF4bBd2Qt33tjQZ0woyCN9FBC4Tsc/DqsKvKfWd3WHo/N9oFh4L vWh7AanLSTmVKQKV/gOZ3X7KOBcs+dSU3lCb8MFMMKHgkWdcY6pWNlHTIBx74pzuZp4s o6U9+OGn0Gc4rJCbLNKPdKYCDKSU4+xu9adeLFU+1L5hGoNeUy+FOOkFuJ1HMcJed986 o0lBnhelFzT+dNVXAxDzABRrgbfGmZRiyjgvFrwuoHrc6giFnvECauSdLzPbQ2sRD15d UdWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=A6jHzu4h; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id vo12-20020a170907a80c00b00946e6dd75b2si2027395ejc.877.2023.04.06.15.10.22; Thu, 06 Apr 2023 15:11: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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=A6jHzu4h; 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 S237510AbjDFVzh (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42342 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237784AbjDFVzA (ORCPT ); Thu, 6 Apr 2023 17:55:00 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3DE98AD20; Thu, 6 Apr 2023 14:54:59 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818095; bh=X60ak0sedknadOIvWDQ9aZzSRdad/1Q+QXzu97VjaVg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=A6jHzu4hl7h2IqK2hYbiB9n8cM4IKteAULIPE6nlG64aIFGTzLxiuRNmm58AKi/wI e3gH8Jiiw+K/fgoGHaP/5QWYFSo7z9WujywvvNjwNwD33hAsNHAVczBTxrR4nYAau4 sTzxOcLcEpPiwE5h3fHD3EzYs5dxKFieeRCyCfy4= Date: Thu, 06 Apr 2023 21:54:56 +0000 Subject: [PATCH v2 10/11] tools/nolibc: use C89 comment syntax MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-10-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=3509; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=X60ak0sedknadOIvWDQ9aZzSRdad/1Q+QXzu97VjaVg=; b=PMX15SgYaKLuh5We5vXFX7qq/vVTiYc/ps7vPXcz4VTIyom6AennGirjFTmtxyRzGmXO4A2zN Bc47UZD5RNzAmKgsnNVfINKRiw5puxDBrjGWqTc4NgasTco8G3aTs+5 X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762466556977935935?= X-GMAIL-MSGID: =?utf-8?q?1762466556977935935?= Most of nolibc is already using C89 comments. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/stackprotector.h | 4 ++-- tools/include/nolibc/sys.h | 8 ++++---- tools/testing/selftests/nolibc/nolibc-test.c | 12 ++++++------ 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tools/include/nolibc/stackprotector.h b/tools/include/nolibc/stackprotector.h index d119cbbbc256..77e5251c4490 100644 --- a/tools/include/nolibc/stackprotector.h +++ b/tools/include/nolibc/stackprotector.h @@ -48,6 +48,6 @@ void __stack_chk_init(void) /* a bit more randomness in case getrandom() fails */ __stack_chk_guard ^= (uintptr_t) &__stack_chk_guard; } -#endif // defined(NOLIBC_STACKPROTECTOR) +#endif /* defined(NOLIBC_STACKPROTECTOR) */ -#endif // _NOLIBC_STACKPROTECTOR_H +#endif /* _NOLIBC_STACKPROTECTOR_H */ diff --git a/tools/include/nolibc/sys.h b/tools/include/nolibc/sys.h index bea9760dbd16..1b9b91cd8b57 100644 --- a/tools/include/nolibc/sys.h +++ b/tools/include/nolibc/sys.h @@ -12,15 +12,15 @@ /* system includes */ #include -#include // for SIGCHLD +#include /* for SIGCHLD */ #include #include #include #include #include #include -#include // for O_* and AT_* -#include // for statx() +#include /* for O_* and AT_* */ +#include /* for statx() */ #include "arch.h" #include "errno.h" @@ -322,7 +322,7 @@ static __attribute__((noreturn,unused)) void sys_exit(int status) { my_syscall1(__NR_exit, status & 255); - while(1); // shut the "noreturn" warnings. + while(1); /* shut the "noreturn" warnings. */ } static __attribute__((noreturn,unused)) diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c index e692be98973a..f06b38cfe38a 100644 --- a/tools/testing/selftests/nolibc/nolibc-test.c +++ b/tools/testing/selftests/nolibc/nolibc-test.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +/* SPDX-License-Identifier: GPL-2.0 */ #define _GNU_SOURCE @@ -46,8 +46,8 @@ char **environ; /* definition of a series of tests */ struct test { - const char *name; // test name - int (*func)(int min, int max); // handler + const char *name; /* test name */ + int (*func)(int min, int max); /* handler */ }; #ifndef _NOLIBC_STDLIB_H @@ -494,7 +494,7 @@ int run_syscall(int min, int max) euid0 = geteuid() == 0; for (test = min; test >= 0 && test <= max; test++) { - int llen = 0; // line length + int llen = 0; /* line length */ /* avoid leaving empty lines below, this will insert holes into * test numbers. @@ -584,7 +584,7 @@ int run_stdlib(int min, int max) void *p1, *p2; for (test = min; test >= 0 && test <= max; test++) { - int llen = 0; // line length + int llen = 0; /* line length */ /* avoid leaving empty lines below, this will insert holes into * test numbers. @@ -731,7 +731,7 @@ static int run_vfprintf(int min, int max) void *p1, *p2; for (test = min; test >= 0 && test <= max; test++) { - int llen = 0; // line length + int llen = 0; /* line length */ /* avoid leaving empty lines below, this will insert holes into * test numbers. From patchwork Thu Apr 6 21:54:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 80552 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1324272vqo; Thu, 6 Apr 2023 14:58:03 -0700 (PDT) X-Google-Smtp-Source: AKy350YKbn9qssFWGtBrgx6o422C/v/wQ0eCo2JBuJ2kLm4yv84Jy7UgLCby/Lx4psrsZrIJRLQX X-Received: by 2002:a05:6a20:dca4:b0:db:4c00:7918 with SMTP id ky36-20020a056a20dca400b000db4c007918mr877533pzb.0.1680818282974; Thu, 06 Apr 2023 14:58:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680818282; cv=none; d=google.com; s=arc-20160816; b=FmHK9xAdQ2kqnfAg4HYogX/OTi/iwVjZQG1aPgpoQRlDnpvzaW2c/RjJKRaD5R/vqd gB6qOKOqt1FkMpjPPir4z20wXwmAIbsgmkjmSHj4awBnnvMlzpV+I5dB0eSAxgHEnklQ 7kXDb1WsRkIguzb21llokP6GJtXBP+2GyCTCY/lKWYj7rUJxWYEdbL51yv2tqWgXflFi S619dohiFpPDbVWxtYUHfLfJb2iCfw3LDQhxXko9FTdPnNR+P/kKTL2vLdASK8IMfmmi edKasXBv9QjH1TozVKBXXuuzxvd0uJCxgI4eLTHmccvoMN/Q2SCIqNgr0rQYGghFT3eQ U5Lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=sJxhYNP0CLN88W/g3ntdjWaHRsNtngO7Eh4iVK43Xyc=; b=1KXjKj7uqy78znbPp3eWfeVDwJ2ywew6mF7KWD8QV7fPI6XOJL15T1WRYBAbHu0mWh 9YUm+V6NPMHGJ5yydYA1jGBI9HlKFciLo0OYl05VNYiv8a8pcmXqZwztID6PjqPafISj QaJc56xJrs/SJ+vHYKm6aQdP2DgoJsMsL3tl0qv8QG0A1ziirlfOk9LRNi38j34acdUt qgJ7M5pL+MSLhayH5d5paujhkxXyYR63U655ugvXmeP/26nZqawozmaBz6WBKfICVEfe WjpxCwrDuTvCoeUuP04hTfGfgW8CcON1wu26jKVt1eBW1tCvusWAdKzFjShNrGR3MsWR CZlw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=LPdIVCIC; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w64-20020a638243000000b0050bdca1b6eesi2187480pgd.861.2023.04.06.14.57.50; Thu, 06 Apr 2023 14:58:02 -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; dkim=pass header.i=@weissschuh.net header.s=mail header.b=LPdIVCIC; 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 S236795AbjDFVze (ORCPT + 99 others); Thu, 6 Apr 2023 17:55:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42344 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238308AbjDFVzA (ORCPT ); Thu, 6 Apr 2023 17:55:00 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3DF84AD25; Thu, 6 Apr 2023 14:54:59 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1680818095; bh=nDb5IgQ9K96nEIM5nhFtSNKaObd3Bs6yLtAE0MQ90Hc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=LPdIVCICDjAuwusY7LmbrPaSbZTK/TY/u3YCKNjEsKW57BDuZYkQnRPmQ+TbO5/op JYrIONDqCv7w3T7UwQtSEs2PBWMfvncntAg9sL4p9BOcdYSHcFhGoW7TyIqa8g59gO xCmGQQFJP2Vb4TKt0/gLUlmdqpFgpLQ8wsrj0wpA= Date: Thu, 06 Apr 2023 21:54:57 +0000 Subject: [PATCH v2 11/11] tools/nolibc: validate C89 compatibility MIME-Version: 1.0 Message-Id: <20230328-nolibc-c99-v2-11-c989f2289222@weissschuh.net> References: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> In-Reply-To: <20230328-nolibc-c99-v2-0-c989f2289222@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1680818091; l=950; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=nDb5IgQ9K96nEIM5nhFtSNKaObd3Bs6yLtAE0MQ90Hc=; b=AAij0njayIdL5IoD/YRXn3KBPMtLUquefELUQwUPjOP+L87s/bKaSI6xndpVU9yLH1h23h4+x o/7FTm9oR7RCztrlVIbPHtbzXaQJ447rGHWynoCFACVnyUY715Kc/BS X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762465711823803482?= X-GMAIL-MSGID: =?utf-8?q?1762465711823803482?= To make sure no non-compatible changes are introduced accidentally validate the language standard when building the tests. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/nolibc/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/nolibc/Makefile b/tools/testing/selftests/nolibc/Makefile index 0cbe13809b37..423d22f353a0 100644 --- a/tools/testing/selftests/nolibc/Makefile +++ b/tools/testing/selftests/nolibc/Makefile @@ -83,7 +83,7 @@ CFLAGS_STKP_i386 = $(CFLAGS_STACKPROTECTOR) CFLAGS_STKP_x86_64 = $(CFLAGS_STACKPROTECTOR) CFLAGS_STKP_x86 = $(CFLAGS_STACKPROTECTOR) CFLAGS_s390 = -m64 -CFLAGS ?= -Os -fno-ident -fno-asynchronous-unwind-tables \ +CFLAGS ?= -Os -fno-ident -fno-asynchronous-unwind-tables -std=c89 \ $(call cc-option,-fno-stack-protector) \ $(CFLAGS_STKP_$(ARCH)) $(CFLAGS_$(ARCH)) LDFLAGS := -s