CryptoPkg/IntrinsicLib: Fix CLANG38 IA32 build problem
authorXiaoyu Lu <xiaoyux.lu@intel.com>
Wed, 5 Jun 2019 05:24:55 +0000 (13:24 +0800)
committerLiming Gao <liming.gao@intel.com>
Thu, 6 Jun 2019 03:01:50 +0000 (11:01 +0800)
commit98d8f194e5a646b25b3390825c92949a76689d75
treed2d0ec51b2bdf93744ab62f0cf8e112f9bc3f328
parentb8993a34ae0069080138536249dc6a72bbd7b696
CryptoPkg/IntrinsicLib: Fix CLANG38 IA32 build problem

When use clang-3.8 to build the NetworkPkg, compiler optimization
may use memcpy for memory copy. For example:

 CryptoPkg/Library/OpensslLib/openssl/ssl/ssl_rsa.c:918: undefined
 reference to `memcpy'`

Compiler optimization is sophisticated, but we can work around it
use __attribute__((__used__)) to informs the compiler that symbol
should be retained in the object file, even if it may be
unreferenced.

Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Dandan Bi <dandan.bi@intel.com>
Signed-off-by: Xiaoyu Lu <xiaoyux.lu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
CryptoPkg/Library/IntrinsicLib/CopyMem.c