First public contribution.
1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "ARM EABI LICENCE.txt"
5 // which accompanies this distribution, and is available
6 // in kernel/eka/compsupp.
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
18 // Call our implementations of memcpy/move/set/clr rather than the ARM supplied
21 // Note that the AEABI switched the order of arg2 and arg3 to save an intruction
22 // when calling 'memset' from 'memclr'.
25 // void __aeabi_memset8(TAny* aTrg, unsigned int aLength, TInt aValue);
26 // void __aeabi_memset4(TAny* aTrg, unsigned int aLength, TInt aValue);
27 // void __aeabi_memset(TAny* aTrg, unsigned int aLength, TInt aValue);
29 extern "C" __NAKED__ void make_mem_functions_call_euser_versions()
31 asm(".global __aeabi_memset8 ");
32 asm("__aeabi_memset8: ");
33 asm(".global __aeabi_memset4 ");
34 asm("__aeabi_memset4: ");
35 asm(".global __aeabi_memset ");
36 asm("__aeabi_memset: ");
42 asm(".global __aeabi_memclr8 ");
43 asm("__aeabi_memclr8: ");
44 asm(".global __aeabi_memclr4 ");
45 asm("__aeabi_memclr4: ");
46 asm(".global __aeabi_memclr ");
47 asm("__aeabi_memclr: ");
50 asm(".global __aeabi_memcpy8 ");
51 asm("__aeabi_memcpy8: ");
52 asm(".global __aeabi_memcpy4 ");
53 asm("__aeabi_memcpy4: ");
54 asm(".global __aeabi_memcpy ");
55 asm("__aeabi_memcpy: ");
58 asm(".global __aeabi_memmove8 ");
59 asm("__aeabi_memmove8: ");
60 asm(".global __aeabi_memmove4 ");
61 asm("__aeabi_memmove4: ");
62 asm(".global __aeabi_memmove ");
63 asm("__aeabi_memmove: ");