Add a number of ARM 

svn path=/trunk/; revision=67481
This commit is contained in:
Timo Kreuzer 2015-04-30 21:04:29 +00:00
parent 80217852de
commit 3a25ca3b5c
28 changed files with 410 additions and 33 deletions

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __dtou64
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -10,10 +10,14 @@
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY __dtou64
__assertfail
bx lr
LEAF_END __dtou64
END

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* FILE: lib/sdk/crt/math/arm/__rt_udiv.c
* PURPOSE: Implementation of __rt_udiv
* PROGRAMMER: Timo Kreuzer

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* FILE: lib/sdk/crt/math/arm/__rt_udiv.c
* PURPOSE: Implementation of __rt_udiv
* PROGRAMMER: Timo Kreuzer

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* FILE: lib/sdk/crt/math/arm/__rt_sdiv.c
* PURPOSE: Implementation of __rt_sdiv
* PROGRAMMER: Timo Kreuzer

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __rt_sdiv64
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -12,6 +12,7 @@
IMPORT __rt_sdiv64_worker
/* CODE **********************************************************************/
TEXTAREA
NESTED_ENTRY __rt_sdiv64
@ -30,7 +31,7 @@
Return
/* Move result data into the appropriate registers and return */
ldmia sp!,{r0,r1,r2,r3,pc}
ENTRY_END __rt_sdiv64
NESTED_END __rt_sdiv64
END
/* EOF */

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* FILE: lib/sdk/crt/math/arm/__rt_sdiv_worker.c
* PURPOSE: Implementation of __rt_sdiv_worker
* PROGRAMMER: Timo Kreuzer

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __rt_srsh
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -10,10 +10,14 @@
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY __rt_srsh
__assertfail
bx lr
LEAF_END __rt_srsh
END

View file

@ -1,7 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* FILE: lib/sdk/crt/math/arm/__rt_udiv.c
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __rt_udiv
* PROGRAMMER: Timo Kreuzer
* REFERENCE: http://research.microsoft.com/en-us/um/redmond/projects/invisible/src/crt/md/arm/_div10.s.htm

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __rt_udiv64
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -12,6 +12,7 @@
IMPORT __rt_udiv64_worker
/* CODE **********************************************************************/
TEXTAREA
NESTED_ENTRY __rt_udiv64
@ -30,7 +31,7 @@
Return
/* Move result data into the appropriate registers and return */
ldmia sp!,{r0,r1,r2,r3,pc}
ENTRY_END __rt_udiv64
NESTED_END __rt_udiv64
END
/* EOF */

View file

@ -1,7 +1,6 @@
/*
* COPYRIGHT: BSD, see COPYING.ARM in the top level directory
* PROJECT: ReactOS crt library
* FILE: lib/sdk/crt/math/arm/__rt_udiv64_worker.c
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __rt_udiv64_worker
* PROGRAMMER: Timo Kreuzer
* REFERENCE: http://research.microsoft.com/en-us/um/redmond/projects/invisible/src/crt/md/arm/_div10.s.htm

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of __u64tod
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -10,10 +10,14 @@
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY __u64tod
__assertfail
bx lr
LEAF_END __u64tod
END

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of _controlfp
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY _controlfp
__assertfail
bx lr
LEAF_END _controlfp
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of _fpreset
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY _fpreset
__assertfail
bx lr
LEAF_END _fpreset
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of _logb
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY _logb
__assertfail
bx lr
LEAF_END _logb
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of _statusfp
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY _statusfp
__assertfail
bx lr
LEAF_END _statusfp
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of atan
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY atan
__assertfail
bx lr
LEAF_END atan
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of atan2
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY atan2
__assertfail
bx lr
LEAF_END atan2
END
/* EOF */

View file

@ -0,0 +1,33 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of ceil
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
* Original implementation: dawncrow
* SOURCE: MinGW-w64\mingw-w64-crt\math\ceil.S
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY ceil
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00400000 /* Round towards Plus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr
LEAF_END ceil
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of exp
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY exp
__assertfail
bx lr
LEAF_END exp
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of fabs
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY fabs
__assertfail
bx lr
LEAF_END fabs
END
/* EOF */

View file

@ -1,19 +1,31 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of floor
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
* Original implementation: dawncrow
* SOURCE: MinGW-w64\mingw-w64-crt\math\floor.S
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
#include <ksarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY floor
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00800000 /* Round towards Minus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr
LEAF_END floor
END

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of fmod
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY fmod
__assertfail
bx lr
LEAF_END fmod
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of ldexp
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY ldexp
__assertfail
bx lr
LEAF_END ldexp
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of log
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY log
__assertfail
bx lr
LEAF_END log
END
/* EOF */

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of log10
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -10,10 +10,14 @@
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY log10
__assertfail
bx lr
LEAF_END log10
END

View file

@ -1,6 +1,6 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of pow
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
@ -10,10 +10,14 @@
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY pow
__assertfail
bx lr
LEAF_END pow
END

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of sqrt
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY sqrt
__assertfail
bx lr
LEAF_END sqrt
END
/* EOF */

View file

@ -0,0 +1,24 @@
/*
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
* PROJECT: ReactOS CRT library
* PURPOSE: Implementation of tan
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
*/
/* INCLUDES ******************************************************************/
#include <kxarm.h>
/* CODE **********************************************************************/
TEXTAREA
LEAF_ENTRY tan
__assertfail
bx lr
LEAF_END tan
END
/* EOF */