From 29552a8cd5291fb2a4e59c9d2ccc7581aecd9cf0 Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Sat, 11 Apr 2015 12:44:55 +0000 Subject: [PATCH] [CRT] Add asm stubs for some ARM math functions svn path=/trunk/; revision=67161 --- reactos/lib/sdk/crt/crt.cmake | 12 ++++++++++++ reactos/lib/sdk/crt/libcntpr.cmake | 12 ++++++++++++ reactos/lib/sdk/crt/math/arm/__dtou64.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/__rt_sdiv.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/__rt_sdiv64.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/__rt_udiv.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/__rt_udiv64.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/__u64tod.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/floor.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/log10.s | 20 ++++++++++++++++++++ reactos/lib/sdk/crt/math/arm/pow.s | 20 ++++++++++++++++++++ 11 files changed, 204 insertions(+) create mode 100644 reactos/lib/sdk/crt/math/arm/__dtou64.s create mode 100644 reactos/lib/sdk/crt/math/arm/__rt_sdiv.s create mode 100644 reactos/lib/sdk/crt/math/arm/__rt_sdiv64.s create mode 100644 reactos/lib/sdk/crt/math/arm/__rt_udiv.s create mode 100644 reactos/lib/sdk/crt/math/arm/__rt_udiv64.s create mode 100644 reactos/lib/sdk/crt/math/arm/__u64tod.s create mode 100644 reactos/lib/sdk/crt/math/arm/floor.s create mode 100644 reactos/lib/sdk/crt/math/arm/log10.s create mode 100644 reactos/lib/sdk/crt/math/arm/pow.s diff --git a/reactos/lib/sdk/crt/crt.cmake b/reactos/lib/sdk/crt/crt.cmake index 4732d9ac60b..adec403a14f 100644 --- a/reactos/lib/sdk/crt/crt.cmake +++ b/reactos/lib/sdk/crt/crt.cmake @@ -474,6 +474,18 @@ elseif(ARCH STREQUAL "amd64") list(APPEND CRT_ASM_SOURCE except/amd64/cpp.s) endif() +elseif(ARCH STREQUAL "arm") + list(APPEND CRT_ASM_SOURCE + math/arm/floor.s + math/arm/log10.s + math/arm/pow.s + math/arm/__dtou64.s + math/arm/__u64tod.s + math/arm/__rt_sdiv.s + math/arm/__rt_sdiv64.s + math/arm/__rt_udiv.s + math/arm/__rt_udiv64.s + ) endif() if(NOT ARCH STREQUAL "i386") diff --git a/reactos/lib/sdk/crt/libcntpr.cmake b/reactos/lib/sdk/crt/libcntpr.cmake index 6477dfeea38..4b63e1c5b5d 100644 --- a/reactos/lib/sdk/crt/libcntpr.cmake +++ b/reactos/lib/sdk/crt/libcntpr.cmake @@ -133,6 +133,18 @@ elseif(ARCH STREQUAL "amd64") except/amd64/ehandler.c math/cos.c math/sin.c) +elseif(ARCH STREQUAL "arm") + list(APPEND LIBCNTPR_ASM_SOURCE + math/arm/floor.s + math/arm/log10.s + math/arm/pow.s + math/arm/__dtou64.s + math/arm/__u64tod.s + math/arm/__rt_sdiv.s + math/arm/__rt_sdiv64.s + math/arm/__rt_udiv.s + math/arm/__rt_udiv64.s + ) endif() if(ARCH STREQUAL "i386") diff --git a/reactos/lib/sdk/crt/math/arm/__dtou64.s b/reactos/lib/sdk/crt/math/arm/__dtou64.s new file mode 100644 index 00000000000..8cfed7b0280 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__dtou64.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __dtou64 + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __dtou64 + + LEAF_END __dtou64 + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/__rt_sdiv.s b/reactos/lib/sdk/crt/math/arm/__rt_sdiv.s new file mode 100644 index 00000000000..e7adc38209f --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__rt_sdiv.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __rt_sdiv + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __rt_sdiv + + LEAF_END __rt_sdiv + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/__rt_sdiv64.s b/reactos/lib/sdk/crt/math/arm/__rt_sdiv64.s new file mode 100644 index 00000000000..c6167831ec9 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__rt_sdiv64.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __rt_sdiv64 + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __rt_sdiv64 + + LEAF_END __rt_sdiv64 + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/__rt_udiv.s b/reactos/lib/sdk/crt/math/arm/__rt_udiv.s new file mode 100644 index 00000000000..9a14a8b348c --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__rt_udiv.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __rt_udiv + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __rt_udiv + + LEAF_END __rt_udiv + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/__rt_udiv64.s b/reactos/lib/sdk/crt/math/arm/__rt_udiv64.s new file mode 100644 index 00000000000..3c7e8acb295 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__rt_udiv64.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __rt_udiv64 + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __rt_udiv64 + + LEAF_END __rt_udiv64 + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/__u64tod.s b/reactos/lib/sdk/crt/math/arm/__u64tod.s new file mode 100644 index 00000000000..df06352cc4e --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/__u64tod.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of __u64tod + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY __u64tod + + LEAF_END __u64tod + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/floor.s b/reactos/lib/sdk/crt/math/arm/floor.s new file mode 100644 index 00000000000..1a94834eb88 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/floor.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of floor + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY floor + + LEAF_END floor + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/log10.s b/reactos/lib/sdk/crt/math/arm/log10.s new file mode 100644 index 00000000000..a15151ae4f5 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/log10.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of log10 + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY log10 + + LEAF_END log10 + + END +/* EOF */ diff --git a/reactos/lib/sdk/crt/math/arm/pow.s b/reactos/lib/sdk/crt/math/arm/pow.s new file mode 100644 index 00000000000..6df1cc99055 --- /dev/null +++ b/reactos/lib/sdk/crt/math/arm/pow.s @@ -0,0 +1,20 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * PURPOSE: Implementation of pow + * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include + +/* CODE **********************************************************************/ + TEXTAREA + + LEAF_ENTRY pow + + LEAF_END pow + + END +/* EOF */