From: caiyinyu <caiyinyu@loongson.cn>
To: libc-alpha@sourceware.org
Cc: joseph_myers@mentor.com, adhemerval.zanella@linaro.or,
caiyinyu <caiyinyu@loongson.cn>
Subject: [PATCH v6 00/13] GLIBC LoongArch PATCHES
Date: Fri, 8 Jul 2022 14:52:42 +0800 [thread overview]
Message-ID: <20220708065255.2316410-1-caiyinyu@loongson.cn> (raw)
Hello, these are LoongArch patches v6, and we really need your futher suggestions:
HISTORY:
LoongArch patches v1: https://sourceware.org/pipermail/libc-alpha/2021-August/130262.html
LoongArch patches v2: https://sourceware.org/pipermail/libc-alpha/2021-December/134811.html
LoongArch patches v3: https://sourceware.org/pipermail/libc-alpha/2022-April/137888.html
LoongArch patches v4: https://sourceware.org/pipermail/libc-alpha/2022-May/subject.html
LoongArch patches v5: https://sourceware.org/pipermail/libc-alpha/2022-June/139262.html
LoongArch-Doc: https://github.com/loongson/LoongArch-Documentation
We add new section: procedure calling convention.
https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_procedure_calling_convention
Source code:
glibc: https://github.com/loongson/glibc/tree/loongarch_2_36_upstream_v6
binutils: https://github.com/loongson/binutils-gdb/tree/dev/new_reloc
gcc: https://github.com/loongson/gcc/tree/dev/new_reloc
Linux kernel, GCC and Binutils Loongarch parts have been into GNU Open Source community.
And there are some new designs about relocations in binutils and gcc which will be merged into
master soon.
test result: all passed.
XPASS: conform/UNIX98/ndbm.h/linknamespace
XPASS: conform/XOPEN2K/ndbm.h/linknamespace
XPASS: conform/XOPEN2K8/ndbm.h/linknamespace
XPASS: conform/XPG42/ndbm.h/linknamespace
UNSUPPORTED: crypt/cert
UNSUPPORTED: elf/tst-env-setuid
UNSUPPORTED: elf/tst-env-setuid-tunables
UNSUPPORTED: elf/tst-valgrind-smoke
UNSUPPORTED: misc/tst-adjtimex
UNSUPPORTED: misc/tst-clock_adjtime
UNSUPPORTED: misc/tst-ntp_adjtime
UNSUPPORTED: misc/tst-pkey
UNSUPPORTED: misc/tst-rseq
UNSUPPORTED: misc/tst-rseq-disable
UNSUPPORTED: nptl/test-cond-printers
UNSUPPORTED: nptl/test-condattr-printers
UNSUPPORTED: nptl/test-mutex-printers
UNSUPPORTED: nptl/test-mutexattr-printers
UNSUPPORTED: nptl/test-rwlock-printers
UNSUPPORTED: nptl/test-rwlockattr-printers
UNSUPPORTED: nptl/tst-rseq-nptl
UNSUPPORTED: stdlib/tst-secure-getenv
UNSUPPORTED: time/tst-clock_settime
UNSUPPORTED: time/tst-settimeofday
Summary of test results:
4576 PASS
20 UNSUPPORTED
14 XFAIL
4 XPASS
caiyinyu (13):
LoongArch: Update NEWS and README for the LoongArch port.
LoongArch: Add LoongArch entries to config.h.in
LoongArch: Add relocations and ELF flags to elf.h and
scripts/glibcelf.py
LoongArch: ABI Implementation
LoongArch: Thread-Local Storage Support
LoongArch: Generic <math.h> and soft-fp Routines
LoongArch: Atomic and Locking Routines
LoongArch: Linux Syscall Interface
LoongArch: Linux ABI
LoongArch: Add ABI Lists
LoongArch: Build Infastructure
LoongArch: Hard Float Support
LoongArch: Update build-many-glibcs.py for the LoongArch Port.
NEWS | 8 +
README | 1 +
config.h.in | 6 +
elf/elf.h | 68 +-
manual/math.texi | 2 +-
scripts/build-many-glibcs.py | 5 +
scripts/glibcelf.py | 3 +-
sysdeps/loongarch/Implies | 3 +
sysdeps/loongarch/Makefile | 15 +
sysdeps/loongarch/__longjmp.S | 52 +
sysdeps/loongarch/abort-instr.h | 2 +
sysdeps/loongarch/bits/endianness.h | 11 +
sysdeps/loongarch/bits/fenv.h | 90 +
sysdeps/loongarch/bits/link.h | 58 +
sysdeps/loongarch/bits/setjmp.h | 42 +
sysdeps/loongarch/bsd-_setjmp.c | 1 +
sysdeps/loongarch/bsd-setjmp.c | 1 +
sysdeps/loongarch/configure | 5 +
sysdeps/loongarch/configure.ac | 6 +
sysdeps/loongarch/dl-irel.h | 54 +
sysdeps/loongarch/dl-machine.h | 287 +++
sysdeps/loongarch/dl-tls.h | 46 +
sysdeps/loongarch/dl-trampoline.S | 91 +
sysdeps/loongarch/e_sqrtl.c | 38 +
sysdeps/loongarch/fpu/fclrexcpt.c | 46 +
sysdeps/loongarch/fpu/fedisblxcpt.c | 39 +
sysdeps/loongarch/fpu/feenablxcpt.c | 39 +
sysdeps/loongarch/fpu/fegetenv.c | 31 +
sysdeps/loongarch/fpu/fegetexcept.c | 32 +
sysdeps/loongarch/fpu/fegetmode.c | 27 +
sysdeps/loongarch/fpu/fegetround.c | 33 +
sysdeps/loongarch/fpu/feholdexcpt.c | 40 +
sysdeps/loongarch/fpu/fenv_libc.h | 30 +
sysdeps/loongarch/fpu/fesetenv.c | 42 +
sysdeps/loongarch/fpu/fesetexcept.c | 32 +
sysdeps/loongarch/fpu/fesetmode.c | 38 +
sysdeps/loongarch/fpu/fesetround.c | 44 +
sysdeps/loongarch/fpu/feupdateenv.c | 43 +
sysdeps/loongarch/fpu/fgetexcptflg.c | 38 +
sysdeps/loongarch/fpu/fraiseexcpt.c | 75 +
sysdeps/loongarch/fpu/fsetexcptflg.c | 41 +
sysdeps/loongarch/fpu/ftestexcept.c | 32 +
.../loongarch/fpu/math-use-builtins-sqrt.h | 4 +
sysdeps/loongarch/fpu_control.h | 102 +
sysdeps/loongarch/hp-timing.h | 42 +
sysdeps/loongarch/jmpbuf-offsets.h | 22 +
sysdeps/loongarch/jmpbuf-unwind.h | 45 +
sysdeps/loongarch/ldsodefs.h | 41 +
sysdeps/loongarch/libc-tls.c | 32 +
sysdeps/loongarch/linkmap.h | 22 +
sysdeps/loongarch/lp64/Implies-after | 1 +
sysdeps/loongarch/lp64/libm-test-ulps | 1412 +++++++++++
sysdeps/loongarch/lp64/libm-test-ulps-name | 1 +
sysdeps/loongarch/machine-gmon.h | 37 +
sysdeps/loongarch/math_private.h | 248 ++
sysdeps/loongarch/nptl/Makefile | 21 +
sysdeps/loongarch/nptl/pthreaddef.h | 32 +
sysdeps/loongarch/nptl/tcb-offsets.sym | 6 +
sysdeps/loongarch/nptl/tls.h | 138 ++
sysdeps/loongarch/preconfigure | 52 +
sysdeps/loongarch/preconfigure.ac | 46 +
sysdeps/loongarch/setjmp.S | 66 +
sysdeps/loongarch/sfp-machine.h | 102 +
sysdeps/loongarch/sotruss-lib.c | 50 +
sysdeps/loongarch/stackinfo.h | 33 +
sysdeps/loongarch/start.S | 66 +
sysdeps/loongarch/sys/asm.h | 59 +
sysdeps/loongarch/sys/ifunc.h | 30 +
sysdeps/loongarch/sys/regdef.h | 93 +
sysdeps/loongarch/tininess.h | 1 +
sysdeps/loongarch/tst-audit.h | 23 +
sysdeps/unix/sysv/linux/loongarch/Implies | 1 +
sysdeps/unix/sysv/linux/loongarch/Makefile | 4 +
.../unix/sysv/linux/loongarch/arch-syscall.h | 301 +++
.../sysv/linux/loongarch/atomic-machine.h | 181 ++
.../unix/sysv/linux/loongarch/bits/fcntl.h | 61 +
.../unix/sysv/linux/loongarch/bits/procfs.h | 52 +
.../linux/loongarch/bits/pthread_stack_min.h | 20 +
.../unix/sysv/linux/loongarch/bits/sigstack.h | 32 +
sysdeps/unix/sysv/linux/loongarch/clone.S | 96 +
sysdeps/unix/sysv/linux/loongarch/clone3.S | 83 +
sysdeps/unix/sysv/linux/loongarch/configure | 174 ++
.../unix/sysv/linux/loongarch/configure.ac | 22 +
.../unix/sysv/linux/loongarch/getcontext.S | 59 +
sysdeps/unix/sysv/linux/loongarch/ldconfig.h | 26 +
.../unix/sysv/linux/loongarch/ldd-rewrite.sed | 3 +
.../unix/sysv/linux/loongarch/localplt.data | 12 +
.../unix/sysv/linux/loongarch/lp64/Implies | 3 +
.../sysv/linux/loongarch/lp64/c++-types.data | 67 +
.../unix/sysv/linux/loongarch/lp64/ld.abilist | 8 +
.../loongarch/lp64/libBrokenLocale.abilist | 1 +
.../sysv/linux/loongarch/lp64/libc.abilist | 2153 +++++++++++++++++
.../loongarch/lp64/libc_malloc_debug.abilist | 26 +
.../linux/loongarch/lp64/libcrypt.abilist | 2 +
.../sysv/linux/loongarch/lp64/libm.abilist | 1031 ++++++++
.../linux/loongarch/lp64/libpthread.abilist | 0
.../linux/loongarch/lp64/libresolv.abilist | 55 +
.../sysv/linux/loongarch/lp64/librt.abilist | 0
.../linux/loongarch/lp64/libthread_db.abilist | 40 +
.../unix/sysv/linux/loongarch/makecontext.c | 79 +
.../unix/sysv/linux/loongarch/setcontext.S | 100 +
.../unix/sysv/linux/loongarch/shlib-versions | 7 +
.../sysv/linux/loongarch/sigcontextinfo.h | 32 +
.../unix/sysv/linux/loongarch/swapcontext.S | 95 +
.../unix/sysv/linux/loongarch/sys/ucontext.h | 61 +
sysdeps/unix/sysv/linux/loongarch/sys/user.h | 42 +
sysdeps/unix/sysv/linux/loongarch/sysdep.S | 53 +
sysdeps/unix/sysv/linux/loongarch/sysdep.h | 321 +++
.../sysv/linux/loongarch/ucontext-macros.h | 32 +
.../unix/sysv/linux/loongarch/ucontext_i.sym | 31 +
sysdeps/unix/sysv/linux/loongarch/vfork.S | 50 +
111 files changed, 9837 insertions(+), 3 deletions(-)
create mode 100644 sysdeps/loongarch/Implies
create mode 100644 sysdeps/loongarch/Makefile
create mode 100644 sysdeps/loongarch/__longjmp.S
create mode 100644 sysdeps/loongarch/abort-instr.h
create mode 100644 sysdeps/loongarch/bits/endianness.h
create mode 100644 sysdeps/loongarch/bits/fenv.h
create mode 100644 sysdeps/loongarch/bits/link.h
create mode 100644 sysdeps/loongarch/bits/setjmp.h
create mode 100644 sysdeps/loongarch/bsd-_setjmp.c
create mode 100644 sysdeps/loongarch/bsd-setjmp.c
create mode 100644 sysdeps/loongarch/configure
create mode 100644 sysdeps/loongarch/configure.ac
create mode 100644 sysdeps/loongarch/dl-irel.h
create mode 100644 sysdeps/loongarch/dl-machine.h
create mode 100644 sysdeps/loongarch/dl-tls.h
create mode 100644 sysdeps/loongarch/dl-trampoline.S
create mode 100644 sysdeps/loongarch/e_sqrtl.c
create mode 100644 sysdeps/loongarch/fpu/fclrexcpt.c
create mode 100644 sysdeps/loongarch/fpu/fedisblxcpt.c
create mode 100644 sysdeps/loongarch/fpu/feenablxcpt.c
create mode 100644 sysdeps/loongarch/fpu/fegetenv.c
create mode 100644 sysdeps/loongarch/fpu/fegetexcept.c
create mode 100644 sysdeps/loongarch/fpu/fegetmode.c
create mode 100644 sysdeps/loongarch/fpu/fegetround.c
create mode 100644 sysdeps/loongarch/fpu/feholdexcpt.c
create mode 100644 sysdeps/loongarch/fpu/fenv_libc.h
create mode 100644 sysdeps/loongarch/fpu/fesetenv.c
create mode 100644 sysdeps/loongarch/fpu/fesetexcept.c
create mode 100644 sysdeps/loongarch/fpu/fesetmode.c
create mode 100644 sysdeps/loongarch/fpu/fesetround.c
create mode 100644 sysdeps/loongarch/fpu/feupdateenv.c
create mode 100644 sysdeps/loongarch/fpu/fgetexcptflg.c
create mode 100644 sysdeps/loongarch/fpu/fraiseexcpt.c
create mode 100644 sysdeps/loongarch/fpu/fsetexcptflg.c
create mode 100644 sysdeps/loongarch/fpu/ftestexcept.c
create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-sqrt.h
create mode 100644 sysdeps/loongarch/fpu_control.h
create mode 100644 sysdeps/loongarch/hp-timing.h
create mode 100644 sysdeps/loongarch/jmpbuf-offsets.h
create mode 100644 sysdeps/loongarch/jmpbuf-unwind.h
create mode 100644 sysdeps/loongarch/ldsodefs.h
create mode 100644 sysdeps/loongarch/libc-tls.c
create mode 100644 sysdeps/loongarch/linkmap.h
create mode 100644 sysdeps/loongarch/lp64/Implies-after
create mode 100644 sysdeps/loongarch/lp64/libm-test-ulps
create mode 100644 sysdeps/loongarch/lp64/libm-test-ulps-name
create mode 100644 sysdeps/loongarch/machine-gmon.h
create mode 100644 sysdeps/loongarch/math_private.h
create mode 100644 sysdeps/loongarch/nptl/Makefile
create mode 100644 sysdeps/loongarch/nptl/pthreaddef.h
create mode 100644 sysdeps/loongarch/nptl/tcb-offsets.sym
create mode 100644 sysdeps/loongarch/nptl/tls.h
create mode 100644 sysdeps/loongarch/preconfigure
create mode 100644 sysdeps/loongarch/preconfigure.ac
create mode 100644 sysdeps/loongarch/setjmp.S
create mode 100644 sysdeps/loongarch/sfp-machine.h
create mode 100644 sysdeps/loongarch/sotruss-lib.c
create mode 100644 sysdeps/loongarch/stackinfo.h
create mode 100644 sysdeps/loongarch/start.S
create mode 100644 sysdeps/loongarch/sys/asm.h
create mode 100644 sysdeps/loongarch/sys/ifunc.h
create mode 100644 sysdeps/loongarch/sys/regdef.h
create mode 100644 sysdeps/loongarch/tininess.h
create mode 100644 sysdeps/loongarch/tst-audit.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/Implies
create mode 100644 sysdeps/unix/sysv/linux/loongarch/Makefile
create mode 100644 sysdeps/unix/sysv/linux/loongarch/arch-syscall.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/atomic-machine.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/bits/fcntl.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/bits/procfs.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/bits/pthread_stack_min.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/bits/sigstack.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/clone.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/clone3.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/configure
create mode 100644 sysdeps/unix/sysv/linux/loongarch/configure.ac
create mode 100644 sysdeps/unix/sysv/linux/loongarch/getcontext.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/ldconfig.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/ldd-rewrite.sed
create mode 100644 sysdeps/unix/sysv/linux/loongarch/localplt.data
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/Implies
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/c++-types.data
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/ld.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libBrokenLocale.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libcrypt.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libpthread.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libresolv.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/librt.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libthread_db.abilist
create mode 100644 sysdeps/unix/sysv/linux/loongarch/makecontext.c
create mode 100644 sysdeps/unix/sysv/linux/loongarch/setcontext.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/shlib-versions
create mode 100644 sysdeps/unix/sysv/linux/loongarch/sigcontextinfo.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/swapcontext.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/sys/ucontext.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/sys/user.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/sysdep.S
create mode 100644 sysdeps/unix/sysv/linux/loongarch/sysdep.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/ucontext-macros.h
create mode 100644 sysdeps/unix/sysv/linux/loongarch/ucontext_i.sym
create mode 100644 sysdeps/unix/sysv/linux/loongarch/vfork.S
--
2.31.1
next reply other threads:[~2022-07-08 6:53 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-08 6:52 caiyinyu [this message]
2022-07-08 6:52 ` [PATCH v6 01/13] LoongArch: Update NEWS and README for the LoongArch port caiyinyu
2022-07-12 11:06 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 02/13] LoongArch: Add LoongArch entries to config.h.in caiyinyu
2022-07-12 18:51 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 03/13] LoongArch: Add relocations and ELF flags to elf.h and scripts/glibcelf.py caiyinyu
2022-07-12 19:27 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 04/13] LoongArch: ABI Implementation caiyinyu
2022-07-12 20:39 ` Adhemerval Zanella Netto
2022-07-15 1:46 ` caiyinyu
2022-07-08 6:52 ` [PATCH v6 05/13] LoongArch: Thread-Local Storage Support caiyinyu
2022-07-13 13:10 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 06/13] LoongArch: Generic <math.h> and soft-fp Routines caiyinyu
2022-07-13 13:25 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 07/13] LoongArch: Atomic and Locking Routines caiyinyu
2022-07-13 13:53 ` Adhemerval Zanella Netto
2022-07-15 1:46 ` caiyinyu
2022-07-08 6:52 ` [PATCH v6 08/13] LoongArch: Linux Syscall Interface caiyinyu
2022-07-13 16:19 ` Adhemerval Zanella Netto
2023-09-13 11:05 ` caiyinyu
2022-07-08 6:52 ` [PATCH v6 09/13] LoongArch: Linux ABI caiyinyu
2022-07-13 16:35 ` Adhemerval Zanella Netto
2022-07-15 1:48 ` caiyinyu
2022-07-08 6:52 ` [PATCH v6 10/13] LoongArch: Add ABI Lists caiyinyu
2022-07-13 17:12 ` Adhemerval Zanella Netto
2022-07-08 6:52 ` [PATCH v6 11/13] LoongArch: Build Infastructure caiyinyu
2022-07-13 3:07 ` Xi Ruoyao
2022-07-13 3:43 ` WANG Xuerui
2022-07-13 7:51 ` caiyinyu
2022-07-13 17:48 ` Adhemerval Zanella Netto
2022-07-15 1:49 ` caiyinyu
2022-07-08 6:52 ` [PATCH v6 12/13] LoongArch: Hard Float Support caiyinyu
2022-07-13 19:22 ` Adhemerval Zanella Netto
2022-07-14 13:00 ` caiyinyu
2022-07-08 7:13 ` [PATCH v6 00/13] GLIBC LoongArch PATCHES Xi Ruoyao
2022-07-08 7:15 ` Xi Ruoyao
2022-07-13 19:55 ` Adhemerval Zanella Netto
2022-07-14 11:33 ` Xi Ruoyao
2022-07-14 12:11 ` Adhemerval Zanella Netto
2022-07-18 13:54 ` Carlos O'Donell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220708065255.2316410-1-caiyinyu@loongson.cn \
--to=caiyinyu@loongson.cn \
--cc=adhemerval.zanella@linaro.or \
--cc=joseph_myers@mentor.com \
--cc=libc-alpha@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).