From patchwork Mon May 20 09:05:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mengqinggang X-Patchwork-Id: 90473 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 32DB63858D33 for ; Mon, 20 May 2024 09:05:48 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail.loongson.cn (mail.loongson.cn [114.242.206.163]) by sourceware.org (Postfix) with ESMTP id 961F83858D1E for ; Mon, 20 May 2024 09:05:17 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 961F83858D1E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=loongson.cn Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=loongson.cn ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 961F83858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=114.242.206.163 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716195920; cv=none; b=Sd4DyR8z3peOfLRAty1+kdkIoNFXS2FBiXpuHtaw/U69THqIiKvn2xFURAA0DnMK8YLJRErHsbKoF4ThOQWNHOvoL7je49UGltPIL6FMVJUQGMENJbCTDAlGOYTkv0ipReHfQFK/eKZ0E2xAlLGgEXAKNIgL+It2EvenTKmQ9FI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716195920; c=relaxed/simple; bh=ODAmw4aaCNk6skje/wkmdwBr0reeFZ0SNuYR89UG0n0=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=lZx+PcjaRPW6K3yVJQhi+KXwNiXrPE6QdgDPYBau+EBrKdBM0nTXZ8GS2L8mMe4oNVU7QVmne6JP3rsX8mgM+wFvfD0T1iJTTfNv8ghRkzb6ICYIpKuhIZpOfqeA1ZX1hfsEQV8C2prb0QFxcmmxmqlUcugRiJpsIpQswZVo4sQ= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from loongson.cn (unknown [10.2.6.5]) by gateway (Coremail) with SMTP id _____8Dx++pLEktmSKwAAA--.1224S3; Mon, 20 May 2024 17:05:15 +0800 (CST) Received: from 5.5.5 (unknown [10.2.6.5]) by localhost.localdomain (Coremail) with SMTP id AQAAf8BxHMdJEktm5aUBAA--.5842S2; Mon, 20 May 2024 17:05:13 +0800 (CST) From: mengqinggang To: libc-alpha@sourceware.org Cc: adhemerval.zanella@linaro.org, xuchenghua@loongson.cn, caiyinyu@loongson.cn, chenglulu@loongson.cn, cailulu@loongson.cn, xry111@xry111.site, i.swmail@xen0n.name, maskray@google.com, luweining@loongson.cn, wanglei@loongson.cn, hejinyang@loongson.cn, mengqinggang@loongson.cn Subject: [PATCH v1] LoongArch: Fix tst-gnu2-tls2 compiler error Date: Mon, 20 May 2024 17:05:12 +0800 Message-Id: <20240520090512.1122982-1-mengqinggang@loongson.cn> X-Mailer: git-send-email 2.39.3 MIME-Version: 1.0 X-CM-TRANSID: AQAAf8BxHMdJEktm5aUBAA--.5842S2 X-CM-SenderInfo: 5phqw15lqjwttqj6z05rqj20fqof0/ X-Coremail-Antispam: 1Uk129KBj93XoW7Aw47CFyUurWkZr4fJw18WFX_yoW8uw48pr 97Zr1kJF4fCF1rJrWvk3yIgF1kGFZ2kr17ZF13Aw18Cr1I9ryvvrsay3sxZF1rX34kA340 vryrGa4jgFn8J3XCm3ZEXasCq-sJn29KB7ZKAUJUUUU5529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUUk2b4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1Y6r17M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Gr0_Xr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Gr0_Cr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AK xVW8Jr0_Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l57IF6xkI12xvs2x26I8E6xACxx 1l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1Y6r17McIj6I8E87Iv 67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IYc2Ij64vIr41l42xK82IYc2 Ij64vIr41l4I8I3I0E4IkC6x0Yz7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s02 6x8GjcxK67AKxVWUGVWUWwC2zVAF1VAY17CE14v26r1q6r43MIIYrxkI7VAKI48JMIIF0x vE2Ix0cI8IcVAFwI0_Jr0_JF4lIxAIcVC0I7IYx2IY6xkF7I0E14v26r1j6r4UMIIF0xvE 42xK8VAvwI8IcIk0rVWUJVWUCwCI42IY6I8E87Iv67AKxVW8JVWxJwCI42IY6I8E87Iv6x kF7I0E14v26r4j6r4UJbIYCTnIWIevJa73UjIFyTuYvjxU7_MaUUUUU X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_NONE, 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 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+patchwork=sourceware.org@sourceware.org Add -mno-lsx to tst-gnu2-tlsmod*.c if gcc support -mno-lsx. Add escape character '\' in vector support test function. --- sysdeps/loongarch/Makefile | 2 ++ sysdeps/loongarch/configure | 2 ++ sysdeps/loongarch/configure.ac | 5 +++-- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/sysdeps/loongarch/Makefile b/sysdeps/loongarch/Makefile index a4ee915eff..b00c090faa 100644 --- a/sysdeps/loongarch/Makefile +++ b/sysdeps/loongarch/Makefile @@ -35,10 +35,12 @@ sysdep-dl-routines += \ # Disable the compiler from using LSX for TLS descriptor tests, or storing into # 16B TLS variable may clobber FP/vector registers and prevent us from checking # their contents. +ifeq (yes,$(loongarch-vec-com)) CFLAGS-tst-gnu2-tls2mod0.c += -mno-lsx CFLAGS-tst-gnu2-tls2mod1.c += -mno-lsx CFLAGS-tst-gnu2-tls2mod2.c += -mno-lsx endif +endif # LoongArch's assembler also needs to know about PIC as it changes the # definition of some assembler macros. diff --git a/sysdeps/loongarch/configure b/sysdeps/loongarch/configure index 731f79438f..93691af243 100644 --- a/sysdeps/loongarch/configure +++ b/sysdeps/loongarch/configure @@ -143,3 +143,5 @@ then printf "%s\n" "#define HAVE_LOONGARCH_VEC_COM 1" >>confdefs.h fi +config_vars="$config_vars +loongarch-vec-com = $libc_cv_loongarch_vec_com" diff --git a/sysdeps/loongarch/configure.ac b/sysdeps/loongarch/configure.ac index 24fee55dcc..c56a203574 100644 --- a/sysdeps/loongarch/configure.ac +++ b/sysdeps/loongarch/configure.ac @@ -71,8 +71,8 @@ AC_CACHE_CHECK([for vector support in compiler], AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ void foo (void) { - asm volatile ("vldi $vr0, 1" ::: "$vr0"); - asm volatile ("xvldi $xr0, 1" ::: "$xr0"); + asm volatile ("vldi \$vr0, 1" ::: "\$vr0"); + asm volatile ("xvldi \$xr0, 1" ::: "\$xr0"); } ]])], [libc_cv_loongarch_vec_com=yes], @@ -81,3 +81,4 @@ if test "$libc_cv_loongarch_vec_com" = yes ; then AC_DEFINE(HAVE_LOONGARCH_VEC_COM) fi +LIBC_CONFIG_VAR([loongarch-vec-com], [$libc_cv_loongarch_vec_com])