From 462fcfc5655b490e036572baf27b332a746866a5 Mon Sep 17 00:00:00 2001 From: drahn Date: Wed, 28 Apr 2021 04:38:01 +0000 Subject: [PATCH] riscv64 gdtoa support direct copy from aarch64 constants were rechecked using the qnan.c program. --- lib/libc/arch/riscv64/gdtoa/Makefile.inc | 3 +++ lib/libc/arch/riscv64/gdtoa/arith.h | 6 ++++++ lib/libc/arch/riscv64/gdtoa/gd_qnan.h | 12 ++++++++++++ 3 files changed, 21 insertions(+) create mode 100644 lib/libc/arch/riscv64/gdtoa/Makefile.inc create mode 100644 lib/libc/arch/riscv64/gdtoa/arith.h create mode 100644 lib/libc/arch/riscv64/gdtoa/gd_qnan.h diff --git a/lib/libc/arch/riscv64/gdtoa/Makefile.inc b/lib/libc/arch/riscv64/gdtoa/Makefile.inc new file mode 100644 index 00000000000..f2215dd0407 --- /dev/null +++ b/lib/libc/arch/riscv64/gdtoa/Makefile.inc @@ -0,0 +1,3 @@ +# $OpenBSD: Makefile.inc,v 1.1 2021/04/28 04:38:01 drahn Exp $ + +SRCS+= strtord.c strtorQ.c diff --git a/lib/libc/arch/riscv64/gdtoa/arith.h b/lib/libc/arch/riscv64/gdtoa/arith.h new file mode 100644 index 00000000000..32513b96e90 --- /dev/null +++ b/lib/libc/arch/riscv64/gdtoa/arith.h @@ -0,0 +1,6 @@ +#define IEEE_8087 +#define Arith_Kind_ASL 1 +#define Long int +#define Intcast (int)(long) +#define Double_Align +#define X64_bit_pointers diff --git a/lib/libc/arch/riscv64/gdtoa/gd_qnan.h b/lib/libc/arch/riscv64/gdtoa/gd_qnan.h new file mode 100644 index 00000000000..9593d5c247f --- /dev/null +++ b/lib/libc/arch/riscv64/gdtoa/gd_qnan.h @@ -0,0 +1,12 @@ +#define f_QNAN 0x7fc00000 +#define d_QNAN0 0x0 +#define d_QNAN1 0x7ff80000 +#define ld_QNAN0 0x0 +#define ld_QNAN1 0x0 +#define ld_QNAN2 0x0 +#define ld_QNAN3 0x7fff8000 +#define ldus_QNAN0 0x0 +#define ldus_QNAN1 0x0 +#define ldus_QNAN2 0x0 +#define ldus_QNAN3 0x0 +#define ldus_QNAN4 0x0 -- 2.20.1