From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on starla X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id AF5081F44D for ; Mon, 22 Apr 2024 07:47:30 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=pass (2048-bit key; unprotected) header.d=vrull.eu header.i=@vrull.eu header.a=rsa-sha256 header.s=google header.b=aUlQyhJ2; dkim-atps=neutral Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 0E9F3385841E for ; Mon, 22 Apr 2024 07:47:30 +0000 (GMT) Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [IPv6:2a00:1450:4864:20::12e]) by sourceware.org (Postfix) with ESMTPS id 9A7DD3858C60 for ; Mon, 22 Apr 2024 07:44:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9A7DD3858C60 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=vrull.eu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=vrull.eu ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9A7DD3858C60 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::12e ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713771856; cv=none; b=QKD5aKSKDlOzv73jN3m4OVHlUc66SyZ4MoCvUFVjlwpPI3fn3pwi/MoLbb5iAu4jdp2yNgz/n64HCZ7rCyE3q53BK78/73NSMScfTqh8BWpg8ZLefv33L+DBeDhlWXVBXDMXXu3+LIflKU5A9TSPOqTt5ya2yDdwVjHPidxYHFg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713771856; c=relaxed/simple; bh=3/fxpelQ2Av16MCnMuagbkqAnXGWINVcQDTDTABqfk0=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=BMyptg/icU368WZmky/k3v/z1ES0f31hJyaXaNiUO0InpCauG3nlJIrpiHNiyublF2i2MZqSXVWTokcRXUYfNwfq6Wjwpml/BbuOc5UsKBX7yXcn0ZuGyUuu69m0KZuqCGKspXZkNfXi7eHiKHh/mu7TaeINrCknmQ7Vkj5+7mA= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-51abd580902so2419835e87.1 for ; Mon, 22 Apr 2024 00:44:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vrull.eu; s=google; t=1713771852; x=1714376652; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=416+1tdsIRVXk6pQDrXQE9MfDyfmuQt9MJ051c/pATA=; b=aUlQyhJ2ACPcSe7FE766jY9/BwkX7lOB9Y8b7Mcd9RFIYSZhsUAuaEkqChuPzqIkLr +T/VQugL306BNPjZ+VUmxHaojOXAU38WkYVbozldEHCMA0S/IjHP1macQFK19geuItJp 3JRtL5KJ/8d8k8nw77IcDsdJQR49xEPPMHJ3r9DMhrLfxT+dA/kAA3hvQ2SluDJcFWJ7 b2tLQPTFmoJDqSCeUxzB3iXgrZHO3kSF3mZVhgv0UuSJvRfoXx6xOfw6Z7dOpOSS17Vf PK1uWvrIEHtTYyQSEdEjyLKfKywqX1jRgizoKk9IbQ5HitToFYZlTBoclya5HI8tuo86 8/RA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713771852; x=1714376652; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=416+1tdsIRVXk6pQDrXQE9MfDyfmuQt9MJ051c/pATA=; b=VoCYN2Qc8wWGr87mG5v16u0osMA0poCCNqysFjbormag4uQTm9MHgac/BioIALRIBf IBCWttPHAoFcK1ASdLJ+cK0ZBCFNsbhZu6C2JJYPac5ixAGLBz6v3TNlGTRQPQaqZ0vK oe5Bxn4Oikqo02yy9At+PxrDJw4gw7qpMCUcQr0Rj0hBMdt9LuKr6lO+e4TyiSfZFlzZ l75ozUbXoGw++mcKsMboGGJt2JnLAvT5owYdMAZLqHwYQNlKAUH8FBtDKcsyqXD8zSsn qoiAvLAeIM5rIqRJ7aH9c2TRe1gAishTgpzA0z3ao4wP8z4eJ/1ZSDOviyJE7QeE3zBR opIQ== X-Gm-Message-State: AOJu0YwDnTPoH1OLWcIGGb6HCC8Qc08cStxXS17wz8PvCo3S5k+a0nb5 l0CPz1KpV2HdAfZsuwsIUy9fcL+8swYZhxiXMEw3oUjllh+4kJkPl6TdaNyT0fAOvhOtrzqOZ49 jXe4= X-Google-Smtp-Source: AGHT+IF73LqkgYV4C2mjzX2On6T697wY3IBRkqzEmRYjvMctLU6NIr3MkDeNv0ovXqBP2Tl5LgR7eA== X-Received: by 2002:ac2:4a84:0:b0:51a:cd25:4383 with SMTP id l4-20020ac24a84000000b0051acd254383mr2159631lfp.4.1713771852089; Mon, 22 Apr 2024 00:44:12 -0700 (PDT) Received: from beast.fritz.box (static.239.130.217.95.clients.your-server.de. [95.217.130.239]) by smtp.gmail.com with ESMTPSA id v24-20020a197418000000b0051920234d6dsm1656756lfe.273.2024.04.22.00.44.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Apr 2024 00:44:11 -0700 (PDT) From: =?UTF-8?q?Christoph=20M=C3=BCllner?= To: libc-alpha@sourceware.org, Adhemerval Zanella , Palmer Dabbelt , Darius Rad , Andrew Waterman , Philipp Tomsich , Evan Green , DJ Delorie , Vineet Gupta , Kito Cheng , Jeff Law Cc: =?UTF-8?q?Christoph=20M=C3=BCllner?= Subject: [PATCH 1/7] RISC-V: Use .insn directive form for orc.b Date: Mon, 22 Apr 2024 09:43:57 +0200 Message-ID: <20240422074403.2399529-2-christoph.muellner@vrull.eu> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240422074403.2399529-1-christoph.muellner@vrull.eu> References: <20240422074403.2399529-1-christoph.muellner@vrull.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+e=80x24.org@sourceware.org The orc.b instruction is part of the Zbb extension, which was ratified in 2021. GAS releases older than that won't know of the instruction. Newer GAS releases accepted orc.b only if Zbb is enabled in the -march string. This patch changes the inline asm for orc.b to the '.insn' directive form, which allows (future changes) to build orc.b-optimized routines by defining the Zbb feature test macro (__riscv_zbb). Building optimized routines this way is compatible with releases of GAS with and without Zbb support. Signed-off-by: Christoph Müllner --- sysdeps/riscv/string-fza.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sysdeps/riscv/string-fza.h b/sysdeps/riscv/string-fza.h index ee5c31317f..47b1fd152f 100644 --- a/sysdeps/riscv/string-fza.h +++ b/sysdeps/riscv/string-fza.h @@ -36,7 +36,8 @@ find_zero_all (op_t x) asm ("th.tstnbz %0, %1" : "=r" (r) : "r" (x)); return r; #else - asm ("orc.b %0, %1" : "=r" (r) : "r" (x)); + /* orc.b using the .insn directive (supported by older Binutils releases). */ + asm (".insn i 0x13, 0x5, %0, %1, 0x287" : "=r" (r) : "r" (x)); return ~r; #endif } -- 2.44.0