From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from xry111.site (xry111.site [89.208.246.23]) by sourceware.org (Postfix) with ESMTPS id 7D19C3858D33 for ; Mon, 29 Apr 2024 07:32:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7D19C3858D33 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=xry111.site Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=xry111.site ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7D19C3858D33 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=89.208.246.23 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714375944; cv=none; b=wwem4HjS3eEO1inOcCfSmRssq58jQE8NEC9D302C3akX+LCfPQl5OdP9FRoacSROfDdwZK8DBlqG+qLLjouA+Q5sJwN38gKsoS7QeY5r+QheefsakoMtul2soMXvxB2w7S1YZdW6EWnzQDblp8PEjT26xA1Kve5w6kPi5e3+eHo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714375944; c=relaxed/simple; bh=r7zJdAD0fh49PmNWXtgCzsjW8tPcRXSH5udsFP2QYYU=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=nf2tcSCxKNnWTDRO2NhRGrWqyn7zatXxTZTwbecadv6GEa8iF5Fl3ZcANeGB9QN4MU8Gqvrz9raKUTtMkVX44Xk+GgF05Umrske9HL1i3MfE81d9PoALGyyjkNmcp0ecjBwrPqrM2G70J2DEAuoq10AercOLpODUBcTW+2CLa5M= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=xry111.site; s=default; t=1714375933; bh=r7zJdAD0fh49PmNWXtgCzsjW8tPcRXSH5udsFP2QYYU=; h=From:To:Cc:Subject:Date:From; b=BdrlNP4itx0VT+D2vO0NXlAktPL9txf/rcIBwkj0tIkzl2CaLJO3YIUC3qGHO8U95 Y1Iudt1hj8FYOv48ZD04cMHAKe4RUjvm63S6SlFzCAu+0os5chwRnzEM30Il0B4441 1ait5v5E7oqytWPT+vY7gXMMnzbEBR8MiVgv9JvU= Received: from stargazer.. (unknown [IPv6:240e:358:111a:3c00:dc73:854d:832e:7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (Client did not present a certificate) (Authenticated sender: xry111@xry111.site) by xry111.site (Postfix) with ESMTPSA id 2C12767161; Mon, 29 Apr 2024 03:32:09 -0400 (EDT) From: Xi Ruoyao To: libc-alpha@sourceware.org Cc: caiyinyu@loongson.cn, Adhemerval Zanella , WANG Xuerui , luweining@loongson.cn, Xi Ruoyao Subject: [PATCH] LoongArch: Use "$fcsr0" instead of "$r0" in _FPU_{GET,SET}CW Date: Mon, 29 Apr 2024 15:31:12 +0800 Message-ID: <20240429073111.14572-2-xry111@xry111.site> X-Mailer: git-send-email 2.44.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-8.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,LIKELY_SPAM_FROM,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Clang inline-asm parser does not allow using "$r0" in movfcsr2gr/movgr2fcsr, so everything using _FPU_{GET,SET}CW is now failing to build with Clang on LoongArch. As we now requires Binutils >= 2.41 which supports using "$fcsr0" here, use it instead of "$r0" to fix the issue. Link: https://github.com/loongson-community/discussions/issues/53#issuecomment-2081507390 Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=4142b2368353 Signed-off-by: Xi Ruoyao --- People in the Cc list will receive this twice because I've mistyped the address of libc-alpha first time. Sorry. Stupid I :(. sysdeps/loongarch/fpu_control.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sysdeps/loongarch/fpu_control.h b/sysdeps/loongarch/fpu_control.h index 54add4e01c..3cdf2417d9 100644 --- a/sysdeps/loongarch/fpu_control.h +++ b/sysdeps/loongarch/fpu_control.h @@ -91,8 +91,8 @@ typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); /* Macros for accessing the hardware control word. */ extern fpu_control_t __loongarch_fpu_getcw (void) __THROW; extern void __loongarch_fpu_setcw (fpu_control_t) __THROW; -#define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$r0" : "=r"(cw)) -#define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $r0,%0" : : "r"(cw)) +#define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$fcsr0" : "=r"(cw)) +#define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $fcsr0,%0" : : "r"(cw)) /* Default control word set at startup. */ extern fpu_control_t __fpu_control; -- 2.44.0