From 6af3332a4cbd1ffbc81f74759ef7c5e1a87d2e10 Mon Sep 17 00:00:00 2001 From: Vincent Ren-Wei Chen Date: Tue, 17 Jan 2017 07:31:24 +0100 Subject: nds32: add NPTL/TLS, *context function, libm changes and code cleanup This commit includes following features. 1. Support NPTL/TLS 2. Add libm function which is used to handle FP rounding and excpetions (ex: fclrexcpt,fedisblxcpti,feenablxcpt... ) 3. Add *context function for operating user context (ex: setcontext,getcontext,makecontext... ) 4. Change the return flow from signal handler 5. Cleanup of old code The testsuite only has 2 errors, tst-cpuclock1 and tst-cputimer1, which are related to timing accuracy. (math and locale tests are disabled) Signed-off-by: Vincent Ren-Wei Chen --- libc/sysdeps/linux/nds32/ucontext_i.sym | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 libc/sysdeps/linux/nds32/ucontext_i.sym (limited to 'libc/sysdeps/linux/nds32/ucontext_i.sym') diff --git a/libc/sysdeps/linux/nds32/ucontext_i.sym b/libc/sysdeps/linux/nds32/ucontext_i.sym new file mode 100644 index 000000000..1a5f2e5f3 --- /dev/null +++ b/libc/sysdeps/linux/nds32/ucontext_i.sym @@ -0,0 +1,27 @@ +#include +#include +#include + +-- + +SIG_BLOCK +SIG_SETMASK +_NSIG8 (_NSIG / 8) + +#define ucontext(member) offsetof (ucontext_t, member) +#define mcontext(member) ucontext (uc_mcontext.member) +#define mreg(reg) mcontext (nds32_##reg) + + +UCONTEXT_GREGS mcontext (nds32_r0) +#ifdef __NDS32_ABI_2FP_PLUS__ +UCONTEXT_FDREGS mcontext (fpu.fd_regs) +#endif +UCONTEXT_PC mcontext (nds32_ipc) + + +UCONTEXT_FLAGS ucontext (uc_flags) +UCONTEXT_LINK ucontext (uc_link) +UCONTEXT_STACK ucontext (uc_stack) +UCONTEXT_MCONTEXT ucontext (uc_mcontext) +UCONTEXT_SIGMASK ucontext (uc_sigmask) -- cgit v1.2.3