]> git.proxmox.com Git - mirror_edk2.git/commit
ArmPkg/Library/CompilerIntrinsicsLib: Enable VS2017/ARM builds
authorPete Batard <pete@akeo.ie>
Fri, 12 Jan 2018 13:33:29 +0000 (21:33 +0800)
committerLiming Gao <liming.gao@intel.com>
Wed, 7 Feb 2018 01:49:22 +0000 (09:49 +0800)
commite58427e3964e50caf274d4ba84a984f0cdfcd90d
treece08f15e3bf59df342795815d18877f74e41a8b1
parent30939ff2bc43f9cadb098025836f630e1d577147
ArmPkg/Library/CompilerIntrinsicsLib: Enable VS2017/ARM builds

Introduce CRT assembly replacements for __rt_sdiv, __rt_udiv,
__rt_udiv64, __rt_sdiv64, __rt_srsh (by reusing the RVCT code)
as well as memcpy and memset.
For MSFT compatibility, some of the code needs to be explicitly
forced to ARM, and the /oldit assembly flag needs to be added.
Also, while RVCT_ASM_EXPORT macro invocations have been removed,
the replacement code is designed to be as close as possible to
the one that would have been generated if using the macros.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Pete Batard <pete@akeo.ie>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.asm
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.asm
ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.asm
ArmPkg/Library/CompilerIntrinsicsLib/Arm/uldiv.asm
ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
ArmPkg/Library/CompilerIntrinsicsLib/memcpy_ms.c [new file with mode: 0644]
ArmPkg/Library/CompilerIntrinsicsLib/memset_ms.c [new file with mode: 0644]