<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/MdePkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf, branch master</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2026-06-08T08:40:19+00:00</updated>
<entry>
<title>MdePkg/CompilerIntrinsicsLib: Add LoongArch64 __ashlti3</title>
<updated>2026-06-08T08:40:19+00:00</updated>
<author>
<name>zhubo</name>
<email>zhubo@loongson.cn</email>
</author>
<published>2026-05-28T11:52:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=cfc02314accefe13e63f753ff44cb2477d20525d'/>
<id>urn:sha1:cfc02314accefe13e63f753ff44cb2477d20525d</id>
<content type='text'>
GCC may emit a call to __ashlti3 for 128-bit left shifts when
compiling code that uses unsigned __int128, such as OpenSSL Curve448
code in CryptoPkg. The LoongArch64 firmware build does not link against
libgcc, so provide the helper from CompilerIntrinsicsLib.

Implement __ashlti3 using the LoongArch64 ABI: the low and high 64-bit
halves are passed in $a0 and $a1, the shift count is passed in $a2, and
the result is returned in $a0 and $a1.

Cc: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Chao Li &lt;lichao@loongson.cn&gt;
Signed-off-by: zhubo &lt;zhubo@loongson.cn&gt;
</content>
</entry>
<entry>
<title>MdePkg: Remove ARM32 Support from CompilerIntrinsicsLib</title>
<updated>2025-09-25T22:04:10+00:00</updated>
<author>
<name>Oliver Smith-Denny</name>
<email>osde@microsoft.com</email>
</author>
<published>2025-09-15T21:15:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=bc31103006cd468ca604f50c18cca7d73be27655'/>
<id>urn:sha1:bc31103006cd468ca604f50c18cca7d73be27655</id>
<content type='text'>
edk2 is dropping support for the ARM32 architecture. This
commit removes ARM32 code from CompilerIntrinsicsLib.

Signed-off-by: Oliver Smith-Denny &lt;osde@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Move CompilerIntrinsicsLib from ArmPkg</title>
<updated>2024-09-12T19:36:59+00:00</updated>
<author>
<name>Oliver Smith-Denny</name>
<email>osde@linux.microsoft.com</email>
</author>
<published>2024-08-05T17:25:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8f74b95a21cf106fa4eb4932e22b404c57297ba2'/>
<id>urn:sha1:8f74b95a21cf106fa4eb4932e22b404c57297ba2</id>
<content type='text'>
As per the emailed RFC in
https://edk2.groups.io/g/devel/topic/rfc_move/107675828,
this patch moves CompilerIntrinsicsLib from ArmPkg to
MdePkg as this library provides compiler intrinsics, which
are industry standard.

This aligns with the goal of integrating ArmPkg into existing
packages: https://bugzilla.tianocore.org/show_bug.cgi?id=4121.

The newly placed CompilerIntrinsicsLib is added to MdeLibs.dsc.inc
as every DSC that builds ARM/AARCH64 needs this library added. The
old location is removed from every DSC in edk2 in this commit also
to not break bisectability with minimal hoop jumping.

Continuous-integration-options: PatchCheck.ignore-multi-package

Signed-off-by: Oliver Smith-Denny &lt;osde@linux.microsoft.com&gt;
</content>
</entry>
</feed>
