From: Harry Liebel Date: Wed, 20 Aug 2014 21:55:45 +0000 (+0000) Subject: StdLib/LibC: Fix ARM symbol problems X-Git-Tag: edk2-stable201903~11137 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=1bc81f40096526647ce5c74dadea42d2ab9363f5 StdLib/LibC: Fix ARM symbol problems StdLibPrivateInternalFiles: Add AArch64 support Disable 'memcpy' symbol for ARM in LibC. It is already provided by the ARM compiler intrinsics library. Add missing 'strtold' symbol. Use the same fallback as IPF for now. Use Include definitions as provided by ARM version. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Harry Liebel Reviewed-By: Olivier Martin Reviewed-By: Daryl McDaniel git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15858 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/StdLib/LibC/String/Copying.c b/StdLib/LibC/String/Copying.c index 18498d6f87..e27519e24c 100644 --- a/StdLib/LibC/String/Copying.c +++ b/StdLib/LibC/String/Copying.c @@ -19,11 +19,12 @@ #include #include -/** Do not define memcpy for IPF+GCC builds. +/** Do not define memcpy for IPF+GCC or ARM+GCC builds. For IPF, using a GCC compiler, the memcpy function is converted to CopyMem by objcpy during build. + For ARM, the memcpy function is provided by the CompilerIntrinsics library. **/ -#if !(defined(MDE_CPU_IPF) && defined(__GNUC__)) +#if !((defined(MDE_CPU_IPF) || defined(MDE_CPU_ARM)) && defined(__GNUC__)) /** The memcpy function copies n characters from the object pointed to by s2 into the object pointed to by s1. diff --git a/StdLib/LibC/gdtoa/gdtoa.inf b/StdLib/LibC/gdtoa/gdtoa.inf index fbe3ac1b63..48b7df403f 100644 --- a/StdLib/LibC/gdtoa/gdtoa.inf +++ b/StdLib/LibC/gdtoa/gdtoa.inf @@ -44,6 +44,7 @@ [Sources.ARM] strtof.c + Ipf/strtold.c [Sources] strtod.c # Public interfaces diff --git a/StdLibPrivateInternalFiles/DoNotUse.dec b/StdLibPrivateInternalFiles/DoNotUse.dec index 1b9bdbdbe4..da6061b720 100644 --- a/StdLibPrivateInternalFiles/DoNotUse.dec +++ b/StdLibPrivateInternalFiles/DoNotUse.dec @@ -33,3 +33,7 @@ [Includes.ARM] Include/Arm + +[Includes.AARCH64] + # Use the ARM headers for now. + Include/Arm