Author: tkreuzer Date: Sun May 10 21:04:27 2015 New Revision: 67641
URL: http://svn.reactos.org/svn/reactos?rev=67641&view=rev Log: [CRT/RTL/NTOSKRNL] Add new ARM files to build and improve the stubs a bit
Modified: trunk/reactos/lib/rtl/CMakeLists.txt trunk/reactos/lib/sdk/crt/crt.cmake trunk/reactos/lib/sdk/crt/except/arm/__jump_unwind.s trunk/reactos/lib/sdk/crt/except/arm/_abnormal_termination.s trunk/reactos/lib/sdk/crt/except/arm/_except_handler2.s trunk/reactos/lib/sdk/crt/except/arm/_except_handler3.s trunk/reactos/lib/sdk/crt/except/arm/_global_unwind2.s trunk/reactos/lib/sdk/crt/except/arm/_local_unwind2.s trunk/reactos/lib/sdk/crt/except/arm/chkstk_asm.s trunk/reactos/lib/sdk/crt/except/arm/chkstk_ms.s trunk/reactos/lib/sdk/crt/libcntpr.cmake trunk/reactos/lib/sdk/crt/math/arm/floor.s trunk/reactos/lib/sdk/crt/msvcrtex.cmake trunk/reactos/ntoskrnl/ntos.cmake
Modified: trunk/reactos/lib/rtl/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/CMakeLists.txt?rev=... ============================================================================== --- trunk/reactos/lib/rtl/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/CMakeLists.txt [iso-8859-1] Sun May 10 21:04:27 2015 @@ -93,6 +93,7 @@ elseif(ARCH STREQUAL "arm") list(APPEND ASM_SOURCE arm/debug_asm.S) list(APPEND SOURCE + arm/except.c byteswap.c mem.c) elseif(ARCH STREQUAL "powerpc")
Modified: trunk/reactos/lib/sdk/crt/crt.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/crt.cmake?rev=6... ============================================================================== --- trunk/reactos/lib/sdk/crt/crt.cmake [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/crt.cmake [iso-8859-1] Sun May 10 21:04:27 2015 @@ -475,21 +475,54 @@ except/amd64/cpp.s) endif() elseif(ARCH STREQUAL "arm") - list(APPEND LIBCNTPR_SOURCE + list(APPEND CRT_SOURCE + except/arm/ehandler.c + math/fabsf.c math/arm/__rt_sdiv.c math/arm/__rt_sdiv64_worker.c math/arm/__rt_udiv.c math/arm/__rt_udiv64_worker.c ) list(APPEND CRT_ASM_SOURCE + except/arm/_abnormal_termination.s + except/arm/_except_handler2.s + except/arm/_except_handler3.s + except/arm/_global_unwind2.s + except/arm/_local_unwind2.s + except/arm/chkstk_asm.s + float/arm/_clearfp.s + float/arm/_controlfp.s + float/arm/_fpreset.s + float/arm/_statusfp.s + math/arm/atan.s + math/arm/atan2.s + math/arm/ceil.s + math/arm/exp.s + math/arm/fabs.s + math/arm/fmod.s math/arm/floor.s + math/arm/ldexp.s + math/arm/log.s math/arm/log10.s math/arm/pow.s + math/arm/sqrt.s + math/arm/tan.s + math/arm/_logb.s + math/arm/__dtoi64.s math/arm/__dtou64.s + math/arm/__i64tod.s + math/arm/__i64tos.s math/arm/__u64tod.s + math/arm/__u64tos.s math/arm/__rt_sdiv64.s + math/arm/__rt_srsh.s math/arm/__rt_udiv64.s + setjmp/arm/setjmp.s ) + if(MSVC) + list(APPEND CRT_ASM_SOURCE + except/arm/cpp.s) + endif() endif()
if(NOT ARCH STREQUAL "i386")
Modified: trunk/reactos/lib/sdk/crt/except/arm/__jump_unwind.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/__ju... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/__jump_unwind.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/__jump_unwind.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,7 +1,7 @@ /* - * COPYRIGHT: See COPYING in the top level directory + * COPYRIGHT: BSD - See COPYING.ARM in the top level directory * PROJECT: ReactOS CRT library - * PURPOSE: Implementation of __jmp_unwind + * PURPOSE: Implementation of __jump_unwind * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -12,10 +12,10 @@ /* CODE **********************************************************************/ TEXTAREA
- LEAF_ENTRY __jmp_unwind + LEAF_ENTRY __jump_unwind __assertfail bx lr - LEAF_END __jmp_unwind + LEAF_END __jump_unwind
END /* EOF */
Modified: trunk/reactos/lib/sdk/crt/except/arm/_abnormal_termination.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/_abn... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/_abnormal_termination.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/_abnormal_termination.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _abnormal_termination - * FILE: lib/sdk/crt/except/arm/_abnormal_termination.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -14,7 +13,7 @@ TEXTAREA
LEAF_ENTRY _abnormal_termination - DCD 0xdefc // __assertfail + __assertfail bx lr LEAF_END _abnormal_termination
Modified: trunk/reactos/lib/sdk/crt/except/arm/_except_handler2.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/_exc... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/_except_handler2.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/_except_handler2.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _except_handler2 - * FILE: lib/sdk/crt/except/arm/_except_handler2.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -14,7 +13,7 @@ TEXTAREA
LEAF_ENTRY _except_handler2 - DCD 0xdefc // __assertfail + __assertfail bx lr LEAF_END _except_handler2
Modified: trunk/reactos/lib/sdk/crt/except/arm/_except_handler3.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/_exc... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/_except_handler3.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/_except_handler3.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _except_handler3 - * FILE: lib/sdk/crt/except/arm/_except_handler3.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -14,7 +13,7 @@ TEXTAREA
LEAF_ENTRY _except_handler3 - DCD 0xdefc // __assertfail + __assertfail bx lr LEAF_END _except_handler3
Modified: trunk/reactos/lib/sdk/crt/except/arm/_global_unwind2.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/_glo... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/_global_unwind2.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/_global_unwind2.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _global_unwind2 - * FILE: lib/sdk/crt/except/arm/_global_unwind2.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -14,7 +13,7 @@ TEXTAREA
LEAF_ENTRY _global_unwind2 - DCD 0xdefc // __assertfail + __assertfail bx lr LEAF_END _global_unwind2
Modified: trunk/reactos/lib/sdk/crt/except/arm/_local_unwind2.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/_loc... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/_local_unwind2.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/_local_unwind2.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _local_unwind2 - * FILE: lib/sdk/crt/except/arm/_local_unwind2.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) */
@@ -14,7 +13,7 @@ TEXTAREA
LEAF_ENTRY _local_unwind2 - DCD 0xdefc // __assertfail + __assertfail bx lr LEAF_END _local_unwind2
Modified: trunk/reactos/lib/sdk/crt/except/arm/chkstk_asm.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/chks... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/chkstk_asm.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/chkstk_asm.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _chkstk and _alloca_probe - * FILE: lib/sdk/crt/except/arm/chkstk_asm.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) * Yuntian Zhang (yuntian.zh@gmail.com) */ @@ -14,15 +13,13 @@ /* CODE **********************************************************************/ TEXTAREA
-MsgUnimplemented ASCII "Unimplemented", CR, LF, NUL - LEAF_ENTRY __chkstk - UNIMPLEMENTED chkstk + __assertfail bx lr LEAF_END __chkstk
LEAF_ENTRY __alloca_probe - UNIMPLEMENTED alloca_probe + __assertfail bx lr LEAF_END __alloca_probe
Modified: trunk/reactos/lib/sdk/crt/except/arm/chkstk_ms.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/except/arm/chks... ============================================================================== --- trunk/reactos/lib/sdk/crt/except/arm/chkstk_ms.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/except/arm/chkstk_ms.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -1,8 +1,7 @@ /* - * 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 librariy * PURPOSE: Implementation of _chkstk and _alloca_probe - * FILE: lib/sdk/crt/except/arm/chkstk_ms.s * PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org) * Yuntian Zhang (yuntian.zh@gmail.com) */ @@ -14,15 +13,13 @@ /* CODE **********************************************************************/ TEXTAREA
-MsgUnimplemented ASCII "Unimplemented", CR, LF, NUL - LEAF_ENTRY ___chkstk_ms - UNIMPLEMENTED chkstk_ms + __assertfail bx lr LEAF_END __chkstk_ms
LEAF_ENTRY __alloca_probe - UNIMPLEMENTED alloca_probe + __assertfail bx lr LEAF_END __alloca_probe
Modified: trunk/reactos/lib/sdk/crt/libcntpr.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/libcntpr.cmake?... ============================================================================== --- trunk/reactos/lib/sdk/crt/libcntpr.cmake [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/libcntpr.cmake [iso-8859-1] Sun May 10 21:04:27 2015 @@ -135,19 +135,48 @@ math/sin.c) elseif(ARCH STREQUAL "arm") list(APPEND LIBCNTPR_SOURCE + except/arm/chkstk_asm.s + except/arm/__jump_unwind.s math/arm/__rt_sdiv.c math/arm/__rt_sdiv64_worker.c math/arm/__rt_udiv.c math/arm/__rt_udiv64_worker.c ) list(APPEND LIBCNTPR_ASM_SOURCE + except/arm/_abnormal_termination.s + except/arm/_except_handler2.s + except/arm/_except_handler3.s + except/arm/_global_unwind2.s + except/arm/_local_unwind2.s + except/arm/chkstk_asm.s + except/arm/ehandler.c + float/arm/_clearfp.s + float/arm/_controlfp.s + float/arm/_fpreset.s + float/arm/_statusfp.s + math/arm/atan.s + math/arm/atan2.s + math/arm/ceil.s + math/arm/exp.s + math/arm/fabs.s + math/arm/fmod.s math/arm/floor.s + math/arm/ldexp.s + math/arm/log.s math/arm/log10.s math/arm/pow.s + math/arm/sqrt.s + math/arm/tan.s + math/arm/__dtoi64.s math/arm/__dtou64.s + math/arm/__i64tod.s + math/arm/__i64tos.s math/arm/__u64tod.s + math/arm/__u64tos.s math/arm/__rt_sdiv64.s + math/arm/__rt_srsh.s math/arm/__rt_udiv64.s + setjmp/arm/setjmp.s ) endif()
@@ -178,6 +207,8 @@ string/i386/wcsrchr_asm.s) else() list(APPEND LIBCNTPR_SOURCE + math/cos.c + math/sin.c mem/memchr.c mem/memcpy.c mem/memmove.c
Modified: trunk/reactos/lib/sdk/crt/math/arm/floor.s URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/math/arm/floor.... ============================================================================== --- trunk/reactos/lib/sdk/crt/math/arm/floor.s [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/math/arm/floor.s [iso-8859-1] Sun May 10 21:04:27 2015 @@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/
-#include <ksarm.h> +#include <kxarm.h>
/* CODE **********************************************************************/
Modified: trunk/reactos/lib/sdk/crt/msvcrtex.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/msvcrtex.cmake?... ============================================================================== --- trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] (original) +++ trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] Sun May 10 21:04:27 2015 @@ -64,6 +64,25 @@ list(APPEND MSVCRTEX_ASM_SOURCE except/amd64/chkstk_asm.s except/amd64/chkstk_ms.s) +elseif(ARCH STREQUAL "arm") + list(APPEND MSVCRTEX_SOURCE + math/arm/__rt_sdiv.c + math/arm/__rt_sdiv64_worker.c + math/arm/__rt_udiv.c + math/arm/__rt_udiv64_worker.c + ) + list(APPEND MSVCRTEX_ASM_SOURCE + except/arm/chkstk_asm.s + math/arm/__dtoi64.s + math/arm/__dtou64.s + math/arm/__i64tod.s + math/arm/__i64tos.s + math/arm/__u64tod.s + math/arm/__u64tos.s + math/arm/__rt_sdiv64.s + math/arm/__rt_srsh.s + math/arm/__rt_udiv64.s + ) endif()
if(MSVC)
Modified: trunk/reactos/ntoskrnl/ntos.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ntos.cmake?rev=676... ============================================================================== --- trunk/reactos/ntoskrnl/ntos.cmake [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/ntos.cmake [iso-8859-1] Sun May 10 21:04:27 2015 @@ -327,14 +327,17 @@ ${REACTOS_SOURCE_DIR}/ntoskrnl/ps/amd64/psctx.c) elseif(ARCH STREQUAL "arm") list(APPEND ASM_SOURCE + ${REACTOS_SOURCE_DIR}/ntoskrnl/ex/arm/ioport.s ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/boot.s ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/ctxswtch.s ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/stubs_asm.s ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/trap.s) list(APPEND SOURCE ${REACTOS_SOURCE_DIR}/ntoskrnl/config/arm/cmhardwr.c + ${REACTOS_SOURCE_DIR}/ntoskrnl/kd/arm/kdbg.c ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/cpu.c ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/exp.c + ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/interrupt.c ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/kiinit.c ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/thrdini.c ${REACTOS_SOURCE_DIR}/ntoskrnl/ke/arm/trapc.c