From patchwork Sun Mar 31 10:14:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: caiyinyu X-Patchwork-Id: 87853 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 7025E3858D28 for ; Sun, 31 Mar 2024 10:15:10 +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 544493858D1E for ; Sun, 31 Mar 2024 10:14:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 544493858D1E 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 544493858D1E 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=1711880079; cv=none; b=Q4ihgqtH/nHIvEaUsMGzA7JMOkw4fCpcmndj9vJSHYi4924M8uGZZcb6ewz92EHL55Q40fs+Zo92ZyE+aICAuGYGiuzVxEuP0jAbX0HyY65rA1CnukJ8XXKMSnVQrNgzOM7n4sZb4pqovtCW5r7HkDzUpeMvWGLBFXewz7hRx/w= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1711880079; c=relaxed/simple; bh=p/UB+he5ky+sfusBBmWg9cety15CheekOGiqXLDH5KM=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=A9HCWZoV5b6ARoVaMZ8qYIXAagBB0M6u2oFZUPy/V2taxUF5Uz27y9mLkc/E/27hoh1DAuph/IBQo6sxTdrU4p1TvRpQglW04jBbwgu/WKpRErgfhbYH9zb1ENZAIBJGuOUBpjdXS36N9m2V0BXileej7rYLvXcHS5sxyEU3DvU= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from loongson.cn (unknown [10.2.6.5]) by gateway (Coremail) with SMTP id _____8BxuvCFNwlmRaAhAA--.12170S3; Sun, 31 Mar 2024 18:14:29 +0800 (CST) Received: from 5.5.5 (unknown [10.2.6.5]) by localhost.localdomain (Coremail) with SMTP id AQAAf8AxRRGBNwlmORhvAA--.8835S4; Sun, 31 Mar 2024 18:14:26 +0800 (CST) From: caiyinyu To: josmyers@redhat.com, libc-alpha@sourceware.org Cc: adhemerval.zanella@linaro.org, xry111@xry111.site, caiyinyu Subject: [PATCH] LoongArch: Add soft floating-point fe* function implementations. Date: Sun, 31 Mar 2024 18:14:00 +0800 Message-Id: <20240331101400.474159-1-caiyinyu@loongson.cn> X-Mailer: git-send-email 2.39.3 In-Reply-To: References: MIME-Version: 1.0 X-CM-TRANSID: AQAAf8AxRRGBNwlmORhvAA--.8835S4 X-CM-SenderInfo: 5fdl5xhq1xqz5rrqw2lrqou0/ X-Coremail-Antispam: 1Uk129KBj9fXoWDZw1rGw4fGF1rKrW3uFyrKrX_yoWDtryrWo WaqF15JF17Arn3Jr15AFy5X39rXw48Gw1xG3srAr18Jr1UJw1UJrW5Gw15JrWjqwsxZr4r JryUGr1UAr15Gry5l-sFpf9Il3svdjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8wcxFpf 9Il3svdxBIdaVrn0xqx4xG64xvF2IEw4CE5I8CrVC2j2Jv73VFW2AGmfu7bjvjm3AaLaJ3 UjIYCTnIWjp_UUUYU7kC6x804xWl14x267AKxVWUJVW8JwAFc2x0x2IEx4CE42xK8VAvwI 8IcIk0rVWrJVCq3wAFIxvE14AKwVWUXVWUAwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xG Y2AK021l84ACjcxK6xIIjxv20xvE14v26r1j6r1xM28EF7xvwVC0I7IYx2IY6xkF7I0E14 v26r1j6r4UM28EF7xvwVC2z280aVAFwI0_Gr0_Cr1l84ACjcxK6I8E87Iv6xkF7I0E14v2 6r4j6r4UJwAS0I0E0xvYzxvE52x082IY62kv0487Mc804VCY07AIYIkI8VC2zVCFFI0UMc 02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0I7IYx2IY67AKxVWUGVWUXwAv7VC2z280aVAF wI0_Gr0_Cr1lOx8S6xCaFVCjc4AY6r1j6r4UM4x0Y48IcxkI7VAKI48JMxAIw28IcxkI7V AKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCj r7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AKxVWUAVWUtwCIc40Y0x0EwIxGrwCI42IY6x IIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxVWUJVW8JwCI42IY6xAI w20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x 0267AKxVWUJVW8JbIYCTnIWIevJa73UjIFyTuYvjxU2DUUUUUUU X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, KAM_SHORT, 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: , Reply-To: Joseph Myers Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org This patch accomplishes the following: 1. Implements soft floating-point functions to enhance compatibility and flexibility in environments without hardware floating-point support. 2. Refactors macro definitions by moving them from `fenv_libc.h` to `fpu_control.h`. This change not only simplifies the codebase but also eliminates the need for the unexported header file `fenv_libc.h`, streamlining the inclusion of floating-point utilities across different modules. Signed-off-by: caiyinyu --- sysdeps/loongarch/fpu/fclrexcpt.c | 1 - sysdeps/loongarch/fpu/fedisblxcpt.c | 3 +- sysdeps/loongarch/fpu/feenablxcpt.c | 3 +- sysdeps/loongarch/fpu/fegetexcept.c | 3 +- sysdeps/loongarch/fpu_control.h | 29 +- sysdeps/loongarch/math_private.h | 1 - sysdeps/loongarch/nofpu/Makefile | 10 + sysdeps/loongarch/nofpu/Subdirs | 1 + sysdeps/loongarch/nofpu/Versions | 13 + sysdeps/loongarch/nofpu/fclrexcpt.c | 37 + .../{fpu/fenv_libc.h => nofpu/fedisblxcpt.c} | 24 +- sysdeps/loongarch/nofpu/feenablxcpt.c | 32 + sysdeps/loongarch/nofpu/fegetenv.c | 32 + sysdeps/loongarch/nofpu/fegetexcept.c | 26 + sysdeps/loongarch/nofpu/fegetmode.c | 27 + sysdeps/loongarch/nofpu/fegetround.c | 29 + sysdeps/loongarch/nofpu/feholdexcpt.c | 37 + sysdeps/loongarch/nofpu/fesetenv.c | 37 + sysdeps/loongarch/nofpu/fesetexcept.c | 27 + sysdeps/loongarch/nofpu/fesetmode.c | 34 + sysdeps/loongarch/nofpu/fesetround.c | 36 + sysdeps/loongarch/nofpu/feupdateenv.c | 43 + sysdeps/loongarch/nofpu/fgetexcptflg.c | 28 + sysdeps/loongarch/nofpu/fraiseexcpt.c | 42 + sysdeps/loongarch/nofpu/fsetexcptflg.c | 35 + sysdeps/loongarch/nofpu/ftestexcept.c | 27 + sysdeps/loongarch/nofpu/get-rounding-mode.h | 34 + sysdeps/loongarch/nofpu/sim-full.c | 37 + sysdeps/loongarch/nofpu/soft-supp.h | 22 + sysdeps/loongarch/sfp-machine.h | 15 +- .../loongarch/lp64/{ => fpu}/libc.abilist | 0 .../loongarch/{ => lp64/fpu}/localplt.data | 0 .../sysv/linux/loongarch/lp64/nofpu/Implies | 1 + .../linux/loongarch/lp64/nofpu/libc.abilist | 2295 +++++++++++++++++ .../linux/loongarch/lp64/nofpu/localplt.data | 23 + 35 files changed, 3007 insertions(+), 37 deletions(-) create mode 100644 sysdeps/loongarch/nofpu/Makefile create mode 100644 sysdeps/loongarch/nofpu/Subdirs create mode 100644 sysdeps/loongarch/nofpu/Versions create mode 100644 sysdeps/loongarch/nofpu/fclrexcpt.c rename sysdeps/loongarch/{fpu/fenv_libc.h => nofpu/fedisblxcpt.c} (62%) create mode 100644 sysdeps/loongarch/nofpu/feenablxcpt.c create mode 100644 sysdeps/loongarch/nofpu/fegetenv.c create mode 100644 sysdeps/loongarch/nofpu/fegetexcept.c create mode 100644 sysdeps/loongarch/nofpu/fegetmode.c create mode 100644 sysdeps/loongarch/nofpu/fegetround.c create mode 100644 sysdeps/loongarch/nofpu/feholdexcpt.c create mode 100644 sysdeps/loongarch/nofpu/fesetenv.c create mode 100644 sysdeps/loongarch/nofpu/fesetexcept.c create mode 100644 sysdeps/loongarch/nofpu/fesetmode.c create mode 100644 sysdeps/loongarch/nofpu/fesetround.c create mode 100644 sysdeps/loongarch/nofpu/feupdateenv.c create mode 100644 sysdeps/loongarch/nofpu/fgetexcptflg.c create mode 100644 sysdeps/loongarch/nofpu/fraiseexcpt.c create mode 100644 sysdeps/loongarch/nofpu/fsetexcptflg.c create mode 100644 sysdeps/loongarch/nofpu/ftestexcept.c create mode 100644 sysdeps/loongarch/nofpu/get-rounding-mode.h create mode 100644 sysdeps/loongarch/nofpu/sim-full.c create mode 100644 sysdeps/loongarch/nofpu/soft-supp.h rename sysdeps/unix/sysv/linux/loongarch/lp64/{ => fpu}/libc.abilist (100%) rename sysdeps/unix/sysv/linux/loongarch/{ => lp64/fpu}/localplt.data (100%) create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/Implies create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/libc.abilist create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/localplt.data diff --git a/sysdeps/loongarch/fpu/fclrexcpt.c b/sysdeps/loongarch/fpu/fclrexcpt.c index 4301b1fd68..6ed9989760 100644 --- a/sysdeps/loongarch/fpu/fclrexcpt.c +++ b/sysdeps/loongarch/fpu/fclrexcpt.c @@ -17,7 +17,6 @@ . */ #include -#include #include int diff --git a/sysdeps/loongarch/fpu/fedisblxcpt.c b/sysdeps/loongarch/fpu/fedisblxcpt.c index a3f92f108d..5563e51d28 100644 --- a/sysdeps/loongarch/fpu/fedisblxcpt.c +++ b/sysdeps/loongarch/fpu/fedisblxcpt.c @@ -17,7 +17,6 @@ . */ #include -#include #include int @@ -28,7 +27,7 @@ fedisableexcept (int excepts) /* Get the current control word. */ _FPU_GETCW (new_exc); - old_exc = (new_exc & ENABLE_MASK) << ENABLE_SHIFT; + old_exc = (new_exc & _FPU_ENABLE_MASK) << ENABLE_SHIFT; excepts &= FE_ALL_EXCEPT; diff --git a/sysdeps/loongarch/fpu/feenablxcpt.c b/sysdeps/loongarch/fpu/feenablxcpt.c index 9b415f09b7..84dc49db2a 100644 --- a/sysdeps/loongarch/fpu/feenablxcpt.c +++ b/sysdeps/loongarch/fpu/feenablxcpt.c @@ -17,7 +17,6 @@ . */ #include -#include #include int @@ -28,7 +27,7 @@ feenableexcept (int excepts) /* Get the current control word. */ _FPU_GETCW (new_exc); - old_exc = (new_exc & ENABLE_MASK) << ENABLE_SHIFT; + old_exc = (new_exc & _FPU_ENABLE_MASK) << ENABLE_SHIFT; excepts &= FE_ALL_EXCEPT; diff --git a/sysdeps/loongarch/fpu/fegetexcept.c b/sysdeps/loongarch/fpu/fegetexcept.c index a57543fcd3..32ad3332ab 100644 --- a/sysdeps/loongarch/fpu/fegetexcept.c +++ b/sysdeps/loongarch/fpu/fegetexcept.c @@ -17,7 +17,6 @@ . */ #include -#include #include int @@ -28,5 +27,5 @@ fegetexcept (void) /* Get the current control word. */ _FPU_GETCW (exc); - return (exc & ENABLE_MASK) << ENABLE_SHIFT; + return (exc & _FPU_ENABLE_MASK) << ENABLE_SHIFT; } diff --git a/sysdeps/loongarch/fpu_control.h b/sysdeps/loongarch/fpu_control.h index 54add4e01c..5a8148e781 100644 --- a/sysdeps/loongarch/fpu_control.h +++ b/sysdeps/loongarch/fpu_control.h @@ -51,10 +51,25 @@ #include +#define _FPU_DEFAULT 0x0 +#define _FPU_IEEE 0x1F +/* Mask for rounding control/enable/cause fields. */ +#define _FPU_RC_MASK 0x300 +#define _FPU_ENABLE_MASK 0x0000001f +#define _FPU_CAUSE_MASK 0x1f000000 +/* Shift for FE_* flags to get up to the ENABLE bits and the CAUSE bits. */ +#define ENABLE_SHIFT 16 +#define CAUSE_SHIFT 8 +/* Masks for interrupts. */ +#define _FPU_MASK_V 0x10 /* Invalid operation */ +#define _FPU_MASK_Z 0x08 /* Division by zero */ +#define _FPU_MASK_O 0x04 /* Overflow */ +#define _FPU_MASK_U 0x02 /* Underflow */ +#define _FPU_MASK_I 0x01 /* Inexact operation */ + #ifdef __loongarch_soft_float #define _FPU_RESERVED 0xffffffff -#define _FPU_DEFAULT 0x00000000 typedef unsigned int fpu_control_t; #define _FPU_GETCW(cw) (cw) = 0 #define _FPU_SETCW(cw) (void) (cw) @@ -62,13 +77,6 @@ extern fpu_control_t __fpu_control; #else /* __loongarch_soft_float */ -/* Masks for interrupts. */ -#define _FPU_MASK_V 0x10 /* Invalid operation */ -#define _FPU_MASK_Z 0x08 /* Division by zero */ -#define _FPU_MASK_O 0x04 /* Overflow */ -#define _FPU_MASK_U 0x02 /* Underflow */ -#define _FPU_MASK_I 0x01 /* Inexact operation */ - /* Flush denormalized numbers to zero. */ #define _FPU_FLUSH_TZ 0x1000000 @@ -77,14 +85,9 @@ extern fpu_control_t __fpu_control; #define _FPU_RC_ZERO 0x100 #define _FPU_RC_UP 0x200 #define _FPU_RC_DOWN 0x300 -/* Mask for rounding control. */ -#define _FPU_RC_MASK 0x300 #define _FPU_RESERVED 0x0 -#define _FPU_DEFAULT 0x0 -#define _FPU_IEEE 0x1F - /* Type of the control word. */ typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); diff --git a/sysdeps/loongarch/math_private.h b/sysdeps/loongarch/math_private.h index 40cd54c8cf..a2708a4af8 100644 --- a/sysdeps/loongarch/math_private.h +++ b/sysdeps/loongarch/math_private.h @@ -27,7 +27,6 @@ #ifdef __loongarch_hard_float #include -#include #include #define _FPU_MASK_ALL \ diff --git a/sysdeps/loongarch/nofpu/Makefile b/sysdeps/loongarch/nofpu/Makefile new file mode 100644 index 0000000000..53b015c3dc --- /dev/null +++ b/sysdeps/loongarch/nofpu/Makefile @@ -0,0 +1,10 @@ +# Makefile fragment for LoongArch with no FPU. + +ifeq ($(subdir),soft-fp) +sysdep_routines += $(gcc-single-routines) $(gcc-double-routines) \ + sim-full +endif + +ifeq ($(subdir),math) +CPPFLAGS += -I../soft-fp/ +endif diff --git a/sysdeps/loongarch/nofpu/Subdirs b/sysdeps/loongarch/nofpu/Subdirs new file mode 100644 index 0000000000..87eadf3024 --- /dev/null +++ b/sysdeps/loongarch/nofpu/Subdirs @@ -0,0 +1 @@ +soft-fp diff --git a/sysdeps/loongarch/nofpu/Versions b/sysdeps/loongarch/nofpu/Versions new file mode 100644 index 0000000000..bd6d3a4206 --- /dev/null +++ b/sysdeps/loongarch/nofpu/Versions @@ -0,0 +1,13 @@ +libc { + GLIBC_2.37 { + __adddf3; __addsf3; __divdf3; __divsf3; __eqdf2; __eqsf2; + __extendsfdf2; __fixdfsi; __fixsfsi; + __fixunsdfsi; __fixunssfsi; + __floatsidf; __floatsisf; + __gedf2; __gesf2; __ledf2; __lesf2; __muldf3; __mulsf3; + __negdf2; __negsf2; __subdf3; __subsf3; __truncdfsf2; + } + GLIBC_PRIVATE { + __sim_cw_thread; __simulate_exceptions; + } +} diff --git a/sysdeps/loongarch/nofpu/fclrexcpt.c b/sysdeps/loongarch/nofpu/fclrexcpt.c new file mode 100644 index 0000000000..2938331a09 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fclrexcpt.c @@ -0,0 +1,37 @@ +/* Clear floating-point exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +feclearexcept (int excepts) +{ + /* Mask out unsupported bits/exceptions. */ + excepts &= FE_ALL_EXCEPT; + + /* Clear exception flag bits and cause bits. If the cause bit is not + cleared, the next CTC instruction (just below) will re-generate the + exception. */ + + __sim_cw_thread &= ~(excepts | (excepts << CAUSE_SHIFT)); + + return 0; +} + +libm_hidden_weak (feclearexcept) diff --git a/sysdeps/loongarch/fpu/fenv_libc.h b/sysdeps/loongarch/nofpu/fedisblxcpt.c similarity index 62% rename from sysdeps/loongarch/fpu/fenv_libc.h rename to sysdeps/loongarch/nofpu/fedisblxcpt.c index 639e0b16b2..293b530461 100644 --- a/sysdeps/loongarch/fpu/fenv_libc.h +++ b/sysdeps/loongarch/nofpu/fedisblxcpt.c @@ -1,5 +1,5 @@ -/* Internal libc stuff for floating point environment routines. - Copyright (C) 2022-2024 Free Software Foundation, Inc. +/* Disable exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,15 +16,17 @@ License along with the GNU C Library. If not, see . */ -#ifndef _FENV_LIBC_H -#define _FENV_LIBC_H 1 +#include "soft-fp.h" +#include "soft-supp.h" -/* Mask for enabling exceptions and for the CAUSE bits. */ -#define ENABLE_MASK 0x0000001FU -#define CAUSE_MASK 0x1F000000U +int +fedisableexcept (int excepts) +{ + unsigned int old_exc = (__sim_cw_thread & _FPU_ENABLE_MASK) << ENABLE_SHIFT; -/* Shift for FE_* flags to get up to the ENABLE bits and the CAUSE bits. */ -#define ENABLE_SHIFT 16 -#define CAUSE_SHIFT 8 + excepts &= FE_ALL_EXCEPT; -#endif /* _FENV_LIBC_H */ + __sim_cw_thread &= ~(excepts >> ENABLE_SHIFT); + + return old_exc; +} diff --git a/sysdeps/loongarch/nofpu/feenablxcpt.c b/sysdeps/loongarch/nofpu/feenablxcpt.c new file mode 100644 index 0000000000..8dfbe371ea --- /dev/null +++ b/sysdeps/loongarch/nofpu/feenablxcpt.c @@ -0,0 +1,32 @@ +/* Enable exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +feenableexcept (int excepts) +{ + int old_exc = (__sim_cw_thread & _FPU_ENABLE_MASK) << ENABLE_SHIFT; + + excepts &= FE_ALL_EXCEPT; + + __sim_cw_thread |= excepts >> ENABLE_SHIFT; + + return old_exc; +} diff --git a/sysdeps/loongarch/nofpu/fegetenv.c b/sysdeps/loongarch/nofpu/fegetenv.c new file mode 100644 index 0000000000..7bccaf0250 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fegetenv.c @@ -0,0 +1,32 @@ +/* Store current floating-point environment (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +__fegetenv (fenv_t *envp) +{ + + envp->__fp_control_register = __sim_cw_thread; + + return 0; +} + +libm_hidden_def (__fegetenv) weak_alias (__fegetenv, fegetenv) +libm_hidden_weak (fegetenv) diff --git a/sysdeps/loongarch/nofpu/fegetexcept.c b/sysdeps/loongarch/nofpu/fegetexcept.c new file mode 100644 index 0000000000..fab16a6485 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fegetexcept.c @@ -0,0 +1,26 @@ +/* Get floating-point exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fegetexcept (void) +{ + return (__sim_cw_thread & _FPU_ENABLE_MASK) << ENABLE_SHIFT; +} diff --git a/sysdeps/loongarch/nofpu/fegetmode.c b/sysdeps/loongarch/nofpu/fegetmode.c new file mode 100644 index 0000000000..7751fe86a0 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fegetmode.c @@ -0,0 +1,27 @@ +/* Store current floating-point control modes (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fegetmode (femode_t *modep) +{ + *modep = __sim_cw_thread; + return 0; +} diff --git a/sysdeps/loongarch/nofpu/fegetround.c b/sysdeps/loongarch/nofpu/fegetround.c new file mode 100644 index 0000000000..db440c1707 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fegetround.c @@ -0,0 +1,29 @@ +/* Return current rounding mode (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +__fegetround (void) +{ + return __sim_cw_thread & _FPU_RC_MASK; +} + +libm_hidden_def (__fegetround) weak_alias (__fegetround, fegetround) +libm_hidden_weak (fegetround) diff --git a/sysdeps/loongarch/nofpu/feholdexcpt.c b/sysdeps/loongarch/nofpu/feholdexcpt.c new file mode 100644 index 0000000000..bbf106f41e --- /dev/null +++ b/sysdeps/loongarch/nofpu/feholdexcpt.c @@ -0,0 +1,37 @@ +/* Store current floating-point environment and clear exceptions + (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +__feholdexcept (fenv_t *envp) +{ + + envp->__fp_control_register = __sim_cw_thread; + + /* Clear all exception enable bits and flags. */ + __sim_cw_thread &= ~(_FPU_MASK_V | _FPU_MASK_Z | _FPU_MASK_O | _FPU_MASK_U + | _FPU_MASK_I | FE_ALL_EXCEPT); + + return 0; +} + +libm_hidden_def (__feholdexcept) weak_alias (__feholdexcept, feholdexcept) +libm_hidden_weak (feholdexcept) diff --git a/sysdeps/loongarch/nofpu/fesetenv.c b/sysdeps/loongarch/nofpu/fesetenv.c new file mode 100644 index 0000000000..31fd258cdb --- /dev/null +++ b/sysdeps/loongarch/nofpu/fesetenv.c @@ -0,0 +1,37 @@ +/* Set floating point environment (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +__fesetenv (const fenv_t *envp) +{ + + if (envp == FE_DFL_ENV) + __sim_cw_thread = _FPU_DEFAULT; + else if (envp == FE_NOMASK_ENV) + __sim_cw_thread = _FPU_IEEE; + else + __sim_cw_thread = envp->__fp_control_register; + + return 0; +} + +libm_hidden_def (__fesetenv) weak_alias (__fesetenv, fesetenv) +libm_hidden_weak (fesetenv) diff --git a/sysdeps/loongarch/nofpu/fesetexcept.c b/sysdeps/loongarch/nofpu/fesetexcept.c new file mode 100644 index 0000000000..bceff28844 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fesetexcept.c @@ -0,0 +1,27 @@ +/* Set given exception flags (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fesetexcept (int excepts) +{ + __sim_cw_thread |= excepts & FE_ALL_EXCEPT; + return 0; +} diff --git a/sysdeps/loongarch/nofpu/fesetmode.c b/sysdeps/loongarch/nofpu/fesetmode.c new file mode 100644 index 0000000000..185c97372b --- /dev/null +++ b/sysdeps/loongarch/nofpu/fesetmode.c @@ -0,0 +1,34 @@ +/* Install given floating-point control modes (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +#define FCSR_STATUS 0x1f1f0000 + +int +fesetmode (const femode_t *modep) +{ + __sim_cw_thread &= FCSR_STATUS; + if (modep == FE_DFL_MODE) + __sim_cw_thread |= _FPU_DEFAULT; + else + __sim_cw_thread |= *modep & ~FCSR_STATUS; + + return 0; +} diff --git a/sysdeps/loongarch/nofpu/fesetround.c b/sysdeps/loongarch/nofpu/fesetround.c new file mode 100644 index 0000000000..6b16ce0828 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fesetround.c @@ -0,0 +1,36 @@ +/* Set rounding mode (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +__fesetround (int round) +{ + if ((round & ~_FPU_RC_MASK) != 0) + /* ROUND is no valid rounding mode. */ + return 1; + + /* Set rounding bits. */ + __sim_cw_thread &= ~_FPU_RC_MASK; + __sim_cw_thread |= round; + + return 0; +} +libm_hidden_def (__fesetround) weak_alias (__fesetround, fesetround) +libm_hidden_weak (fesetround) diff --git a/sysdeps/loongarch/nofpu/feupdateenv.c b/sysdeps/loongarch/nofpu/feupdateenv.c new file mode 100644 index 0000000000..1f7c1c475f --- /dev/null +++ b/sysdeps/loongarch/nofpu/feupdateenv.c @@ -0,0 +1,43 @@ +/* Install given floating-point environment and raise exceptions + (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" +#include + +int +__feupdateenv (const fenv_t *envp) +{ + int temp; + + temp = __sim_cw_thread & FE_ALL_EXCEPT; + + /* Install new environment. */ + __fesetenv (envp); + + /* Raise the saved exception. Incidentally for us the implementation + defined format of the values in objects of type fexcept_t is the + same as the ones specified using the FE_* constants. */ + __feraiseexcept (temp); + + return 0; +} + +libm_hidden_def (__feupdateenv) weak_alias (__feupdateenv, feupdateenv) +libm_hidden_weak (feupdateenv) diff --git a/sysdeps/loongarch/nofpu/fgetexcptflg.c b/sysdeps/loongarch/nofpu/fgetexcptflg.c new file mode 100644 index 0000000000..dd16932966 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fgetexcptflg.c @@ -0,0 +1,28 @@ +/* Store current representation for exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fegetexceptflag (fexcept_t *flagp, int excepts) +{ + *flagp = (fexcept_t) __sim_cw_thread & excepts & FE_ALL_EXCEPT; + + return 0; +} diff --git a/sysdeps/loongarch/nofpu/fraiseexcpt.c b/sysdeps/loongarch/nofpu/fraiseexcpt.c new file mode 100644 index 0000000000..b701da1f86 --- /dev/null +++ b/sysdeps/loongarch/nofpu/fraiseexcpt.c @@ -0,0 +1,42 @@ +/* Raise given exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" +#include + +int +__feraiseexcept (int excepts) +{ + int enable; + /* Set flag bits (which are accumulative), and *also* set the + cause bits. The setting of the cause bits is what actually causes + the hardware to generate the exception, if the corresponding enable + bit is set as well. */ + + excepts &= FE_ALL_EXCEPT; + __sim_cw_thread |= excepts | (excepts << CAUSE_SHIFT); + enable = __sim_cw_thread & _FPU_ENABLE_MASK; + if (excepts & __sim_cw_thread & (enable << ENABLE_SHIFT)) + raise (SIGFPE); + + return 0; +} + +libm_hidden_def (__feraiseexcept) weak_alias (__feraiseexcept, feraiseexcept) +libm_hidden_weak (feraiseexcept) diff --git a/sysdeps/loongarch/nofpu/fsetexcptflg.c b/sysdeps/loongarch/nofpu/fsetexcptflg.c new file mode 100644 index 0000000000..cd7dd18b9c --- /dev/null +++ b/sysdeps/loongarch/nofpu/fsetexcptflg.c @@ -0,0 +1,35 @@ +/* Set floating-point environment exception handling (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fesetexceptflag (const fexcept_t *flagp, int excepts) +{ + /* Make sure the flags we want restored are legal. */ + excepts &= FE_ALL_EXCEPT; + + /* Now clear the bits called for, and copy them in from flagp. Note that + we ignore all non-flag bits from *flagp, so they don't matter. */ + __sim_cw_thread = (__sim_cw_thread & ~excepts) | (*flagp & excepts); + + + /* Success. */ + return 0; +} diff --git a/sysdeps/loongarch/nofpu/ftestexcept.c b/sysdeps/loongarch/nofpu/ftestexcept.c new file mode 100644 index 0000000000..549661c88d --- /dev/null +++ b/sysdeps/loongarch/nofpu/ftestexcept.c @@ -0,0 +1,27 @@ +/* Test floating-point exceptions (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" + +int +fetestexcept (int excepts) +{ + return __sim_cw_thread & excepts & FE_ALL_EXCEPT; +} +libm_hidden_def (fetestexcept) diff --git a/sysdeps/loongarch/nofpu/get-rounding-mode.h b/sysdeps/loongarch/nofpu/get-rounding-mode.h new file mode 100644 index 0000000000..a4808cc54e --- /dev/null +++ b/sysdeps/loongarch/nofpu/get-rounding-mode.h @@ -0,0 +1,34 @@ +/* Determine floating-point rounding mode within libc (soft-float edition). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _LOONGARCH_NOFPU_GET_ROUNDING_MODE_H +#define _LOONGARCH_NOFPU_GET_ROUNDING_MODE_H 1 + +#include +#include +#include "soft-supp.h" + +/* Return the floating-point rounding mode. */ + +static inline int +get_rounding_mode (void) +{ + return __sim_cw_thread & _FPU_RC_MASK; +} + +#endif /* get-rounding-mode.h */ diff --git a/sysdeps/loongarch/nofpu/sim-full.c b/sysdeps/loongarch/nofpu/sim-full.c new file mode 100644 index 0000000000..b10e5b2f4d --- /dev/null +++ b/sysdeps/loongarch/nofpu/sim-full.c @@ -0,0 +1,37 @@ +/* Software floating-point exception handling emulation. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +#include "soft-fp.h" +#include "soft-supp.h" +#include + +/* By default, no exceptions should trap. */ +__thread int __sim_cw_thread; +libc_hidden_tls_def (__sim_cw_thread); + +void +__simulate_exceptions (int excepts) +{ + int enable; + __sim_cw_thread |= excepts; + + enable = __sim_cw_thread & _FPU_ENABLE_MASK; + if (excepts & __sim_cw_thread & (enable << ENABLE_SHIFT)) + raise (SIGFPE); +} +libc_hidden_def (__simulate_exceptions) diff --git a/sysdeps/loongarch/nofpu/soft-supp.h b/sysdeps/loongarch/nofpu/soft-supp.h new file mode 100644 index 0000000000..8d3ba09764 --- /dev/null +++ b/sysdeps/loongarch/nofpu/soft-supp.h @@ -0,0 +1,22 @@ +/* Internal support stuff for complete soft float. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +extern __thread int __sim_cw_thread attribute_tls_model_ie; +libc_hidden_tls_proto (__sim_cw_thread, tls_model ("initial-exec")); + +extern void __simulate_exceptions (int excepts); diff --git a/sysdeps/loongarch/sfp-machine.h b/sysdeps/loongarch/sfp-machine.h index cbf66500db..eda6c66423 100644 --- a/sysdeps/loongarch/sfp-machine.h +++ b/sysdeps/loongarch/sfp-machine.h @@ -64,10 +64,6 @@ } \ while (0) -#define _FP_DECL_EX fpu_control_t _fcw - -#define FP_ROUNDMODE (_fcw & 0x300) - #define FP_RND_NEAREST FE_TONEAREST #define FP_RND_ZERO FE_TOWARDZERO #define FP_RND_PINF FE_UPWARD @@ -82,6 +78,8 @@ #define _FP_TININESS_AFTER_ROUNDING 1 #ifdef __loongarch_hard_float +#define _FP_DECL_EX fpu_control_t _fcw +#define FP_ROUNDMODE (_fcw & 0x300) #define FP_INIT_ROUNDMODE \ do \ { \ @@ -98,5 +96,12 @@ while (0) #define FP_TRAPPING_EXCEPTIONS ((_fcw << 16) & 0x1f0000) #else -#define FP_INIT_ROUNDMODE _fcw = FP_RND_NEAREST +#define FP_HANDLE_EXCEPTIONS __simulate_exceptions (_fex) +#define FP_ROUNDMODE (__sim_cw_thread & _FPU_RC_MASK) +#define FP_TRAPPING_EXCEPTIONS (__sim_cw_thread & _FPU_ENABLE_MASK) + +extern __thread int __sim_cw_thread attribute_tls_model_ie; +libc_hidden_tls_proto (__sim_cw_thread, tls_model ("initial-exec")); +extern void __simulate_exceptions (int excepts); +libc_hidden_proto (__simulate_exceptions) #endif diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/fpu/libc.abilist similarity index 100% rename from sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist rename to sysdeps/unix/sysv/linux/loongarch/lp64/fpu/libc.abilist diff --git a/sysdeps/unix/sysv/linux/loongarch/localplt.data b/sysdeps/unix/sysv/linux/loongarch/lp64/fpu/localplt.data similarity index 100% rename from sysdeps/unix/sysv/linux/loongarch/localplt.data rename to sysdeps/unix/sysv/linux/loongarch/lp64/fpu/localplt.data diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/Implies b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/Implies new file mode 100644 index 0000000000..1090fb545a --- /dev/null +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/Implies @@ -0,0 +1 @@ +loongarch/nofpu diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/libc.abilist new file mode 100644 index 0000000000..a04afcfd1f --- /dev/null +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/libc.abilist @@ -0,0 +1,2295 @@ +GLIBC_2.36 _Exit F +GLIBC_2.36 _Fork F +GLIBC_2.36 _IO_2_1_stderr_ D 0xe0 +GLIBC_2.36 _IO_2_1_stdin_ D 0xe0 +GLIBC_2.36 _IO_2_1_stdout_ D 0xe0 +GLIBC_2.36 _IO_adjust_column F +GLIBC_2.36 _IO_adjust_wcolumn F +GLIBC_2.36 _IO_default_doallocate F +GLIBC_2.36 _IO_default_finish F +GLIBC_2.36 _IO_default_pbackfail F +GLIBC_2.36 _IO_default_uflow F +GLIBC_2.36 _IO_default_xsgetn F +GLIBC_2.36 _IO_default_xsputn F +GLIBC_2.36 _IO_do_write F +GLIBC_2.36 _IO_doallocbuf F +GLIBC_2.36 _IO_fclose F +GLIBC_2.36 _IO_fdopen F +GLIBC_2.36 _IO_feof F +GLIBC_2.36 _IO_ferror F +GLIBC_2.36 _IO_fflush F +GLIBC_2.36 _IO_fgetpos F +GLIBC_2.36 _IO_fgetpos64 F +GLIBC_2.36 _IO_fgets F +GLIBC_2.36 _IO_file_attach F +GLIBC_2.36 _IO_file_close F +GLIBC_2.36 _IO_file_close_it F +GLIBC_2.36 _IO_file_doallocate F +GLIBC_2.36 _IO_file_finish F +GLIBC_2.36 _IO_file_fopen F +GLIBC_2.36 _IO_file_init F +GLIBC_2.36 _IO_file_jumps D 0xa8 +GLIBC_2.36 _IO_file_open F +GLIBC_2.36 _IO_file_overflow F +GLIBC_2.36 _IO_file_read F +GLIBC_2.36 _IO_file_seek F +GLIBC_2.36 _IO_file_seekoff F +GLIBC_2.36 _IO_file_setbuf F +GLIBC_2.36 _IO_file_stat F +GLIBC_2.36 _IO_file_sync F +GLIBC_2.36 _IO_file_underflow F +GLIBC_2.36 _IO_file_write F +GLIBC_2.36 _IO_file_xsputn F +GLIBC_2.36 _IO_flockfile F +GLIBC_2.36 _IO_flush_all F +GLIBC_2.36 _IO_flush_all_linebuffered F +GLIBC_2.36 _IO_fopen F +GLIBC_2.36 _IO_fprintf F +GLIBC_2.36 _IO_fputs F +GLIBC_2.36 _IO_fread F +GLIBC_2.36 _IO_free_backup_area F +GLIBC_2.36 _IO_free_wbackup_area F +GLIBC_2.36 _IO_fsetpos F +GLIBC_2.36 _IO_fsetpos64 F +GLIBC_2.36 _IO_ftell F +GLIBC_2.36 _IO_ftrylockfile F +GLIBC_2.36 _IO_funlockfile F +GLIBC_2.36 _IO_fwrite F +GLIBC_2.36 _IO_getc F +GLIBC_2.36 _IO_getline F +GLIBC_2.36 _IO_getline_info F +GLIBC_2.36 _IO_gets F +GLIBC_2.36 _IO_init F +GLIBC_2.36 _IO_init_marker F +GLIBC_2.36 _IO_init_wmarker F +GLIBC_2.36 _IO_iter_begin F +GLIBC_2.36 _IO_iter_end F +GLIBC_2.36 _IO_iter_file F +GLIBC_2.36 _IO_iter_next F +GLIBC_2.36 _IO_least_wmarker F +GLIBC_2.36 _IO_link_in F +GLIBC_2.36 _IO_list_all D 0x8 +GLIBC_2.36 _IO_list_lock F +GLIBC_2.36 _IO_list_resetlock F +GLIBC_2.36 _IO_list_unlock F +GLIBC_2.36 _IO_marker_delta F +GLIBC_2.36 _IO_marker_difference F +GLIBC_2.36 _IO_padn F +GLIBC_2.36 _IO_peekc_locked F +GLIBC_2.36 _IO_popen F +GLIBC_2.36 _IO_printf F +GLIBC_2.36 _IO_proc_close F +GLIBC_2.36 _IO_proc_open F +GLIBC_2.36 _IO_putc F +GLIBC_2.36 _IO_puts F +GLIBC_2.36 _IO_remove_marker F +GLIBC_2.36 _IO_seekmark F +GLIBC_2.36 _IO_seekoff F +GLIBC_2.36 _IO_seekpos F +GLIBC_2.36 _IO_seekwmark F +GLIBC_2.36 _IO_setb F +GLIBC_2.36 _IO_setbuffer F +GLIBC_2.36 _IO_setvbuf F +GLIBC_2.36 _IO_sgetn F +GLIBC_2.36 _IO_sprintf F +GLIBC_2.36 _IO_sputbackc F +GLIBC_2.36 _IO_sputbackwc F +GLIBC_2.36 _IO_sscanf F +GLIBC_2.36 _IO_str_init_readonly F +GLIBC_2.36 _IO_str_init_static F +GLIBC_2.36 _IO_str_overflow F +GLIBC_2.36 _IO_str_pbackfail F +GLIBC_2.36 _IO_str_seekoff F +GLIBC_2.36 _IO_str_underflow F +GLIBC_2.36 _IO_sungetc F +GLIBC_2.36 _IO_sungetwc F +GLIBC_2.36 _IO_switch_to_get_mode F +GLIBC_2.36 _IO_switch_to_main_wget_area F +GLIBC_2.36 _IO_switch_to_wbackup_area F +GLIBC_2.36 _IO_switch_to_wget_mode F +GLIBC_2.36 _IO_un_link F +GLIBC_2.36 _IO_ungetc F +GLIBC_2.36 _IO_unsave_markers F +GLIBC_2.36 _IO_unsave_wmarkers F +GLIBC_2.36 _IO_vfprintf F +GLIBC_2.36 _IO_vsprintf F +GLIBC_2.36 _IO_wdefault_doallocate F +GLIBC_2.36 _IO_wdefault_finish F +GLIBC_2.36 _IO_wdefault_pbackfail F +GLIBC_2.36 _IO_wdefault_uflow F +GLIBC_2.36 _IO_wdefault_xsgetn F +GLIBC_2.36 _IO_wdefault_xsputn F +GLIBC_2.36 _IO_wdo_write F +GLIBC_2.36 _IO_wdoallocbuf F +GLIBC_2.36 _IO_wfile_jumps D 0xa8 +GLIBC_2.36 _IO_wfile_overflow F +GLIBC_2.36 _IO_wfile_seekoff F +GLIBC_2.36 _IO_wfile_sync F +GLIBC_2.36 _IO_wfile_underflow F +GLIBC_2.36 _IO_wfile_xsputn F +GLIBC_2.36 _IO_wmarker_delta F +GLIBC_2.36 _IO_wsetb F +GLIBC_2.36 __adjtimex F +GLIBC_2.36 __argz_count F +GLIBC_2.36 __argz_next F +GLIBC_2.36 __argz_stringify F +GLIBC_2.36 __asprintf F +GLIBC_2.36 __asprintf_chk F +GLIBC_2.36 __assert F +GLIBC_2.36 __assert_fail F +GLIBC_2.36 __assert_perror_fail F +GLIBC_2.36 __backtrace F +GLIBC_2.36 __backtrace_symbols F +GLIBC_2.36 __backtrace_symbols_fd F +GLIBC_2.36 __bsd_getpgrp F +GLIBC_2.36 __bzero F +GLIBC_2.36 __check_rhosts_file D 0x4 +GLIBC_2.36 __chk_fail F +GLIBC_2.36 __clone F +GLIBC_2.36 __close F +GLIBC_2.36 __cmsg_nxthdr F +GLIBC_2.36 __confstr_chk F +GLIBC_2.36 __connect F +GLIBC_2.36 __ctype_b_loc F +GLIBC_2.36 __ctype_get_mb_cur_max F +GLIBC_2.36 __ctype_tolower_loc F +GLIBC_2.36 __ctype_toupper_loc F +GLIBC_2.36 __curbrk D 0x8 +GLIBC_2.36 __cxa_at_quick_exit F +GLIBC_2.36 __cxa_atexit F +GLIBC_2.36 __cxa_finalize F +GLIBC_2.36 __cxa_thread_atexit_impl F +GLIBC_2.36 __cyg_profile_func_enter F +GLIBC_2.36 __cyg_profile_func_exit F +GLIBC_2.36 __daylight D 0x4 +GLIBC_2.36 __dcgettext F +GLIBC_2.36 __dgettext F +GLIBC_2.36 __dprintf_chk F +GLIBC_2.36 __dup2 F +GLIBC_2.36 __duplocale F +GLIBC_2.36 __endmntent F +GLIBC_2.36 __environ D 0x8 +GLIBC_2.36 __errno_location F +GLIBC_2.36 __explicit_bzero_chk F +GLIBC_2.36 __fbufsize F +GLIBC_2.36 __fcntl F +GLIBC_2.36 __fdelt_chk F +GLIBC_2.36 __fdelt_warn F +GLIBC_2.36 __ffs F +GLIBC_2.36 __fgets_chk F +GLIBC_2.36 __fgets_unlocked_chk F +GLIBC_2.36 __fgetws_chk F +GLIBC_2.36 __fgetws_unlocked_chk F +GLIBC_2.36 __finite F +GLIBC_2.36 __finitef F +GLIBC_2.36 __finitel F +GLIBC_2.36 __flbf F +GLIBC_2.36 __fork F +GLIBC_2.36 __fpending F +GLIBC_2.36 __fprintf_chk F +GLIBC_2.36 __fpu_control D 0x4 +GLIBC_2.36 __fpurge F +GLIBC_2.36 __fread_chk F +GLIBC_2.36 __fread_unlocked_chk F +GLIBC_2.36 __freadable F +GLIBC_2.36 __freading F +GLIBC_2.36 __freelocale F +GLIBC_2.36 __fsetlocking F +GLIBC_2.36 __fwprintf_chk F +GLIBC_2.36 __fwritable F +GLIBC_2.36 __fwriting F +GLIBC_2.36 __getauxval F +GLIBC_2.36 __getcwd_chk F +GLIBC_2.36 __getdelim F +GLIBC_2.36 __getdomainname_chk F +GLIBC_2.36 __getgroups_chk F +GLIBC_2.36 __gethostname_chk F +GLIBC_2.36 __getlogin_r_chk F +GLIBC_2.36 __getmntent_r F +GLIBC_2.36 __getpagesize F +GLIBC_2.36 __getpgid F +GLIBC_2.36 __getpid F +GLIBC_2.36 __gets_chk F +GLIBC_2.36 __gettimeofday F +GLIBC_2.36 __getwd_chk F +GLIBC_2.36 __gmtime_r F +GLIBC_2.36 __h_errno_location F +GLIBC_2.36 __isalnum_l F +GLIBC_2.36 __isalpha_l F +GLIBC_2.36 __isascii_l F +GLIBC_2.36 __isblank_l F +GLIBC_2.36 __iscntrl_l F +GLIBC_2.36 __isctype F +GLIBC_2.36 __isdigit_l F +GLIBC_2.36 __isgraph_l F +GLIBC_2.36 __isinf F +GLIBC_2.36 __isinff F +GLIBC_2.36 __isinfl F +GLIBC_2.36 __islower_l F +GLIBC_2.36 __isnan F +GLIBC_2.36 __isnanf F +GLIBC_2.36 __isnanl F +GLIBC_2.36 __isoc99_fscanf F +GLIBC_2.36 __isoc99_fwscanf F +GLIBC_2.36 __isoc99_scanf F +GLIBC_2.36 __isoc99_sscanf F +GLIBC_2.36 __isoc99_swscanf F +GLIBC_2.36 __isoc99_vfscanf F +GLIBC_2.36 __isoc99_vfwscanf F +GLIBC_2.36 __isoc99_vscanf F +GLIBC_2.36 __isoc99_vsscanf F +GLIBC_2.36 __isoc99_vswscanf F +GLIBC_2.36 __isoc99_vwscanf F +GLIBC_2.36 __isoc99_wscanf F +GLIBC_2.36 __isprint_l F +GLIBC_2.36 __ispunct_l F +GLIBC_2.36 __isspace_l F +GLIBC_2.36 __isupper_l F +GLIBC_2.36 __iswalnum_l F +GLIBC_2.36 __iswalpha_l F +GLIBC_2.36 __iswblank_l F +GLIBC_2.36 __iswcntrl_l F +GLIBC_2.36 __iswctype F +GLIBC_2.36 __iswctype_l F +GLIBC_2.36 __iswdigit_l F +GLIBC_2.36 __iswgraph_l F +GLIBC_2.36 __iswlower_l F +GLIBC_2.36 __iswprint_l F +GLIBC_2.36 __iswpunct_l F +GLIBC_2.36 __iswspace_l F +GLIBC_2.36 __iswupper_l F +GLIBC_2.36 __iswxdigit_l F +GLIBC_2.36 __isxdigit_l F +GLIBC_2.36 __ivaliduser F +GLIBC_2.36 __libc_allocate_rtsig F +GLIBC_2.36 __libc_calloc F +GLIBC_2.36 __libc_current_sigrtmax F +GLIBC_2.36 __libc_current_sigrtmin F +GLIBC_2.36 __libc_free F +GLIBC_2.36 __libc_freeres F +GLIBC_2.36 __libc_init_first F +GLIBC_2.36 __libc_mallinfo F +GLIBC_2.36 __libc_malloc F +GLIBC_2.36 __libc_mallopt F +GLIBC_2.36 __libc_memalign F +GLIBC_2.36 __libc_pvalloc F +GLIBC_2.36 __libc_realloc F +GLIBC_2.36 __libc_sa_len F +GLIBC_2.36 __libc_single_threaded D 0x1 +GLIBC_2.36 __libc_start_main F +GLIBC_2.36 __libc_valloc F +GLIBC_2.36 __longjmp_chk F +GLIBC_2.36 __lseek F +GLIBC_2.36 __mbrlen F +GLIBC_2.36 __mbrtowc F +GLIBC_2.36 __mbsnrtowcs_chk F +GLIBC_2.36 __mbsrtowcs_chk F +GLIBC_2.36 __mbstowcs_chk F +GLIBC_2.36 __memcmpeq F +GLIBC_2.36 __memcpy_chk F +GLIBC_2.36 __memmove_chk F +GLIBC_2.36 __mempcpy F +GLIBC_2.36 __mempcpy_chk F +GLIBC_2.36 __memset_chk F +GLIBC_2.36 __monstartup F +GLIBC_2.36 __mq_open_2 F +GLIBC_2.36 __nanosleep F +GLIBC_2.36 __newlocale F +GLIBC_2.36 __nl_langinfo_l F +GLIBC_2.36 __nss_configure_lookup F +GLIBC_2.36 __nss_hostname_digits_dots F +GLIBC_2.36 __obstack_printf_chk F +GLIBC_2.36 __obstack_vprintf_chk F +GLIBC_2.36 __open F +GLIBC_2.36 __open64 F +GLIBC_2.36 __open64_2 F +GLIBC_2.36 __open_2 F +GLIBC_2.36 __openat64_2 F +GLIBC_2.36 __openat_2 F +GLIBC_2.36 __overflow F +GLIBC_2.36 __pipe F +GLIBC_2.36 __poll F +GLIBC_2.36 __poll_chk F +GLIBC_2.36 __posix_getopt F +GLIBC_2.36 __ppoll_chk F +GLIBC_2.36 __pread64 F +GLIBC_2.36 __pread64_chk F +GLIBC_2.36 __pread_chk F +GLIBC_2.36 __printf_chk F +GLIBC_2.36 __printf_fp F +GLIBC_2.36 __profile_frequency F +GLIBC_2.36 __progname D 0x8 +GLIBC_2.36 __progname_full D 0x8 +GLIBC_2.36 __pthread_cleanup_routine F +GLIBC_2.36 __pthread_key_create F +GLIBC_2.36 __pthread_register_cancel F +GLIBC_2.36 __pthread_register_cancel_defer F +GLIBC_2.36 __pthread_rwlock_unlock F +GLIBC_2.36 __pthread_unregister_cancel F +GLIBC_2.36 __pthread_unregister_cancel_restore F +GLIBC_2.36 __pthread_unwind_next F +GLIBC_2.36 __ptsname_r_chk F +GLIBC_2.36 __pwrite64 F +GLIBC_2.36 __rawmemchr F +GLIBC_2.36 __rcmd_errstr D 0x8 +GLIBC_2.36 __read F +GLIBC_2.36 __read_chk F +GLIBC_2.36 __readlink_chk F +GLIBC_2.36 __readlinkat_chk F +GLIBC_2.36 __realpath_chk F +GLIBC_2.36 __recv_chk F +GLIBC_2.36 __recvfrom_chk F +GLIBC_2.36 __register_atfork F +GLIBC_2.36 __res_init F +GLIBC_2.36 __res_nclose F +GLIBC_2.36 __res_ninit F +GLIBC_2.36 __res_randomid F +GLIBC_2.36 __res_state F +GLIBC_2.36 __sbrk F +GLIBC_2.36 __sched_cpualloc F +GLIBC_2.36 __sched_cpucount F +GLIBC_2.36 __sched_cpufree F +GLIBC_2.36 __sched_get_priority_max F +GLIBC_2.36 __sched_get_priority_min F +GLIBC_2.36 __sched_getparam F +GLIBC_2.36 __sched_getscheduler F +GLIBC_2.36 __sched_setscheduler F +GLIBC_2.36 __sched_yield F +GLIBC_2.36 __select F +GLIBC_2.36 __send F +GLIBC_2.36 __setmntent F +GLIBC_2.36 __setpgid F +GLIBC_2.36 __sigaction F +GLIBC_2.36 __signbit F +GLIBC_2.36 __signbitf F +GLIBC_2.36 __signbitl F +GLIBC_2.36 __sigpause F +GLIBC_2.36 __sigsetjmp F +GLIBC_2.36 __sigsuspend F +GLIBC_2.36 __snprintf_chk F +GLIBC_2.36 __sprintf_chk F +GLIBC_2.36 __stack_chk_fail F +GLIBC_2.36 __statfs F +GLIBC_2.36 __stpcpy F +GLIBC_2.36 __stpcpy_chk F +GLIBC_2.36 __stpncpy F +GLIBC_2.36 __stpncpy_chk F +GLIBC_2.36 __strcasecmp F +GLIBC_2.36 __strcasecmp_l F +GLIBC_2.36 __strcasestr F +GLIBC_2.36 __strcat_chk F +GLIBC_2.36 __strcoll_l F +GLIBC_2.36 __strcpy_chk F +GLIBC_2.36 __strdup F +GLIBC_2.36 __strerror_r F +GLIBC_2.36 __strfmon_l F +GLIBC_2.36 __strftime_l F +GLIBC_2.36 __strncasecmp_l F +GLIBC_2.36 __strncat_chk F +GLIBC_2.36 __strncpy_chk F +GLIBC_2.36 __strndup F +GLIBC_2.36 __strsep_g F +GLIBC_2.36 __strtod_internal F +GLIBC_2.36 __strtod_l F +GLIBC_2.36 __strtof_internal F +GLIBC_2.36 __strtof_l F +GLIBC_2.36 __strtok_r F +GLIBC_2.36 __strtol_internal F +GLIBC_2.36 __strtol_l F +GLIBC_2.36 __strtold_internal F +GLIBC_2.36 __strtold_l F +GLIBC_2.36 __strtoll_internal F +GLIBC_2.36 __strtoll_l F +GLIBC_2.36 __strtoul_internal F +GLIBC_2.36 __strtoul_l F +GLIBC_2.36 __strtoull_internal F +GLIBC_2.36 __strtoull_l F +GLIBC_2.36 __strverscmp F +GLIBC_2.36 __strxfrm_l F +GLIBC_2.36 __swprintf_chk F +GLIBC_2.36 __sysconf F +GLIBC_2.36 __syslog_chk F +GLIBC_2.36 __sysv_signal F +GLIBC_2.36 __timezone D 0x8 +GLIBC_2.36 __toascii_l F +GLIBC_2.36 __tolower_l F +GLIBC_2.36 __toupper_l F +GLIBC_2.36 __towctrans F +GLIBC_2.36 __towctrans_l F +GLIBC_2.36 __towlower_l F +GLIBC_2.36 __towupper_l F +GLIBC_2.36 __ttyname_r_chk F +GLIBC_2.36 __tzname D 0x10 +GLIBC_2.36 __uflow F +GLIBC_2.36 __underflow F +GLIBC_2.36 __uselocale F +GLIBC_2.36 __vasprintf_chk F +GLIBC_2.36 __vdprintf_chk F +GLIBC_2.36 __vfork F +GLIBC_2.36 __vfprintf_chk F +GLIBC_2.36 __vfscanf F +GLIBC_2.36 __vfwprintf_chk F +GLIBC_2.36 __vprintf_chk F +GLIBC_2.36 __vsnprintf F +GLIBC_2.36 __vsnprintf_chk F +GLIBC_2.36 __vsprintf_chk F +GLIBC_2.36 __vsscanf F +GLIBC_2.36 __vswprintf_chk F +GLIBC_2.36 __vsyslog_chk F +GLIBC_2.36 __vwprintf_chk F +GLIBC_2.36 __wait F +GLIBC_2.36 __waitpid F +GLIBC_2.36 __wcpcpy_chk F +GLIBC_2.36 __wcpncpy_chk F +GLIBC_2.36 __wcrtomb_chk F +GLIBC_2.36 __wcscasecmp_l F +GLIBC_2.36 __wcscat_chk F +GLIBC_2.36 __wcscoll_l F +GLIBC_2.36 __wcscpy_chk F +GLIBC_2.36 __wcsftime_l F +GLIBC_2.36 __wcsncasecmp_l F +GLIBC_2.36 __wcsncat_chk F +GLIBC_2.36 __wcsncpy_chk F +GLIBC_2.36 __wcsnrtombs_chk F +GLIBC_2.36 __wcsrtombs_chk F +GLIBC_2.36 __wcstod_internal F +GLIBC_2.36 __wcstod_l F +GLIBC_2.36 __wcstof_internal F +GLIBC_2.36 __wcstof_l F +GLIBC_2.36 __wcstol_internal F +GLIBC_2.36 __wcstol_l F +GLIBC_2.36 __wcstold_internal F +GLIBC_2.36 __wcstold_l F +GLIBC_2.36 __wcstoll_internal F +GLIBC_2.36 __wcstoll_l F +GLIBC_2.36 __wcstombs_chk F +GLIBC_2.36 __wcstoul_internal F +GLIBC_2.36 __wcstoul_l F +GLIBC_2.36 __wcstoull_internal F +GLIBC_2.36 __wcstoull_l F +GLIBC_2.36 __wcsxfrm_l F +GLIBC_2.36 __wctomb_chk F +GLIBC_2.36 __wctrans_l F +GLIBC_2.36 __wctype_l F +GLIBC_2.36 __wmemcpy_chk F +GLIBC_2.36 __wmemmove_chk F +GLIBC_2.36 __wmempcpy_chk F +GLIBC_2.36 __wmemset_chk F +GLIBC_2.36 __woverflow F +GLIBC_2.36 __wprintf_chk F +GLIBC_2.36 __write F +GLIBC_2.36 __wuflow F +GLIBC_2.36 __wunderflow F +GLIBC_2.36 __xpg_basename F +GLIBC_2.36 __xpg_sigpause F +GLIBC_2.36 __xpg_strerror_r F +GLIBC_2.36 _dl_find_object F +GLIBC_2.36 _dl_mcount_wrapper F +GLIBC_2.36 _dl_mcount_wrapper_check F +GLIBC_2.36 _environ D 0x8 +GLIBC_2.36 _exit F +GLIBC_2.36 _flushlbf F +GLIBC_2.36 _libc_intl_domainname D 0x5 +GLIBC_2.36 _longjmp F +GLIBC_2.36 _mcleanup F +GLIBC_2.36 _mcount F +GLIBC_2.36 _nl_default_dirname D 0x12 +GLIBC_2.36 _nl_domain_bindings D 0x8 +GLIBC_2.36 _nl_msg_cat_cntr D 0x4 +GLIBC_2.36 _obstack_allocated_p F +GLIBC_2.36 _obstack_begin F +GLIBC_2.36 _obstack_begin_1 F +GLIBC_2.36 _obstack_free F +GLIBC_2.36 _obstack_memory_used F +GLIBC_2.36 _obstack_newchunk F +GLIBC_2.36 _pthread_cleanup_pop F +GLIBC_2.36 _pthread_cleanup_push F +GLIBC_2.36 _res D 0x238 +GLIBC_2.36 _res_hconf D 0x48 +GLIBC_2.36 _setjmp F +GLIBC_2.36 _tolower F +GLIBC_2.36 _toupper F +GLIBC_2.36 a64l F +GLIBC_2.36 abort F +GLIBC_2.36 abs F +GLIBC_2.36 accept F +GLIBC_2.36 accept4 F +GLIBC_2.36 access F +GLIBC_2.36 acct F +GLIBC_2.36 addmntent F +GLIBC_2.36 addseverity F +GLIBC_2.36 adjtime F +GLIBC_2.36 adjtimex F +GLIBC_2.36 aio_cancel F +GLIBC_2.36 aio_cancel64 F +GLIBC_2.36 aio_error F +GLIBC_2.36 aio_error64 F +GLIBC_2.36 aio_fsync F +GLIBC_2.36 aio_fsync64 F +GLIBC_2.36 aio_init F +GLIBC_2.36 aio_read F +GLIBC_2.36 aio_read64 F +GLIBC_2.36 aio_return F +GLIBC_2.36 aio_return64 F +GLIBC_2.36 aio_suspend F +GLIBC_2.36 aio_suspend64 F +GLIBC_2.36 aio_write F +GLIBC_2.36 aio_write64 F +GLIBC_2.36 alarm F +GLIBC_2.36 aligned_alloc F +GLIBC_2.36 alphasort F +GLIBC_2.36 alphasort64 F +GLIBC_2.36 arc4random F +GLIBC_2.36 arc4random_buf F +GLIBC_2.36 arc4random_uniform F +GLIBC_2.36 argp_err_exit_status D 0x4 +GLIBC_2.36 argp_error F +GLIBC_2.36 argp_failure F +GLIBC_2.36 argp_help F +GLIBC_2.36 argp_parse F +GLIBC_2.36 argp_program_bug_address D 0x8 +GLIBC_2.36 argp_program_version D 0x8 +GLIBC_2.36 argp_program_version_hook D 0x8 +GLIBC_2.36 argp_state_help F +GLIBC_2.36 argp_usage F +GLIBC_2.36 argz_add F +GLIBC_2.36 argz_add_sep F +GLIBC_2.36 argz_append F +GLIBC_2.36 argz_count F +GLIBC_2.36 argz_create F +GLIBC_2.36 argz_create_sep F +GLIBC_2.36 argz_delete F +GLIBC_2.36 argz_extract F +GLIBC_2.36 argz_insert F +GLIBC_2.36 argz_next F +GLIBC_2.36 argz_replace F +GLIBC_2.36 argz_stringify F +GLIBC_2.36 asctime F +GLIBC_2.36 asctime_r F +GLIBC_2.36 asprintf F +GLIBC_2.36 atof F +GLIBC_2.36 atoi F +GLIBC_2.36 atol F +GLIBC_2.36 atoll F +GLIBC_2.36 backtrace F +GLIBC_2.36 backtrace_symbols F +GLIBC_2.36 backtrace_symbols_fd F +GLIBC_2.36 basename F +GLIBC_2.36 bcmp F +GLIBC_2.36 bcopy F +GLIBC_2.36 bind F +GLIBC_2.36 bind_textdomain_codeset F +GLIBC_2.36 bindresvport F +GLIBC_2.36 bindtextdomain F +GLIBC_2.36 brk F +GLIBC_2.36 bsd_signal F +GLIBC_2.36 bsearch F +GLIBC_2.36 btowc F +GLIBC_2.36 bzero F +GLIBC_2.36 c16rtomb F +GLIBC_2.36 c32rtomb F +GLIBC_2.36 c8rtomb F +GLIBC_2.36 call_once F +GLIBC_2.36 calloc F +GLIBC_2.36 canonicalize_file_name F +GLIBC_2.36 capget F +GLIBC_2.36 capset F +GLIBC_2.36 catclose F +GLIBC_2.36 catgets F +GLIBC_2.36 catopen F +GLIBC_2.36 cfgetispeed F +GLIBC_2.36 cfgetospeed F +GLIBC_2.36 cfmakeraw F +GLIBC_2.36 cfsetispeed F +GLIBC_2.36 cfsetospeed F +GLIBC_2.36 cfsetspeed F +GLIBC_2.36 chdir F +GLIBC_2.36 chflags F +GLIBC_2.36 chmod F +GLIBC_2.36 chown F +GLIBC_2.36 chroot F +GLIBC_2.36 clearenv F +GLIBC_2.36 clearerr F +GLIBC_2.36 clearerr_unlocked F +GLIBC_2.36 clock F +GLIBC_2.36 clock_adjtime F +GLIBC_2.36 clock_getcpuclockid F +GLIBC_2.36 clock_getres F +GLIBC_2.36 clock_gettime F +GLIBC_2.36 clock_nanosleep F +GLIBC_2.36 clock_settime F +GLIBC_2.36 clone F +GLIBC_2.36 close F +GLIBC_2.36 close_range F +GLIBC_2.36 closedir F +GLIBC_2.36 closefrom F +GLIBC_2.36 closelog F +GLIBC_2.36 cnd_broadcast F +GLIBC_2.36 cnd_destroy F +GLIBC_2.36 cnd_init F +GLIBC_2.36 cnd_signal F +GLIBC_2.36 cnd_timedwait F +GLIBC_2.36 cnd_wait F +GLIBC_2.36 confstr F +GLIBC_2.36 connect F +GLIBC_2.36 copy_file_range F +GLIBC_2.36 copysign F +GLIBC_2.36 copysignf F +GLIBC_2.36 copysignl F +GLIBC_2.36 creat F +GLIBC_2.36 creat64 F +GLIBC_2.36 ctermid F +GLIBC_2.36 ctime F +GLIBC_2.36 ctime_r F +GLIBC_2.36 cuserid F +GLIBC_2.36 daemon F +GLIBC_2.36 daylight D 0x4 +GLIBC_2.36 dcgettext F +GLIBC_2.36 dcngettext F +GLIBC_2.36 delete_module F +GLIBC_2.36 dgettext F +GLIBC_2.36 difftime F +GLIBC_2.36 dirfd F +GLIBC_2.36 dirname F +GLIBC_2.36 div F +GLIBC_2.36 dl_iterate_phdr F +GLIBC_2.36 dladdr F +GLIBC_2.36 dladdr1 F +GLIBC_2.36 dlclose F +GLIBC_2.36 dlerror F +GLIBC_2.36 dlinfo F +GLIBC_2.36 dlmopen F +GLIBC_2.36 dlopen F +GLIBC_2.36 dlsym F +GLIBC_2.36 dlvsym F +GLIBC_2.36 dn_comp F +GLIBC_2.36 dn_expand F +GLIBC_2.36 dn_skipname F +GLIBC_2.36 dngettext F +GLIBC_2.36 dprintf F +GLIBC_2.36 drand48 F +GLIBC_2.36 drand48_r F +GLIBC_2.36 dup F +GLIBC_2.36 dup2 F +GLIBC_2.36 dup3 F +GLIBC_2.36 duplocale F +GLIBC_2.36 dysize F +GLIBC_2.36 eaccess F +GLIBC_2.36 ecvt F +GLIBC_2.36 ecvt_r F +GLIBC_2.36 endaliasent F +GLIBC_2.36 endfsent F +GLIBC_2.36 endgrent F +GLIBC_2.36 endhostent F +GLIBC_2.36 endmntent F +GLIBC_2.36 endnetent F +GLIBC_2.36 endnetgrent F +GLIBC_2.36 endprotoent F +GLIBC_2.36 endpwent F +GLIBC_2.36 endrpcent F +GLIBC_2.36 endservent F +GLIBC_2.36 endsgent F +GLIBC_2.36 endspent F +GLIBC_2.36 endttyent F +GLIBC_2.36 endusershell F +GLIBC_2.36 endutent F +GLIBC_2.36 endutxent F +GLIBC_2.36 environ D 0x8 +GLIBC_2.36 envz_add F +GLIBC_2.36 envz_entry F +GLIBC_2.36 envz_get F +GLIBC_2.36 envz_merge F +GLIBC_2.36 envz_remove F +GLIBC_2.36 envz_strip F +GLIBC_2.36 epoll_create F +GLIBC_2.36 epoll_create1 F +GLIBC_2.36 epoll_ctl F +GLIBC_2.36 epoll_pwait F +GLIBC_2.36 epoll_pwait2 F +GLIBC_2.36 epoll_wait F +GLIBC_2.36 erand48 F +GLIBC_2.36 erand48_r F +GLIBC_2.36 err F +GLIBC_2.36 error F +GLIBC_2.36 error_at_line F +GLIBC_2.36 error_message_count D 0x4 +GLIBC_2.36 error_one_per_line D 0x4 +GLIBC_2.36 error_print_progname D 0x8 +GLIBC_2.36 errx F +GLIBC_2.36 ether_aton F +GLIBC_2.36 ether_aton_r F +GLIBC_2.36 ether_hostton F +GLIBC_2.36 ether_line F +GLIBC_2.36 ether_ntoa F +GLIBC_2.36 ether_ntoa_r F +GLIBC_2.36 ether_ntohost F +GLIBC_2.36 euidaccess F +GLIBC_2.36 eventfd F +GLIBC_2.36 eventfd_read F +GLIBC_2.36 eventfd_write F +GLIBC_2.36 execl F +GLIBC_2.36 execle F +GLIBC_2.36 execlp F +GLIBC_2.36 execv F +GLIBC_2.36 execve F +GLIBC_2.36 execveat F +GLIBC_2.36 execvp F +GLIBC_2.36 execvpe F +GLIBC_2.36 exit F +GLIBC_2.36 explicit_bzero F +GLIBC_2.36 faccessat F +GLIBC_2.36 fallocate F +GLIBC_2.36 fallocate64 F +GLIBC_2.36 fanotify_init F +GLIBC_2.36 fanotify_mark F +GLIBC_2.36 fchdir F +GLIBC_2.36 fchflags F +GLIBC_2.36 fchmod F +GLIBC_2.36 fchmodat F +GLIBC_2.36 fchown F +GLIBC_2.36 fchownat F +GLIBC_2.36 fclose F +GLIBC_2.36 fcloseall F +GLIBC_2.36 fcntl F +GLIBC_2.36 fcntl64 F +GLIBC_2.36 fcvt F +GLIBC_2.36 fcvt_r F +GLIBC_2.36 fdatasync F +GLIBC_2.36 fdopen F +GLIBC_2.36 fdopendir F +GLIBC_2.36 feof F +GLIBC_2.36 feof_unlocked F +GLIBC_2.36 ferror F +GLIBC_2.36 ferror_unlocked F +GLIBC_2.36 fexecve F +GLIBC_2.36 fflush F +GLIBC_2.36 fflush_unlocked F +GLIBC_2.36 ffs F +GLIBC_2.36 ffsl F +GLIBC_2.36 ffsll F +GLIBC_2.36 fgetc F +GLIBC_2.36 fgetc_unlocked F +GLIBC_2.36 fgetgrent F +GLIBC_2.36 fgetgrent_r F +GLIBC_2.36 fgetpos F +GLIBC_2.36 fgetpos64 F +GLIBC_2.36 fgetpwent F +GLIBC_2.36 fgetpwent_r F +GLIBC_2.36 fgets F +GLIBC_2.36 fgets_unlocked F +GLIBC_2.36 fgetsgent F +GLIBC_2.36 fgetsgent_r F +GLIBC_2.36 fgetspent F +GLIBC_2.36 fgetspent_r F +GLIBC_2.36 fgetwc F +GLIBC_2.36 fgetwc_unlocked F +GLIBC_2.36 fgetws F +GLIBC_2.36 fgetws_unlocked F +GLIBC_2.36 fgetxattr F +GLIBC_2.36 fileno F +GLIBC_2.36 fileno_unlocked F +GLIBC_2.36 finite F +GLIBC_2.36 finitef F +GLIBC_2.36 finitel F +GLIBC_2.36 flistxattr F +GLIBC_2.36 flock F +GLIBC_2.36 flockfile F +GLIBC_2.36 fmemopen F +GLIBC_2.36 fmtmsg F +GLIBC_2.36 fnmatch F +GLIBC_2.36 fopen F +GLIBC_2.36 fopen64 F +GLIBC_2.36 fopencookie F +GLIBC_2.36 fork F +GLIBC_2.36 forkpty F +GLIBC_2.36 fpathconf F +GLIBC_2.36 fprintf F +GLIBC_2.36 fputc F +GLIBC_2.36 fputc_unlocked F +GLIBC_2.36 fputs F +GLIBC_2.36 fputs_unlocked F +GLIBC_2.36 fputwc F +GLIBC_2.36 fputwc_unlocked F +GLIBC_2.36 fputws F +GLIBC_2.36 fputws_unlocked F +GLIBC_2.36 fread F +GLIBC_2.36 fread_unlocked F +GLIBC_2.36 free F +GLIBC_2.36 freeaddrinfo F +GLIBC_2.36 freeifaddrs F +GLIBC_2.36 freelocale F +GLIBC_2.36 fremovexattr F +GLIBC_2.36 freopen F +GLIBC_2.36 freopen64 F +GLIBC_2.36 frexp F +GLIBC_2.36 frexpf F +GLIBC_2.36 frexpl F +GLIBC_2.36 fscanf F +GLIBC_2.36 fsconfig F +GLIBC_2.36 fseek F +GLIBC_2.36 fseeko F +GLIBC_2.36 fseeko64 F +GLIBC_2.36 fsetpos F +GLIBC_2.36 fsetpos64 F +GLIBC_2.36 fsetxattr F +GLIBC_2.36 fsmount F +GLIBC_2.36 fsopen F +GLIBC_2.36 fspick F +GLIBC_2.36 fstat F +GLIBC_2.36 fstat64 F +GLIBC_2.36 fstatat F +GLIBC_2.36 fstatat64 F +GLIBC_2.36 fstatfs F +GLIBC_2.36 fstatfs64 F +GLIBC_2.36 fstatvfs F +GLIBC_2.36 fstatvfs64 F +GLIBC_2.36 fsync F +GLIBC_2.36 ftell F +GLIBC_2.36 ftello F +GLIBC_2.36 ftello64 F +GLIBC_2.36 ftime F +GLIBC_2.36 ftok F +GLIBC_2.36 ftruncate F +GLIBC_2.36 ftruncate64 F +GLIBC_2.36 ftrylockfile F +GLIBC_2.36 fts64_children F +GLIBC_2.36 fts64_close F +GLIBC_2.36 fts64_open F +GLIBC_2.36 fts64_read F +GLIBC_2.36 fts64_set F +GLIBC_2.36 fts_children F +GLIBC_2.36 fts_close F +GLIBC_2.36 fts_open F +GLIBC_2.36 fts_read F +GLIBC_2.36 fts_set F +GLIBC_2.36 ftw F +GLIBC_2.36 ftw64 F +GLIBC_2.36 funlockfile F +GLIBC_2.36 futimens F +GLIBC_2.36 futimes F +GLIBC_2.36 futimesat F +GLIBC_2.36 fwide F +GLIBC_2.36 fwprintf F +GLIBC_2.36 fwrite F +GLIBC_2.36 fwrite_unlocked F +GLIBC_2.36 fwscanf F +GLIBC_2.36 gai_cancel F +GLIBC_2.36 gai_error F +GLIBC_2.36 gai_strerror F +GLIBC_2.36 gai_suspend F +GLIBC_2.36 gcvt F +GLIBC_2.36 get_avphys_pages F +GLIBC_2.36 get_current_dir_name F +GLIBC_2.36 get_nprocs F +GLIBC_2.36 get_nprocs_conf F +GLIBC_2.36 get_phys_pages F +GLIBC_2.36 getaddrinfo F +GLIBC_2.36 getaddrinfo_a F +GLIBC_2.36 getaliasbyname F +GLIBC_2.36 getaliasbyname_r F +GLIBC_2.36 getaliasent F +GLIBC_2.36 getaliasent_r F +GLIBC_2.36 getauxval F +GLIBC_2.36 getc F +GLIBC_2.36 getc_unlocked F +GLIBC_2.36 getchar F +GLIBC_2.36 getchar_unlocked F +GLIBC_2.36 getcontext F +GLIBC_2.36 getcpu F +GLIBC_2.36 getcwd F +GLIBC_2.36 getdate F +GLIBC_2.36 getdate_err D 0x4 +GLIBC_2.36 getdate_r F +GLIBC_2.36 getdelim F +GLIBC_2.36 getdents64 F +GLIBC_2.36 getdirentries F +GLIBC_2.36 getdirentries64 F +GLIBC_2.36 getdomainname F +GLIBC_2.36 getdtablesize F +GLIBC_2.36 getegid F +GLIBC_2.36 getentropy F +GLIBC_2.36 getenv F +GLIBC_2.36 geteuid F +GLIBC_2.36 getfsent F +GLIBC_2.36 getfsfile F +GLIBC_2.36 getfsspec F +GLIBC_2.36 getgid F +GLIBC_2.36 getgrent F +GLIBC_2.36 getgrent_r F +GLIBC_2.36 getgrgid F +GLIBC_2.36 getgrgid_r F +GLIBC_2.36 getgrnam F +GLIBC_2.36 getgrnam_r F +GLIBC_2.36 getgrouplist F +GLIBC_2.36 getgroups F +GLIBC_2.36 gethostbyaddr F +GLIBC_2.36 gethostbyaddr_r F +GLIBC_2.36 gethostbyname F +GLIBC_2.36 gethostbyname2 F +GLIBC_2.36 gethostbyname2_r F +GLIBC_2.36 gethostbyname_r F +GLIBC_2.36 gethostent F +GLIBC_2.36 gethostent_r F +GLIBC_2.36 gethostid F +GLIBC_2.36 gethostname F +GLIBC_2.36 getifaddrs F +GLIBC_2.36 getipv4sourcefilter F +GLIBC_2.36 getitimer F +GLIBC_2.36 getline F +GLIBC_2.36 getloadavg F +GLIBC_2.36 getlogin F +GLIBC_2.36 getlogin_r F +GLIBC_2.36 getmntent F +GLIBC_2.36 getmntent_r F +GLIBC_2.36 getnameinfo F +GLIBC_2.36 getnetbyaddr F +GLIBC_2.36 getnetbyaddr_r F +GLIBC_2.36 getnetbyname F +GLIBC_2.36 getnetbyname_r F +GLIBC_2.36 getnetent F +GLIBC_2.36 getnetent_r F +GLIBC_2.36 getnetgrent F +GLIBC_2.36 getnetgrent_r F +GLIBC_2.36 getopt F +GLIBC_2.36 getopt_long F +GLIBC_2.36 getopt_long_only F +GLIBC_2.36 getpagesize F +GLIBC_2.36 getpass F +GLIBC_2.36 getpeername F +GLIBC_2.36 getpgid F +GLIBC_2.36 getpgrp F +GLIBC_2.36 getpid F +GLIBC_2.36 getppid F +GLIBC_2.36 getpriority F +GLIBC_2.36 getprotobyname F +GLIBC_2.36 getprotobyname_r F +GLIBC_2.36 getprotobynumber F +GLIBC_2.36 getprotobynumber_r F +GLIBC_2.36 getprotoent F +GLIBC_2.36 getprotoent_r F +GLIBC_2.36 getpt F +GLIBC_2.36 getpw F +GLIBC_2.36 getpwent F +GLIBC_2.36 getpwent_r F +GLIBC_2.36 getpwnam F +GLIBC_2.36 getpwnam_r F +GLIBC_2.36 getpwuid F +GLIBC_2.36 getpwuid_r F +GLIBC_2.36 getrandom F +GLIBC_2.36 getresgid F +GLIBC_2.36 getresuid F +GLIBC_2.36 getrlimit F +GLIBC_2.36 getrlimit64 F +GLIBC_2.36 getrpcbyname F +GLIBC_2.36 getrpcbyname_r F +GLIBC_2.36 getrpcbynumber F +GLIBC_2.36 getrpcbynumber_r F +GLIBC_2.36 getrpcent F +GLIBC_2.36 getrpcent_r F +GLIBC_2.36 getrusage F +GLIBC_2.36 gets F +GLIBC_2.36 getservbyname F +GLIBC_2.36 getservbyname_r F +GLIBC_2.36 getservbyport F +GLIBC_2.36 getservbyport_r F +GLIBC_2.36 getservent F +GLIBC_2.36 getservent_r F +GLIBC_2.36 getsgent F +GLIBC_2.36 getsgent_r F +GLIBC_2.36 getsgnam F +GLIBC_2.36 getsgnam_r F +GLIBC_2.36 getsid F +GLIBC_2.36 getsockname F +GLIBC_2.36 getsockopt F +GLIBC_2.36 getsourcefilter F +GLIBC_2.36 getspent F +GLIBC_2.36 getspent_r F +GLIBC_2.36 getspnam F +GLIBC_2.36 getspnam_r F +GLIBC_2.36 getsubopt F +GLIBC_2.36 gettext F +GLIBC_2.36 gettid F +GLIBC_2.36 gettimeofday F +GLIBC_2.36 getttyent F +GLIBC_2.36 getttynam F +GLIBC_2.36 getuid F +GLIBC_2.36 getusershell F +GLIBC_2.36 getutent F +GLIBC_2.36 getutent_r F +GLIBC_2.36 getutid F +GLIBC_2.36 getutid_r F +GLIBC_2.36 getutline F +GLIBC_2.36 getutline_r F +GLIBC_2.36 getutmp F +GLIBC_2.36 getutmpx F +GLIBC_2.36 getutxent F +GLIBC_2.36 getutxid F +GLIBC_2.36 getutxline F +GLIBC_2.36 getw F +GLIBC_2.36 getwc F +GLIBC_2.36 getwc_unlocked F +GLIBC_2.36 getwchar F +GLIBC_2.36 getwchar_unlocked F +GLIBC_2.36 getwd F +GLIBC_2.36 getxattr F +GLIBC_2.36 glob F +GLIBC_2.36 glob64 F +GLIBC_2.36 glob_pattern_p F +GLIBC_2.36 globfree F +GLIBC_2.36 globfree64 F +GLIBC_2.36 gmtime F +GLIBC_2.36 gmtime_r F +GLIBC_2.36 gnu_dev_major F +GLIBC_2.36 gnu_dev_makedev F +GLIBC_2.36 gnu_dev_minor F +GLIBC_2.36 gnu_get_libc_release F +GLIBC_2.36 gnu_get_libc_version F +GLIBC_2.36 grantpt F +GLIBC_2.36 group_member F +GLIBC_2.36 gsignal F +GLIBC_2.36 gtty F +GLIBC_2.36 h_errlist D 0x28 +GLIBC_2.36 h_nerr D 0x4 +GLIBC_2.36 hasmntopt F +GLIBC_2.36 hcreate F +GLIBC_2.36 hcreate_r F +GLIBC_2.36 hdestroy F +GLIBC_2.36 hdestroy_r F +GLIBC_2.36 herror F +GLIBC_2.36 hsearch F +GLIBC_2.36 hsearch_r F +GLIBC_2.36 hstrerror F +GLIBC_2.36 htonl F +GLIBC_2.36 htons F +GLIBC_2.36 iconv F +GLIBC_2.36 iconv_close F +GLIBC_2.36 iconv_open F +GLIBC_2.36 if_freenameindex F +GLIBC_2.36 if_indextoname F +GLIBC_2.36 if_nameindex F +GLIBC_2.36 if_nametoindex F +GLIBC_2.36 imaxabs F +GLIBC_2.36 imaxdiv F +GLIBC_2.36 in6addr_any D 0x10 +GLIBC_2.36 in6addr_loopback D 0x10 +GLIBC_2.36 index F +GLIBC_2.36 inet6_opt_append F +GLIBC_2.36 inet6_opt_find F +GLIBC_2.36 inet6_opt_finish F +GLIBC_2.36 inet6_opt_get_val F +GLIBC_2.36 inet6_opt_init F +GLIBC_2.36 inet6_opt_next F +GLIBC_2.36 inet6_opt_set_val F +GLIBC_2.36 inet6_option_alloc F +GLIBC_2.36 inet6_option_append F +GLIBC_2.36 inet6_option_find F +GLIBC_2.36 inet6_option_init F +GLIBC_2.36 inet6_option_next F +GLIBC_2.36 inet6_option_space F +GLIBC_2.36 inet6_rth_add F +GLIBC_2.36 inet6_rth_getaddr F +GLIBC_2.36 inet6_rth_init F +GLIBC_2.36 inet6_rth_reverse F +GLIBC_2.36 inet6_rth_segments F +GLIBC_2.36 inet6_rth_space F +GLIBC_2.36 inet_addr F +GLIBC_2.36 inet_aton F +GLIBC_2.36 inet_lnaof F +GLIBC_2.36 inet_makeaddr F +GLIBC_2.36 inet_netof F +GLIBC_2.36 inet_network F +GLIBC_2.36 inet_nsap_addr F +GLIBC_2.36 inet_nsap_ntoa F +GLIBC_2.36 inet_ntoa F +GLIBC_2.36 inet_ntop F +GLIBC_2.36 inet_pton F +GLIBC_2.36 init_module F +GLIBC_2.36 initgroups F +GLIBC_2.36 initstate F +GLIBC_2.36 initstate_r F +GLIBC_2.36 innetgr F +GLIBC_2.36 inotify_add_watch F +GLIBC_2.36 inotify_init F +GLIBC_2.36 inotify_init1 F +GLIBC_2.36 inotify_rm_watch F +GLIBC_2.36 insque F +GLIBC_2.36 ioctl F +GLIBC_2.36 iruserok F +GLIBC_2.36 iruserok_af F +GLIBC_2.36 isalnum F +GLIBC_2.36 isalnum_l F +GLIBC_2.36 isalpha F +GLIBC_2.36 isalpha_l F +GLIBC_2.36 isascii F +GLIBC_2.36 isatty F +GLIBC_2.36 isblank F +GLIBC_2.36 isblank_l F +GLIBC_2.36 iscntrl F +GLIBC_2.36 iscntrl_l F +GLIBC_2.36 isctype F +GLIBC_2.36 isdigit F +GLIBC_2.36 isdigit_l F +GLIBC_2.36 isfdtype F +GLIBC_2.36 isgraph F +GLIBC_2.36 isgraph_l F +GLIBC_2.36 isinf F +GLIBC_2.36 isinff F +GLIBC_2.36 isinfl F +GLIBC_2.36 islower F +GLIBC_2.36 islower_l F +GLIBC_2.36 isnan F +GLIBC_2.36 isnanf F +GLIBC_2.36 isnanl F +GLIBC_2.36 isprint F +GLIBC_2.36 isprint_l F +GLIBC_2.36 ispunct F +GLIBC_2.36 ispunct_l F +GLIBC_2.36 isspace F +GLIBC_2.36 isspace_l F +GLIBC_2.36 isupper F +GLIBC_2.36 isupper_l F +GLIBC_2.36 iswalnum F +GLIBC_2.36 iswalnum_l F +GLIBC_2.36 iswalpha F +GLIBC_2.36 iswalpha_l F +GLIBC_2.36 iswblank F +GLIBC_2.36 iswblank_l F +GLIBC_2.36 iswcntrl F +GLIBC_2.36 iswcntrl_l F +GLIBC_2.36 iswctype F +GLIBC_2.36 iswctype_l F +GLIBC_2.36 iswdigit F +GLIBC_2.36 iswdigit_l F +GLIBC_2.36 iswgraph F +GLIBC_2.36 iswgraph_l F +GLIBC_2.36 iswlower F +GLIBC_2.36 iswlower_l F +GLIBC_2.36 iswprint F +GLIBC_2.36 iswprint_l F +GLIBC_2.36 iswpunct F +GLIBC_2.36 iswpunct_l F +GLIBC_2.36 iswspace F +GLIBC_2.36 iswspace_l F +GLIBC_2.36 iswupper F +GLIBC_2.36 iswupper_l F +GLIBC_2.36 iswxdigit F +GLIBC_2.36 iswxdigit_l F +GLIBC_2.36 isxdigit F +GLIBC_2.36 isxdigit_l F +GLIBC_2.36 jrand48 F +GLIBC_2.36 jrand48_r F +GLIBC_2.36 kill F +GLIBC_2.36 killpg F +GLIBC_2.36 klogctl F +GLIBC_2.36 l64a F +GLIBC_2.36 labs F +GLIBC_2.36 lchmod F +GLIBC_2.36 lchown F +GLIBC_2.36 lckpwdf F +GLIBC_2.36 lcong48 F +GLIBC_2.36 lcong48_r F +GLIBC_2.36 ldexp F +GLIBC_2.36 ldexpf F +GLIBC_2.36 ldexpl F +GLIBC_2.36 ldiv F +GLIBC_2.36 lfind F +GLIBC_2.36 lgetxattr F +GLIBC_2.36 link F +GLIBC_2.36 linkat F +GLIBC_2.36 lio_listio F +GLIBC_2.36 lio_listio64 F +GLIBC_2.36 listen F +GLIBC_2.36 listxattr F +GLIBC_2.36 llabs F +GLIBC_2.36 lldiv F +GLIBC_2.36 llistxattr F +GLIBC_2.36 localeconv F +GLIBC_2.36 localtime F +GLIBC_2.36 localtime_r F +GLIBC_2.36 lockf F +GLIBC_2.36 lockf64 F +GLIBC_2.36 login F +GLIBC_2.36 login_tty F +GLIBC_2.36 logout F +GLIBC_2.36 logwtmp F +GLIBC_2.36 longjmp F +GLIBC_2.36 lrand48 F +GLIBC_2.36 lrand48_r F +GLIBC_2.36 lremovexattr F +GLIBC_2.36 lsearch F +GLIBC_2.36 lseek F +GLIBC_2.36 lseek64 F +GLIBC_2.36 lsetxattr F +GLIBC_2.36 lstat F +GLIBC_2.36 lstat64 F +GLIBC_2.36 lutimes F +GLIBC_2.36 madvise F +GLIBC_2.36 makecontext F +GLIBC_2.36 mallinfo F +GLIBC_2.36 mallinfo2 F +GLIBC_2.36 malloc F +GLIBC_2.36 malloc_info F +GLIBC_2.36 malloc_stats F +GLIBC_2.36 malloc_trim F +GLIBC_2.36 malloc_usable_size F +GLIBC_2.36 mallopt F +GLIBC_2.36 mblen F +GLIBC_2.36 mbrlen F +GLIBC_2.36 mbrtoc16 F +GLIBC_2.36 mbrtoc32 F +GLIBC_2.36 mbrtoc8 F +GLIBC_2.36 mbrtowc F +GLIBC_2.36 mbsinit F +GLIBC_2.36 mbsnrtowcs F +GLIBC_2.36 mbsrtowcs F +GLIBC_2.36 mbstowcs F +GLIBC_2.36 mbtowc F +GLIBC_2.36 mcheck F +GLIBC_2.36 mcheck_check_all F +GLIBC_2.36 mcheck_pedantic F +GLIBC_2.36 memalign F +GLIBC_2.36 memccpy F +GLIBC_2.36 memchr F +GLIBC_2.36 memcmp F +GLIBC_2.36 memcpy F +GLIBC_2.36 memfd_create F +GLIBC_2.36 memfrob F +GLIBC_2.36 memmem F +GLIBC_2.36 memmove F +GLIBC_2.36 mempcpy F +GLIBC_2.36 memrchr F +GLIBC_2.36 memset F +GLIBC_2.36 mincore F +GLIBC_2.36 mkdir F +GLIBC_2.36 mkdirat F +GLIBC_2.36 mkdtemp F +GLIBC_2.36 mkfifo F +GLIBC_2.36 mkfifoat F +GLIBC_2.36 mknod F +GLIBC_2.36 mknodat F +GLIBC_2.36 mkostemp F +GLIBC_2.36 mkostemp64 F +GLIBC_2.36 mkostemps F +GLIBC_2.36 mkostemps64 F +GLIBC_2.36 mkstemp F +GLIBC_2.36 mkstemp64 F +GLIBC_2.36 mkstemps F +GLIBC_2.36 mkstemps64 F +GLIBC_2.36 mktemp F +GLIBC_2.36 mktime F +GLIBC_2.36 mlock F +GLIBC_2.36 mlock2 F +GLIBC_2.36 mlockall F +GLIBC_2.36 mmap F +GLIBC_2.36 mmap64 F +GLIBC_2.36 modf F +GLIBC_2.36 modff F +GLIBC_2.36 modfl F +GLIBC_2.36 moncontrol F +GLIBC_2.36 monstartup F +GLIBC_2.36 mount F +GLIBC_2.36 mount_setattr F +GLIBC_2.36 move_mount F +GLIBC_2.36 mprobe F +GLIBC_2.36 mprotect F +GLIBC_2.36 mq_close F +GLIBC_2.36 mq_getattr F +GLIBC_2.36 mq_notify F +GLIBC_2.36 mq_open F +GLIBC_2.36 mq_receive F +GLIBC_2.36 mq_send F +GLIBC_2.36 mq_setattr F +GLIBC_2.36 mq_timedreceive F +GLIBC_2.36 mq_timedsend F +GLIBC_2.36 mq_unlink F +GLIBC_2.36 mrand48 F +GLIBC_2.36 mrand48_r F +GLIBC_2.36 mremap F +GLIBC_2.36 msgctl F +GLIBC_2.36 msgget F +GLIBC_2.36 msgrcv F +GLIBC_2.36 msgsnd F +GLIBC_2.36 msync F +GLIBC_2.36 mtrace F +GLIBC_2.36 mtx_destroy F +GLIBC_2.36 mtx_init F +GLIBC_2.36 mtx_lock F +GLIBC_2.36 mtx_timedlock F +GLIBC_2.36 mtx_trylock F +GLIBC_2.36 mtx_unlock F +GLIBC_2.36 munlock F +GLIBC_2.36 munlockall F +GLIBC_2.36 munmap F +GLIBC_2.36 muntrace F +GLIBC_2.36 name_to_handle_at F +GLIBC_2.36 nanosleep F +GLIBC_2.36 newlocale F +GLIBC_2.36 nftw F +GLIBC_2.36 nftw64 F +GLIBC_2.36 ngettext F +GLIBC_2.36 nice F +GLIBC_2.36 nl_langinfo F +GLIBC_2.36 nl_langinfo_l F +GLIBC_2.36 nrand48 F +GLIBC_2.36 nrand48_r F +GLIBC_2.36 ns_name_compress F +GLIBC_2.36 ns_name_ntop F +GLIBC_2.36 ns_name_pack F +GLIBC_2.36 ns_name_pton F +GLIBC_2.36 ns_name_skip F +GLIBC_2.36 ns_name_uncompress F +GLIBC_2.36 ns_name_unpack F +GLIBC_2.36 ntohl F +GLIBC_2.36 ntohs F +GLIBC_2.36 ntp_adjtime F +GLIBC_2.36 ntp_gettime F +GLIBC_2.36 ntp_gettimex F +GLIBC_2.36 obstack_alloc_failed_handler D 0x8 +GLIBC_2.36 obstack_exit_failure D 0x4 +GLIBC_2.36 obstack_free F +GLIBC_2.36 obstack_printf F +GLIBC_2.36 obstack_vprintf F +GLIBC_2.36 on_exit F +GLIBC_2.36 open F +GLIBC_2.36 open64 F +GLIBC_2.36 open_by_handle_at F +GLIBC_2.36 open_memstream F +GLIBC_2.36 open_tree F +GLIBC_2.36 open_wmemstream F +GLIBC_2.36 openat F +GLIBC_2.36 openat64 F +GLIBC_2.36 opendir F +GLIBC_2.36 openlog F +GLIBC_2.36 openpty F +GLIBC_2.36 optarg D 0x8 +GLIBC_2.36 opterr D 0x4 +GLIBC_2.36 optind D 0x4 +GLIBC_2.36 optopt D 0x4 +GLIBC_2.36 parse_printf_format F +GLIBC_2.36 pathconf F +GLIBC_2.36 pause F +GLIBC_2.36 pclose F +GLIBC_2.36 perror F +GLIBC_2.36 personality F +GLIBC_2.36 pidfd_getfd F +GLIBC_2.36 pidfd_open F +GLIBC_2.36 pidfd_send_signal F +GLIBC_2.36 pipe F +GLIBC_2.36 pipe2 F +GLIBC_2.36 pivot_root F +GLIBC_2.36 pkey_alloc F +GLIBC_2.36 pkey_free F +GLIBC_2.36 pkey_get F +GLIBC_2.36 pkey_mprotect F +GLIBC_2.36 pkey_set F +GLIBC_2.36 poll F +GLIBC_2.36 popen F +GLIBC_2.36 posix_fadvise F +GLIBC_2.36 posix_fadvise64 F +GLIBC_2.36 posix_fallocate F +GLIBC_2.36 posix_fallocate64 F +GLIBC_2.36 posix_madvise F +GLIBC_2.36 posix_memalign F +GLIBC_2.36 posix_openpt F +GLIBC_2.36 posix_spawn F +GLIBC_2.36 posix_spawn_file_actions_addchdir_np F +GLIBC_2.36 posix_spawn_file_actions_addclose F +GLIBC_2.36 posix_spawn_file_actions_addclosefrom_np F +GLIBC_2.36 posix_spawn_file_actions_adddup2 F +GLIBC_2.36 posix_spawn_file_actions_addfchdir_np F +GLIBC_2.36 posix_spawn_file_actions_addopen F +GLIBC_2.36 posix_spawn_file_actions_addtcsetpgrp_np F +GLIBC_2.36 posix_spawn_file_actions_destroy F +GLIBC_2.36 posix_spawn_file_actions_init F +GLIBC_2.36 posix_spawnattr_destroy F +GLIBC_2.36 posix_spawnattr_getflags F +GLIBC_2.36 posix_spawnattr_getpgroup F +GLIBC_2.36 posix_spawnattr_getschedparam F +GLIBC_2.36 posix_spawnattr_getschedpolicy F +GLIBC_2.36 posix_spawnattr_getsigdefault F +GLIBC_2.36 posix_spawnattr_getsigmask F +GLIBC_2.36 posix_spawnattr_init F +GLIBC_2.36 posix_spawnattr_setflags F +GLIBC_2.36 posix_spawnattr_setpgroup F +GLIBC_2.36 posix_spawnattr_setschedparam F +GLIBC_2.36 posix_spawnattr_setschedpolicy F +GLIBC_2.36 posix_spawnattr_setsigdefault F +GLIBC_2.36 posix_spawnattr_setsigmask F +GLIBC_2.36 posix_spawnp F +GLIBC_2.36 ppoll F +GLIBC_2.36 prctl F +GLIBC_2.36 pread F +GLIBC_2.36 pread64 F +GLIBC_2.36 preadv F +GLIBC_2.36 preadv2 F +GLIBC_2.36 preadv64 F +GLIBC_2.36 preadv64v2 F +GLIBC_2.36 printf F +GLIBC_2.36 printf_size F +GLIBC_2.36 printf_size_info F +GLIBC_2.36 prlimit F +GLIBC_2.36 prlimit64 F +GLIBC_2.36 process_madvise F +GLIBC_2.36 process_mrelease F +GLIBC_2.36 process_vm_readv F +GLIBC_2.36 process_vm_writev F +GLIBC_2.36 profil F +GLIBC_2.36 program_invocation_name D 0x8 +GLIBC_2.36 program_invocation_short_name D 0x8 +GLIBC_2.36 pselect F +GLIBC_2.36 psiginfo F +GLIBC_2.36 psignal F +GLIBC_2.36 pthread_attr_destroy F +GLIBC_2.36 pthread_attr_getaffinity_np F +GLIBC_2.36 pthread_attr_getdetachstate F +GLIBC_2.36 pthread_attr_getguardsize F +GLIBC_2.36 pthread_attr_getinheritsched F +GLIBC_2.36 pthread_attr_getschedparam F +GLIBC_2.36 pthread_attr_getschedpolicy F +GLIBC_2.36 pthread_attr_getscope F +GLIBC_2.36 pthread_attr_getsigmask_np F +GLIBC_2.36 pthread_attr_getstack F +GLIBC_2.36 pthread_attr_getstackaddr F +GLIBC_2.36 pthread_attr_getstacksize F +GLIBC_2.36 pthread_attr_init F +GLIBC_2.36 pthread_attr_setaffinity_np F +GLIBC_2.36 pthread_attr_setdetachstate F +GLIBC_2.36 pthread_attr_setguardsize F +GLIBC_2.36 pthread_attr_setinheritsched F +GLIBC_2.36 pthread_attr_setschedparam F +GLIBC_2.36 pthread_attr_setschedpolicy F +GLIBC_2.36 pthread_attr_setscope F +GLIBC_2.36 pthread_attr_setsigmask_np F +GLIBC_2.36 pthread_attr_setstack F +GLIBC_2.36 pthread_attr_setstackaddr F +GLIBC_2.36 pthread_attr_setstacksize F +GLIBC_2.36 pthread_barrier_destroy F +GLIBC_2.36 pthread_barrier_init F +GLIBC_2.36 pthread_barrier_wait F +GLIBC_2.36 pthread_barrierattr_destroy F +GLIBC_2.36 pthread_barrierattr_getpshared F +GLIBC_2.36 pthread_barrierattr_init F +GLIBC_2.36 pthread_barrierattr_setpshared F +GLIBC_2.36 pthread_cancel F +GLIBC_2.36 pthread_clockjoin_np F +GLIBC_2.36 pthread_cond_broadcast F +GLIBC_2.36 pthread_cond_clockwait F +GLIBC_2.36 pthread_cond_destroy F +GLIBC_2.36 pthread_cond_init F +GLIBC_2.36 pthread_cond_signal F +GLIBC_2.36 pthread_cond_timedwait F +GLIBC_2.36 pthread_cond_wait F +GLIBC_2.36 pthread_condattr_destroy F +GLIBC_2.36 pthread_condattr_getclock F +GLIBC_2.36 pthread_condattr_getpshared F +GLIBC_2.36 pthread_condattr_init F +GLIBC_2.36 pthread_condattr_setclock F +GLIBC_2.36 pthread_condattr_setpshared F +GLIBC_2.36 pthread_create F +GLIBC_2.36 pthread_detach F +GLIBC_2.36 pthread_equal F +GLIBC_2.36 pthread_exit F +GLIBC_2.36 pthread_getaffinity_np F +GLIBC_2.36 pthread_getattr_default_np F +GLIBC_2.36 pthread_getattr_np F +GLIBC_2.36 pthread_getconcurrency F +GLIBC_2.36 pthread_getcpuclockid F +GLIBC_2.36 pthread_getname_np F +GLIBC_2.36 pthread_getschedparam F +GLIBC_2.36 pthread_getspecific F +GLIBC_2.36 pthread_join F +GLIBC_2.36 pthread_key_create F +GLIBC_2.36 pthread_key_delete F +GLIBC_2.36 pthread_kill F +GLIBC_2.36 pthread_mutex_clocklock F +GLIBC_2.36 pthread_mutex_consistent F +GLIBC_2.36 pthread_mutex_destroy F +GLIBC_2.36 pthread_mutex_getprioceiling F +GLIBC_2.36 pthread_mutex_init F +GLIBC_2.36 pthread_mutex_lock F +GLIBC_2.36 pthread_mutex_setprioceiling F +GLIBC_2.36 pthread_mutex_timedlock F +GLIBC_2.36 pthread_mutex_trylock F +GLIBC_2.36 pthread_mutex_unlock F +GLIBC_2.36 pthread_mutexattr_destroy F +GLIBC_2.36 pthread_mutexattr_getprioceiling F +GLIBC_2.36 pthread_mutexattr_getprotocol F +GLIBC_2.36 pthread_mutexattr_getpshared F +GLIBC_2.36 pthread_mutexattr_getrobust F +GLIBC_2.36 pthread_mutexattr_gettype F +GLIBC_2.36 pthread_mutexattr_init F +GLIBC_2.36 pthread_mutexattr_setprioceiling F +GLIBC_2.36 pthread_mutexattr_setprotocol F +GLIBC_2.36 pthread_mutexattr_setpshared F +GLIBC_2.36 pthread_mutexattr_setrobust F +GLIBC_2.36 pthread_mutexattr_settype F +GLIBC_2.36 pthread_once F +GLIBC_2.36 pthread_rwlock_clockrdlock F +GLIBC_2.36 pthread_rwlock_clockwrlock F +GLIBC_2.36 pthread_rwlock_destroy F +GLIBC_2.36 pthread_rwlock_init F +GLIBC_2.36 pthread_rwlock_rdlock F +GLIBC_2.36 pthread_rwlock_timedrdlock F +GLIBC_2.36 pthread_rwlock_timedwrlock F +GLIBC_2.36 pthread_rwlock_tryrdlock F +GLIBC_2.36 pthread_rwlock_trywrlock F +GLIBC_2.36 pthread_rwlock_unlock F +GLIBC_2.36 pthread_rwlock_wrlock F +GLIBC_2.36 pthread_rwlockattr_destroy F +GLIBC_2.36 pthread_rwlockattr_getkind_np F +GLIBC_2.36 pthread_rwlockattr_getpshared F +GLIBC_2.36 pthread_rwlockattr_init F +GLIBC_2.36 pthread_rwlockattr_setkind_np F +GLIBC_2.36 pthread_rwlockattr_setpshared F +GLIBC_2.36 pthread_self F +GLIBC_2.36 pthread_setaffinity_np F +GLIBC_2.36 pthread_setattr_default_np F +GLIBC_2.36 pthread_setcancelstate F +GLIBC_2.36 pthread_setcanceltype F +GLIBC_2.36 pthread_setconcurrency F +GLIBC_2.36 pthread_setname_np F +GLIBC_2.36 pthread_setschedparam F +GLIBC_2.36 pthread_setschedprio F +GLIBC_2.36 pthread_setspecific F +GLIBC_2.36 pthread_sigmask F +GLIBC_2.36 pthread_sigqueue F +GLIBC_2.36 pthread_spin_destroy F +GLIBC_2.36 pthread_spin_init F +GLIBC_2.36 pthread_spin_lock F +GLIBC_2.36 pthread_spin_trylock F +GLIBC_2.36 pthread_spin_unlock F +GLIBC_2.36 pthread_testcancel F +GLIBC_2.36 pthread_timedjoin_np F +GLIBC_2.36 pthread_tryjoin_np F +GLIBC_2.36 ptrace F +GLIBC_2.36 ptsname F +GLIBC_2.36 ptsname_r F +GLIBC_2.36 putc F +GLIBC_2.36 putc_unlocked F +GLIBC_2.36 putchar F +GLIBC_2.36 putchar_unlocked F +GLIBC_2.36 putenv F +GLIBC_2.36 putgrent F +GLIBC_2.36 putpwent F +GLIBC_2.36 puts F +GLIBC_2.36 putsgent F +GLIBC_2.36 putspent F +GLIBC_2.36 pututline F +GLIBC_2.36 pututxline F +GLIBC_2.36 putw F +GLIBC_2.36 putwc F +GLIBC_2.36 putwc_unlocked F +GLIBC_2.36 putwchar F +GLIBC_2.36 putwchar_unlocked F +GLIBC_2.36 pvalloc F +GLIBC_2.36 pwrite F +GLIBC_2.36 pwrite64 F +GLIBC_2.36 pwritev F +GLIBC_2.36 pwritev2 F +GLIBC_2.36 pwritev64 F +GLIBC_2.36 pwritev64v2 F +GLIBC_2.36 qecvt F +GLIBC_2.36 qecvt_r F +GLIBC_2.36 qfcvt F +GLIBC_2.36 qfcvt_r F +GLIBC_2.36 qgcvt F +GLIBC_2.36 qsort F +GLIBC_2.36 qsort_r F +GLIBC_2.36 quick_exit F +GLIBC_2.36 quotactl F +GLIBC_2.36 raise F +GLIBC_2.36 rand F +GLIBC_2.36 rand_r F +GLIBC_2.36 random F +GLIBC_2.36 random_r F +GLIBC_2.36 rawmemchr F +GLIBC_2.36 rcmd F +GLIBC_2.36 rcmd_af F +GLIBC_2.36 re_comp F +GLIBC_2.36 re_compile_fastmap F +GLIBC_2.36 re_compile_pattern F +GLIBC_2.36 re_exec F +GLIBC_2.36 re_match F +GLIBC_2.36 re_match_2 F +GLIBC_2.36 re_search F +GLIBC_2.36 re_search_2 F +GLIBC_2.36 re_set_registers F +GLIBC_2.36 re_set_syntax F +GLIBC_2.36 re_syntax_options D 0x8 +GLIBC_2.36 read F +GLIBC_2.36 readahead F +GLIBC_2.36 readdir F +GLIBC_2.36 readdir64 F +GLIBC_2.36 readdir64_r F +GLIBC_2.36 readdir_r F +GLIBC_2.36 readlink F +GLIBC_2.36 readlinkat F +GLIBC_2.36 readv F +GLIBC_2.36 realloc F +GLIBC_2.36 reallocarray F +GLIBC_2.36 realpath F +GLIBC_2.36 reboot F +GLIBC_2.36 recv F +GLIBC_2.36 recvfrom F +GLIBC_2.36 recvmmsg F +GLIBC_2.36 recvmsg F +GLIBC_2.36 regcomp F +GLIBC_2.36 regerror F +GLIBC_2.36 regexec F +GLIBC_2.36 regfree F +GLIBC_2.36 register_printf_function F +GLIBC_2.36 register_printf_modifier F +GLIBC_2.36 register_printf_specifier F +GLIBC_2.36 register_printf_type F +GLIBC_2.36 remap_file_pages F +GLIBC_2.36 remove F +GLIBC_2.36 removexattr F +GLIBC_2.36 remque F +GLIBC_2.36 rename F +GLIBC_2.36 renameat F +GLIBC_2.36 renameat2 F +GLIBC_2.36 res_dnok F +GLIBC_2.36 res_hnok F +GLIBC_2.36 res_mailok F +GLIBC_2.36 res_mkquery F +GLIBC_2.36 res_nmkquery F +GLIBC_2.36 res_nquery F +GLIBC_2.36 res_nquerydomain F +GLIBC_2.36 res_nsearch F +GLIBC_2.36 res_nsend F +GLIBC_2.36 res_ownok F +GLIBC_2.36 res_query F +GLIBC_2.36 res_querydomain F +GLIBC_2.36 res_search F +GLIBC_2.36 res_send F +GLIBC_2.36 revoke F +GLIBC_2.36 rewind F +GLIBC_2.36 rewinddir F +GLIBC_2.36 rexec F +GLIBC_2.36 rexec_af F +GLIBC_2.36 rexecoptions D 0x4 +GLIBC_2.36 rindex F +GLIBC_2.36 rmdir F +GLIBC_2.36 rpmatch F +GLIBC_2.36 rresvport F +GLIBC_2.36 rresvport_af F +GLIBC_2.36 ruserok F +GLIBC_2.36 ruserok_af F +GLIBC_2.36 ruserpass F +GLIBC_2.36 sbrk F +GLIBC_2.36 scalbn F +GLIBC_2.36 scalbnf F +GLIBC_2.36 scalbnl F +GLIBC_2.36 scandir F +GLIBC_2.36 scandir64 F +GLIBC_2.36 scandirat F +GLIBC_2.36 scandirat64 F +GLIBC_2.36 scanf F +GLIBC_2.36 sched_get_priority_max F +GLIBC_2.36 sched_get_priority_min F +GLIBC_2.36 sched_getaffinity F +GLIBC_2.36 sched_getcpu F +GLIBC_2.36 sched_getparam F +GLIBC_2.36 sched_getscheduler F +GLIBC_2.36 sched_rr_get_interval F +GLIBC_2.36 sched_setaffinity F +GLIBC_2.36 sched_setparam F +GLIBC_2.36 sched_setscheduler F +GLIBC_2.36 sched_yield F +GLIBC_2.36 secure_getenv F +GLIBC_2.36 seed48 F +GLIBC_2.36 seed48_r F +GLIBC_2.36 seekdir F +GLIBC_2.36 select F +GLIBC_2.36 sem_clockwait F +GLIBC_2.36 sem_close F +GLIBC_2.36 sem_destroy F +GLIBC_2.36 sem_getvalue F +GLIBC_2.36 sem_init F +GLIBC_2.36 sem_open F +GLIBC_2.36 sem_post F +GLIBC_2.36 sem_timedwait F +GLIBC_2.36 sem_trywait F +GLIBC_2.36 sem_unlink F +GLIBC_2.36 sem_wait F +GLIBC_2.36 semctl F +GLIBC_2.36 semget F +GLIBC_2.36 semop F +GLIBC_2.36 semtimedop F +GLIBC_2.36 send F +GLIBC_2.36 sendfile F +GLIBC_2.36 sendfile64 F +GLIBC_2.36 sendmmsg F +GLIBC_2.36 sendmsg F +GLIBC_2.36 sendto F +GLIBC_2.36 setaliasent F +GLIBC_2.36 setbuf F +GLIBC_2.36 setbuffer F +GLIBC_2.36 setcontext F +GLIBC_2.36 setdomainname F +GLIBC_2.36 setegid F +GLIBC_2.36 setenv F +GLIBC_2.36 seteuid F +GLIBC_2.36 setfsent F +GLIBC_2.36 setfsgid F +GLIBC_2.36 setfsuid F +GLIBC_2.36 setgid F +GLIBC_2.36 setgrent F +GLIBC_2.36 setgroups F +GLIBC_2.36 sethostent F +GLIBC_2.36 sethostid F +GLIBC_2.36 sethostname F +GLIBC_2.36 setipv4sourcefilter F +GLIBC_2.36 setitimer F +GLIBC_2.36 setjmp F +GLIBC_2.36 setlinebuf F +GLIBC_2.36 setlocale F +GLIBC_2.36 setlogin F +GLIBC_2.36 setlogmask F +GLIBC_2.36 setmntent F +GLIBC_2.36 setnetent F +GLIBC_2.36 setnetgrent F +GLIBC_2.36 setns F +GLIBC_2.36 setpgid F +GLIBC_2.36 setpgrp F +GLIBC_2.36 setpriority F +GLIBC_2.36 setprotoent F +GLIBC_2.36 setpwent F +GLIBC_2.36 setregid F +GLIBC_2.36 setresgid F +GLIBC_2.36 setresuid F +GLIBC_2.36 setreuid F +GLIBC_2.36 setrlimit F +GLIBC_2.36 setrlimit64 F +GLIBC_2.36 setrpcent F +GLIBC_2.36 setservent F +GLIBC_2.36 setsgent F +GLIBC_2.36 setsid F +GLIBC_2.36 setsockopt F +GLIBC_2.36 setsourcefilter F +GLIBC_2.36 setspent F +GLIBC_2.36 setstate F +GLIBC_2.36 setstate_r F +GLIBC_2.36 settimeofday F +GLIBC_2.36 setttyent F +GLIBC_2.36 setuid F +GLIBC_2.36 setusershell F +GLIBC_2.36 setutent F +GLIBC_2.36 setutxent F +GLIBC_2.36 setvbuf F +GLIBC_2.36 setxattr F +GLIBC_2.36 sgetsgent F +GLIBC_2.36 sgetsgent_r F +GLIBC_2.36 sgetspent F +GLIBC_2.36 sgetspent_r F +GLIBC_2.36 shm_open F +GLIBC_2.36 shm_unlink F +GLIBC_2.36 shmat F +GLIBC_2.36 shmctl F +GLIBC_2.36 shmdt F +GLIBC_2.36 shmget F +GLIBC_2.36 shutdown F +GLIBC_2.36 sigabbrev_np F +GLIBC_2.36 sigaction F +GLIBC_2.36 sigaddset F +GLIBC_2.36 sigaltstack F +GLIBC_2.36 sigandset F +GLIBC_2.36 sigblock F +GLIBC_2.36 sigdelset F +GLIBC_2.36 sigdescr_np F +GLIBC_2.36 sigemptyset F +GLIBC_2.36 sigfillset F +GLIBC_2.36 siggetmask F +GLIBC_2.36 sighold F +GLIBC_2.36 sigignore F +GLIBC_2.36 siginterrupt F +GLIBC_2.36 sigisemptyset F +GLIBC_2.36 sigismember F +GLIBC_2.36 siglongjmp F +GLIBC_2.36 signal F +GLIBC_2.36 signalfd F +GLIBC_2.36 sigorset F +GLIBC_2.36 sigpause F +GLIBC_2.36 sigpending F +GLIBC_2.36 sigprocmask F +GLIBC_2.36 sigqueue F +GLIBC_2.36 sigrelse F +GLIBC_2.36 sigreturn F +GLIBC_2.36 sigset F +GLIBC_2.36 sigsetmask F +GLIBC_2.36 sigstack F +GLIBC_2.36 sigsuspend F +GLIBC_2.36 sigtimedwait F +GLIBC_2.36 sigwait F +GLIBC_2.36 sigwaitinfo F +GLIBC_2.36 sleep F +GLIBC_2.36 snprintf F +GLIBC_2.36 sockatmark F +GLIBC_2.36 socket F +GLIBC_2.36 socketpair F +GLIBC_2.36 splice F +GLIBC_2.36 sprintf F +GLIBC_2.36 sprofil F +GLIBC_2.36 srand F +GLIBC_2.36 srand48 F +GLIBC_2.36 srand48_r F +GLIBC_2.36 srandom F +GLIBC_2.36 srandom_r F +GLIBC_2.36 sscanf F +GLIBC_2.36 ssignal F +GLIBC_2.36 stat F +GLIBC_2.36 stat64 F +GLIBC_2.36 statfs F +GLIBC_2.36 statfs64 F +GLIBC_2.36 statvfs F +GLIBC_2.36 statvfs64 F +GLIBC_2.36 statx F +GLIBC_2.36 stderr D 0x8 +GLIBC_2.36 stdin D 0x8 +GLIBC_2.36 stdout D 0x8 +GLIBC_2.36 stpcpy F +GLIBC_2.36 stpncpy F +GLIBC_2.36 strcasecmp F +GLIBC_2.36 strcasecmp_l F +GLIBC_2.36 strcasestr F +GLIBC_2.36 strcat F +GLIBC_2.36 strchr F +GLIBC_2.36 strchrnul F +GLIBC_2.36 strcmp F +GLIBC_2.36 strcoll F +GLIBC_2.36 strcoll_l F +GLIBC_2.36 strcpy F +GLIBC_2.36 strcspn F +GLIBC_2.36 strdup F +GLIBC_2.36 strerror F +GLIBC_2.36 strerror_l F +GLIBC_2.36 strerror_r F +GLIBC_2.36 strerrordesc_np F +GLIBC_2.36 strerrorname_np F +GLIBC_2.36 strfmon F +GLIBC_2.36 strfmon_l F +GLIBC_2.36 strfromd F +GLIBC_2.36 strfromf F +GLIBC_2.36 strfromf128 F +GLIBC_2.36 strfromf32 F +GLIBC_2.36 strfromf32x F +GLIBC_2.36 strfromf64 F +GLIBC_2.36 strfromf64x F +GLIBC_2.36 strfroml F +GLIBC_2.36 strfry F +GLIBC_2.36 strftime F +GLIBC_2.36 strftime_l F +GLIBC_2.36 strlen F +GLIBC_2.36 strncasecmp F +GLIBC_2.36 strncasecmp_l F +GLIBC_2.36 strncat F +GLIBC_2.36 strncmp F +GLIBC_2.36 strncpy F +GLIBC_2.36 strndup F +GLIBC_2.36 strnlen F +GLIBC_2.36 strpbrk F +GLIBC_2.36 strptime F +GLIBC_2.36 strptime_l F +GLIBC_2.36 strrchr F +GLIBC_2.36 strsep F +GLIBC_2.36 strsignal F +GLIBC_2.36 strspn F +GLIBC_2.36 strstr F +GLIBC_2.36 strtod F +GLIBC_2.36 strtod_l F +GLIBC_2.36 strtof F +GLIBC_2.36 strtof128 F +GLIBC_2.36 strtof128_l F +GLIBC_2.36 strtof32 F +GLIBC_2.36 strtof32_l F +GLIBC_2.36 strtof32x F +GLIBC_2.36 strtof32x_l F +GLIBC_2.36 strtof64 F +GLIBC_2.36 strtof64_l F +GLIBC_2.36 strtof64x F +GLIBC_2.36 strtof64x_l F +GLIBC_2.36 strtof_l F +GLIBC_2.36 strtoimax F +GLIBC_2.36 strtok F +GLIBC_2.36 strtok_r F +GLIBC_2.36 strtol F +GLIBC_2.36 strtol_l F +GLIBC_2.36 strtold F +GLIBC_2.36 strtold_l F +GLIBC_2.36 strtoll F +GLIBC_2.36 strtoll_l F +GLIBC_2.36 strtoq F +GLIBC_2.36 strtoul F +GLIBC_2.36 strtoul_l F +GLIBC_2.36 strtoull F +GLIBC_2.36 strtoull_l F +GLIBC_2.36 strtoumax F +GLIBC_2.36 strtouq F +GLIBC_2.36 strverscmp F +GLIBC_2.36 strxfrm F +GLIBC_2.36 strxfrm_l F +GLIBC_2.36 stty F +GLIBC_2.36 swab F +GLIBC_2.36 swapcontext F +GLIBC_2.36 swapoff F +GLIBC_2.36 swapon F +GLIBC_2.36 swprintf F +GLIBC_2.36 swscanf F +GLIBC_2.36 symlink F +GLIBC_2.36 symlinkat F +GLIBC_2.36 sync F +GLIBC_2.36 sync_file_range F +GLIBC_2.36 syncfs F +GLIBC_2.36 syscall F +GLIBC_2.36 sysconf F +GLIBC_2.36 sysinfo F +GLIBC_2.36 syslog F +GLIBC_2.36 system F +GLIBC_2.36 sysv_signal F +GLIBC_2.36 tcdrain F +GLIBC_2.36 tcflow F +GLIBC_2.36 tcflush F +GLIBC_2.36 tcgetattr F +GLIBC_2.36 tcgetpgrp F +GLIBC_2.36 tcgetsid F +GLIBC_2.36 tcsendbreak F +GLIBC_2.36 tcsetattr F +GLIBC_2.36 tcsetpgrp F +GLIBC_2.36 tdelete F +GLIBC_2.36 tdestroy F +GLIBC_2.36 tee F +GLIBC_2.36 telldir F +GLIBC_2.36 tempnam F +GLIBC_2.36 textdomain F +GLIBC_2.36 tfind F +GLIBC_2.36 tgkill F +GLIBC_2.36 thrd_create F +GLIBC_2.36 thrd_current F +GLIBC_2.36 thrd_detach F +GLIBC_2.36 thrd_equal F +GLIBC_2.36 thrd_exit F +GLIBC_2.36 thrd_join F +GLIBC_2.36 thrd_sleep F +GLIBC_2.36 thrd_yield F +GLIBC_2.36 time F +GLIBC_2.36 timegm F +GLIBC_2.36 timelocal F +GLIBC_2.36 timer_create F +GLIBC_2.36 timer_delete F +GLIBC_2.36 timer_getoverrun F +GLIBC_2.36 timer_gettime F +GLIBC_2.36 timer_settime F +GLIBC_2.36 timerfd_create F +GLIBC_2.36 timerfd_gettime F +GLIBC_2.36 timerfd_settime F +GLIBC_2.36 times F +GLIBC_2.36 timespec_get F +GLIBC_2.36 timespec_getres F +GLIBC_2.36 timezone D 0x8 +GLIBC_2.36 tmpfile F +GLIBC_2.36 tmpfile64 F +GLIBC_2.36 tmpnam F +GLIBC_2.36 tmpnam_r F +GLIBC_2.36 toascii F +GLIBC_2.36 tolower F +GLIBC_2.36 tolower_l F +GLIBC_2.36 toupper F +GLIBC_2.36 toupper_l F +GLIBC_2.36 towctrans F +GLIBC_2.36 towctrans_l F +GLIBC_2.36 towlower F +GLIBC_2.36 towlower_l F +GLIBC_2.36 towupper F +GLIBC_2.36 towupper_l F +GLIBC_2.36 truncate F +GLIBC_2.36 truncate64 F +GLIBC_2.36 tsearch F +GLIBC_2.36 tss_create F +GLIBC_2.36 tss_delete F +GLIBC_2.36 tss_get F +GLIBC_2.36 tss_set F +GLIBC_2.36 ttyname F +GLIBC_2.36 ttyname_r F +GLIBC_2.36 ttyslot F +GLIBC_2.36 twalk F +GLIBC_2.36 twalk_r F +GLIBC_2.36 tzname D 0x10 +GLIBC_2.36 tzset F +GLIBC_2.36 ualarm F +GLIBC_2.36 ulckpwdf F +GLIBC_2.36 ulimit F +GLIBC_2.36 umask F +GLIBC_2.36 umount F +GLIBC_2.36 umount2 F +GLIBC_2.36 uname F +GLIBC_2.36 ungetc F +GLIBC_2.36 ungetwc F +GLIBC_2.36 unlink F +GLIBC_2.36 unlinkat F +GLIBC_2.36 unlockpt F +GLIBC_2.36 unsetenv F +GLIBC_2.36 unshare F +GLIBC_2.36 updwtmp F +GLIBC_2.36 updwtmpx F +GLIBC_2.36 uselocale F +GLIBC_2.36 usleep F +GLIBC_2.36 utime F +GLIBC_2.36 utimensat F +GLIBC_2.36 utimes F +GLIBC_2.36 utmpname F +GLIBC_2.36 utmpxname F +GLIBC_2.36 valloc F +GLIBC_2.36 vasprintf F +GLIBC_2.36 vdprintf F +GLIBC_2.36 verr F +GLIBC_2.36 verrx F +GLIBC_2.36 versionsort F +GLIBC_2.36 versionsort64 F +GLIBC_2.36 vfork F +GLIBC_2.36 vfprintf F +GLIBC_2.36 vfscanf F +GLIBC_2.36 vfwprintf F +GLIBC_2.36 vfwscanf F +GLIBC_2.36 vhangup F +GLIBC_2.36 vlimit F +GLIBC_2.36 vmsplice F +GLIBC_2.36 vprintf F +GLIBC_2.36 vscanf F +GLIBC_2.36 vsnprintf F +GLIBC_2.36 vsprintf F +GLIBC_2.36 vsscanf F +GLIBC_2.36 vswprintf F +GLIBC_2.36 vswscanf F +GLIBC_2.36 vsyslog F +GLIBC_2.36 vwarn F +GLIBC_2.36 vwarnx F +GLIBC_2.36 vwprintf F +GLIBC_2.36 vwscanf F +GLIBC_2.36 wait F +GLIBC_2.36 wait3 F +GLIBC_2.36 wait4 F +GLIBC_2.36 waitid F +GLIBC_2.36 waitpid F +GLIBC_2.36 warn F +GLIBC_2.36 warnx F +GLIBC_2.36 wcpcpy F +GLIBC_2.36 wcpncpy F +GLIBC_2.36 wcrtomb F +GLIBC_2.36 wcscasecmp F +GLIBC_2.36 wcscasecmp_l F +GLIBC_2.36 wcscat F +GLIBC_2.36 wcschr F +GLIBC_2.36 wcschrnul F +GLIBC_2.36 wcscmp F +GLIBC_2.36 wcscoll F +GLIBC_2.36 wcscoll_l F +GLIBC_2.36 wcscpy F +GLIBC_2.36 wcscspn F +GLIBC_2.36 wcsdup F +GLIBC_2.36 wcsftime F +GLIBC_2.36 wcsftime_l F +GLIBC_2.36 wcslen F +GLIBC_2.36 wcsncasecmp F +GLIBC_2.36 wcsncasecmp_l F +GLIBC_2.36 wcsncat F +GLIBC_2.36 wcsncmp F +GLIBC_2.36 wcsncpy F +GLIBC_2.36 wcsnlen F +GLIBC_2.36 wcsnrtombs F +GLIBC_2.36 wcspbrk F +GLIBC_2.36 wcsrchr F +GLIBC_2.36 wcsrtombs F +GLIBC_2.36 wcsspn F +GLIBC_2.36 wcsstr F +GLIBC_2.36 wcstod F +GLIBC_2.36 wcstod_l F +GLIBC_2.36 wcstof F +GLIBC_2.36 wcstof128 F +GLIBC_2.36 wcstof128_l F +GLIBC_2.36 wcstof32 F +GLIBC_2.36 wcstof32_l F +GLIBC_2.36 wcstof32x F +GLIBC_2.36 wcstof32x_l F +GLIBC_2.36 wcstof64 F +GLIBC_2.36 wcstof64_l F +GLIBC_2.36 wcstof64x F +GLIBC_2.36 wcstof64x_l F +GLIBC_2.36 wcstof_l F +GLIBC_2.36 wcstoimax F +GLIBC_2.36 wcstok F +GLIBC_2.36 wcstol F +GLIBC_2.36 wcstol_l F +GLIBC_2.36 wcstold F +GLIBC_2.36 wcstold_l F +GLIBC_2.36 wcstoll F +GLIBC_2.36 wcstoll_l F +GLIBC_2.36 wcstombs F +GLIBC_2.36 wcstoq F +GLIBC_2.36 wcstoul F +GLIBC_2.36 wcstoul_l F +GLIBC_2.36 wcstoull F +GLIBC_2.36 wcstoull_l F +GLIBC_2.36 wcstoumax F +GLIBC_2.36 wcstouq F +GLIBC_2.36 wcswcs F +GLIBC_2.36 wcswidth F +GLIBC_2.36 wcsxfrm F +GLIBC_2.36 wcsxfrm_l F +GLIBC_2.36 wctob F +GLIBC_2.36 wctomb F +GLIBC_2.36 wctrans F +GLIBC_2.36 wctrans_l F +GLIBC_2.36 wctype F +GLIBC_2.36 wctype_l F +GLIBC_2.36 wcwidth F +GLIBC_2.36 wmemchr F +GLIBC_2.36 wmemcmp F +GLIBC_2.36 wmemcpy F +GLIBC_2.36 wmemmove F +GLIBC_2.36 wmempcpy F +GLIBC_2.36 wmemset F +GLIBC_2.36 wordexp F +GLIBC_2.36 wordfree F +GLIBC_2.36 wprintf F +GLIBC_2.36 write F +GLIBC_2.36 writev F +GLIBC_2.36 wscanf F +GLIBC_2.37 __adddf3 F +GLIBC_2.37 __addsf3 F +GLIBC_2.37 __divdf3 F +GLIBC_2.37 __divsf3 F +GLIBC_2.37 __eqdf2 F +GLIBC_2.37 __eqsf2 F +GLIBC_2.37 __extendsfdf2 F +GLIBC_2.37 __fixdfsi F +GLIBC_2.37 __fixsfsi F +GLIBC_2.37 __fixunsdfsi F +GLIBC_2.37 __fixunssfsi F +GLIBC_2.37 __floatsidf F +GLIBC_2.37 __floatsisf F +GLIBC_2.37 __gedf2 F +GLIBC_2.37 __gesf2 F +GLIBC_2.37 __ledf2 F +GLIBC_2.37 __lesf2 F +GLIBC_2.37 __muldf3 F +GLIBC_2.37 __mulsf3 F +GLIBC_2.37 __negdf2 F +GLIBC_2.37 __negsf2 F +GLIBC_2.37 __subdf3 F +GLIBC_2.37 __subsf3 F +GLIBC_2.37 __truncdfsf2 F +GLIBC_2.38 __isoc23_fscanf F +GLIBC_2.38 __isoc23_fwscanf F +GLIBC_2.38 __isoc23_scanf F +GLIBC_2.38 __isoc23_sscanf F +GLIBC_2.38 __isoc23_strtoimax F +GLIBC_2.38 __isoc23_strtol F +GLIBC_2.38 __isoc23_strtol_l F +GLIBC_2.38 __isoc23_strtoll F +GLIBC_2.38 __isoc23_strtoll_l F +GLIBC_2.38 __isoc23_strtoul F +GLIBC_2.38 __isoc23_strtoul_l F +GLIBC_2.38 __isoc23_strtoull F +GLIBC_2.38 __isoc23_strtoull_l F +GLIBC_2.38 __isoc23_strtoumax F +GLIBC_2.38 __isoc23_swscanf F +GLIBC_2.38 __isoc23_vfscanf F +GLIBC_2.38 __isoc23_vfwscanf F +GLIBC_2.38 __isoc23_vscanf F +GLIBC_2.38 __isoc23_vsscanf F +GLIBC_2.38 __isoc23_vswscanf F +GLIBC_2.38 __isoc23_vwscanf F +GLIBC_2.38 __isoc23_wcstoimax F +GLIBC_2.38 __isoc23_wcstol F +GLIBC_2.38 __isoc23_wcstol_l F +GLIBC_2.38 __isoc23_wcstoll F +GLIBC_2.38 __isoc23_wcstoll_l F +GLIBC_2.38 __isoc23_wcstoul F +GLIBC_2.38 __isoc23_wcstoul_l F +GLIBC_2.38 __isoc23_wcstoull F +GLIBC_2.38 __isoc23_wcstoull_l F +GLIBC_2.38 __isoc23_wcstoumax F +GLIBC_2.38 __isoc23_wscanf F +GLIBC_2.38 __strlcat_chk F +GLIBC_2.38 __strlcpy_chk F +GLIBC_2.38 __wcslcat_chk F +GLIBC_2.38 __wcslcpy_chk F +GLIBC_2.38 strlcat F +GLIBC_2.38 strlcpy F +GLIBC_2.38 wcslcat F +GLIBC_2.38 wcslcpy F +GLIBC_2.39 pidfd_getpid F +GLIBC_2.39 pidfd_spawn F +GLIBC_2.39 pidfd_spawnp F +GLIBC_2.39 posix_spawnattr_getcgroup_np F +GLIBC_2.39 posix_spawnattr_setcgroup_np F +GLIBC_2.39 stdc_bit_ceil_uc F +GLIBC_2.39 stdc_bit_ceil_ui F +GLIBC_2.39 stdc_bit_ceil_ul F +GLIBC_2.39 stdc_bit_ceil_ull F +GLIBC_2.39 stdc_bit_ceil_us F +GLIBC_2.39 stdc_bit_floor_uc F +GLIBC_2.39 stdc_bit_floor_ui F +GLIBC_2.39 stdc_bit_floor_ul F +GLIBC_2.39 stdc_bit_floor_ull F +GLIBC_2.39 stdc_bit_floor_us F +GLIBC_2.39 stdc_bit_width_uc F +GLIBC_2.39 stdc_bit_width_ui F +GLIBC_2.39 stdc_bit_width_ul F +GLIBC_2.39 stdc_bit_width_ull F +GLIBC_2.39 stdc_bit_width_us F +GLIBC_2.39 stdc_count_ones_uc F +GLIBC_2.39 stdc_count_ones_ui F +GLIBC_2.39 stdc_count_ones_ul F +GLIBC_2.39 stdc_count_ones_ull F +GLIBC_2.39 stdc_count_ones_us F +GLIBC_2.39 stdc_count_zeros_uc F +GLIBC_2.39 stdc_count_zeros_ui F +GLIBC_2.39 stdc_count_zeros_ul F +GLIBC_2.39 stdc_count_zeros_ull F +GLIBC_2.39 stdc_count_zeros_us F +GLIBC_2.39 stdc_first_leading_one_uc F +GLIBC_2.39 stdc_first_leading_one_ui F +GLIBC_2.39 stdc_first_leading_one_ul F +GLIBC_2.39 stdc_first_leading_one_ull F +GLIBC_2.39 stdc_first_leading_one_us F +GLIBC_2.39 stdc_first_leading_zero_uc F +GLIBC_2.39 stdc_first_leading_zero_ui F +GLIBC_2.39 stdc_first_leading_zero_ul F +GLIBC_2.39 stdc_first_leading_zero_ull F +GLIBC_2.39 stdc_first_leading_zero_us F +GLIBC_2.39 stdc_first_trailing_one_uc F +GLIBC_2.39 stdc_first_trailing_one_ui F +GLIBC_2.39 stdc_first_trailing_one_ul F +GLIBC_2.39 stdc_first_trailing_one_ull F +GLIBC_2.39 stdc_first_trailing_one_us F +GLIBC_2.39 stdc_first_trailing_zero_uc F +GLIBC_2.39 stdc_first_trailing_zero_ui F +GLIBC_2.39 stdc_first_trailing_zero_ul F +GLIBC_2.39 stdc_first_trailing_zero_ull F +GLIBC_2.39 stdc_first_trailing_zero_us F +GLIBC_2.39 stdc_has_single_bit_uc F +GLIBC_2.39 stdc_has_single_bit_ui F +GLIBC_2.39 stdc_has_single_bit_ul F +GLIBC_2.39 stdc_has_single_bit_ull F +GLIBC_2.39 stdc_has_single_bit_us F +GLIBC_2.39 stdc_leading_ones_uc F +GLIBC_2.39 stdc_leading_ones_ui F +GLIBC_2.39 stdc_leading_ones_ul F +GLIBC_2.39 stdc_leading_ones_ull F +GLIBC_2.39 stdc_leading_ones_us F +GLIBC_2.39 stdc_leading_zeros_uc F +GLIBC_2.39 stdc_leading_zeros_ui F +GLIBC_2.39 stdc_leading_zeros_ul F +GLIBC_2.39 stdc_leading_zeros_ull F +GLIBC_2.39 stdc_leading_zeros_us F +GLIBC_2.39 stdc_trailing_ones_uc F +GLIBC_2.39 stdc_trailing_ones_ui F +GLIBC_2.39 stdc_trailing_ones_ul F +GLIBC_2.39 stdc_trailing_ones_ull F +GLIBC_2.39 stdc_trailing_ones_us F +GLIBC_2.39 stdc_trailing_zeros_uc F +GLIBC_2.39 stdc_trailing_zeros_ui F +GLIBC_2.39 stdc_trailing_zeros_ul F +GLIBC_2.39 stdc_trailing_zeros_ull F +GLIBC_2.39 stdc_trailing_zeros_us F diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/localplt.data b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/localplt.data new file mode 100644 index 0000000000..d40826c783 --- /dev/null +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/nofpu/localplt.data @@ -0,0 +1,23 @@ +# See scripts/check-localplt.awk for how this file is processed. +# PLT use is required for the malloc family and for matherr because +# users can define their own functions and have library internals call them. +libc.so: calloc +libc.so: free +libc.so: malloc +libc.so: realloc +libc.so: __fixsfsi +libc.so: __divsf3 +libc.so: __adddf3 +libc.so: __eqdf2 +libc.so: __gedf2 +libc.so: __floatsisf +libc.so: __eqsf2 +libc.so: __subsf3 +libc.so: __mulsf3 +libc.so: __muldf3 +libc.so: __subdf3 +libc.so: __divdf3 +libc.so: __ledf2 +libc.so: __floatsidf +libc.so: __extendsfdf2 +libc.so: __addsf3