From patchwork Wed Aug 10 15:17:53 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 73665 Delivered-To: patch@linaro.org Received: by 10.140.29.52 with SMTP id a49csp456128qga; Wed, 10 Aug 2016 08:19:05 -0700 (PDT) X-Received: by 10.98.47.132 with SMTP id v126mr8185494pfv.152.1470842344988; Wed, 10 Aug 2016 08:19:04 -0700 (PDT) Return-Path: Received: from ml01.01.org (ml01.01.org. [198.145.21.10]) by mx.google.com with ESMTPS id gc14si48873951pac.142.2016.08.10.08.19.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 10 Aug 2016 08:19:04 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) client-ip=198.145.21.10; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE dis=NONE) header.from=linaro.org Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 6330C1A1E2D; Wed, 10 Aug 2016 08:18:56 -0700 (PDT) X-Original-To: edk2-devel@lists.01.org Delivered-To: edk2-devel@lists.01.org Received: from mail-wm0-x236.google.com (mail-wm0-x236.google.com [IPv6:2a00:1450:400c:c09::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 733141A1E2C for ; Wed, 10 Aug 2016 08:18:54 -0700 (PDT) Received: by mail-wm0-x236.google.com with SMTP id i5so111342700wmg.0 for ; Wed, 10 Aug 2016 08:18:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=xtfy4yqsTJpLsMdEa0NQ4zXo5kfhVGS16ujm3EZdBAU=; b=cg2a+ONBDbgsSQZc1cPe+fQkjUtTjAO/fiAKnh68HXuRLMJmYw/8C0z+9NThHU4A7Q xIgRgfpSScMx6en+f/aIZDpatr+x6b+ANJ5aY4IlQ63C0wVNlQk9F4nP2ppJSkQ21U0P QqGcdSOTdUKB8jnldanGxGT/hAqzaS8h54u9w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=xtfy4yqsTJpLsMdEa0NQ4zXo5kfhVGS16ujm3EZdBAU=; b=NHoVt55LpdGYS6RC2pBX6kI5IR3XHSi2MC1O/igBVebAqNUGVRCSDOVrvRu1L5hD9h 9avKDvjHlPyNVqmsCtOpI7mPrqwTfPLm6M4kq0pCSpoG83cN6hcwO4pwq4jBfPKY7XGL XhIPe3DfZBCgF4hoUvSb2IrO+2PjdMDsTF4DX7tkEpV2L8p64ME9fLwC5cRILOlj3/LT cpmIzDKp/tT8Jlhk3ehzo0D5I9v3Tqe7yi1UrPNjTzgUlekxBJ6TD8w//iWMOxf9ed6H b7Nn9oNYAhWNO6f+OtS+yejtn4F7mFJnFs7+Vi5bvz7nPj1xZiQ8FF3qeHz92n/rEIHh GYcA== X-Gm-Message-State: AEkoouusX8X/q8WXz6nbpqvUgjneRX8LO+Fq4zvhTQCK5Lcv0RS5/yasz07udKSo0OORAvGU X-Received: by 10.28.43.129 with SMTP id r123mr4184815wmr.27.1470842332808; Wed, 10 Aug 2016 08:18:52 -0700 (PDT) Received: from localhost.localdomain (46.red-81-37-107.dynamicip.rima-tde.net. [81.37.107.46]) by smtp.gmail.com with ESMTPSA id c16sm8908374wme.4.2016.08.10.08.18.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 10 Aug 2016 08:18:52 -0700 (PDT) From: Ard Biesheuvel To: edk2-devel@lists.01.org, leif.lindholm@linaro.org, eugene@hp.com Date: Wed, 10 Aug 2016 17:17:53 +0200 Message-Id: <1470842282-8415-18-git-send-email-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1470842282-8415-1-git-send-email-ard.biesheuvel@linaro.org> References: <1470842282-8415-1-git-send-email-ard.biesheuvel@linaro.org> Subject: [edk2] [PATCH 17/26] ArmPkg/CompilerIntrinsicsLib: switch to ASM_FUNC() asm macro X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lersek@redhat.com, Ard Biesheuvel MIME-Version: 1.0 Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" Annotate functions with ASM_FUNC() so that they are emitted into separate sections. Note that in some cases, various entry points refer to different parts of the same routine, so in those cases, the files have been left untouched. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel --- ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S | 10 ++-------- ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.S | 13 ++++--------- ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S | 7 ++----- ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S | 7 ++----- ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S | 8 ++------ ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S | 8 +++----- ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S | 8 +++----- ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S | 8 +++----- ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S | 9 +++------ ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S | 7 +++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S | 7 +++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S | 6 ++---- ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S | 6 ++---- 26 files changed, 60 insertions(+), 122 deletions(-) -- 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S b/ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S index 66102da14b6a..4dd6cf207754 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S @@ -26,16 +26,10 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - -.text -.align 2 - - -GCC_ASM_EXPORT(memcpy) - +#include // Taken from Newlib BSD implementation. -ASM_PFX(memcpy): +ASM_FUNC(memcpy) // Copy dst to x6, so we can preserve return value. mov x6, x0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S index 74960b1df185..a68b60cf0c96 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__ashldi3) +#include -ASM_PFX(__ashldi3): +ASM_FUNC(__ashldi3) cmp r2, #31 bls L2 cmp r2, #63 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S index 3cee2c1085d8..6d004a553fa6 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__ashrdi3) +#include -ASM_PFX(__ashrdi3): +ASM_FUNC(__ashrdi3) cmp r2, #31 bls L2 cmp r2, #63 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S index 4cef26575712..8ebf65bc8c6a 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__clzsi2) +#include -ASM_PFX(__clzsi2): +ASM_FUNC(__clzsi2) @ frame_needed = 1, uses_anonymous_args = 0 stmfd sp!, {r7, lr} add r7, sp, #0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S index 108072eef720..ea957fb198eb 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__ctzsi2) +#include -ASM_PFX(__ctzsi2): +ASM_FUNC(__ctzsi2) uxth r3, r0 cmp r3, #0 moveq ip, #16 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.S index faf70dbf4598..277f4718880f 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/div.S @@ -12,12 +12,7 @@ # #------------------------------------------------------------------------------ -.text -.align 2 -GCC_ASM_EXPORT(__aeabi_uidiv) -GCC_ASM_EXPORT(__aeabi_uidivmod) -GCC_ASM_EXPORT(__aeabi_idiv) -GCC_ASM_EXPORT(__aeabi_idivmod) +#include # AREA Math, CODE, READONLY @@ -34,11 +29,11 @@ ASM_PFX(__aeabi_uidiv): ASM_PFX(__aeabi_uidivmod): rsbs r12, r1, r0, LSR #4 mov r2, #0 - bcc ASM_PFX(__arm_div4) + bcc .L__arm_div4 rsbs r12, r1, r0, LSR #8 - bcc ASM_PFX(__arm_div8) + bcc .L__arm_div8 mov r3, #0 - b ASM_PFX(__arm_div_large) + b .L__arm_div_large # #INT32 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S index 23c8e8ffbf68..ce55951d3cf7 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__divdi3) +#include -ASM_PFX(__divdi3): +ASM_FUNC(__divdi3) @ args = 0, pretend = 0, frame = 0 @ frame_needed = 1, uses_anonymous_args = 0 stmfd sp!, {r4, r5, r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S index d585146878d0..835f1c51718f 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__divsi3) +#include -ASM_PFX(__divsi3): +ASM_FUNC(__divsi3) eor r3, r0, r0, asr #31 eor r2, r1, r1, asr #31 stmfd sp!, {r4, r5, r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S index e7a05de58913..98632cf445cc 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S @@ -12,10 +12,7 @@ // //------------------------------------------------------------------------------ - - .text - .align 2 - GCC_ASM_EXPORT(__aeabi_ldivmod) +#include // // A pair of (unsigned) long longs is returned in {{r0, r1}, {r2, r3}}, @@ -29,7 +26,7 @@ // )// // -ASM_PFX(__aeabi_ldivmod): +ASM_FUNC(__aeabi_ldivmod) push {r4,lr} asrs r4,r1,#1 eor r4,r4,r3,LSR #1 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S index ba8ab1cf5870..f72aca97c137 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S @@ -12,10 +12,7 @@ # #------------------------------------------------------------------------------ - -.text -.align 2 -GCC_ASM_EXPORT(__aeabi_llsl) +#include # #VOID @@ -26,7 +23,7 @@ GCC_ASM_EXPORT(__aeabi_llsl) # IN UINT32 Size # ); # -ASM_PFX(__aeabi_llsl): +ASM_FUNC(__aeabi_llsl) subs r3,r2,#0x20 bpl 1f rsb r3,r2,#0x20 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S index 3d2c106270e7..6908bd6b7c08 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S @@ -12,12 +12,8 @@ # #------------------------------------------------------------------------------ +#include -.text -.align 2 -GCC_ASM_EXPORT(__aeabi_llsr) - -# #VOID #EFIAPI #__aeabi_llsr ( @@ -26,7 +22,7 @@ GCC_ASM_EXPORT(__aeabi_llsr) # IN UINT32 Size # ); # -ASM_PFX(__aeabi_llsr): +ASM_FUNC(__aeabi_llsr) subs r3,r2,#0x20 bpl 1f rsb r3,r2,#0x20 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S index a3133206a5df..e17391184a74 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__lshrdi3) +#include -ASM_PFX(__lshrdi3): +ASM_FUNC(__lshrdi3) cmp r2, #31 bls L2 cmp r2, #63 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S index 79f95b007d80..d10860d80689 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S @@ -12,9 +12,7 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT (memmove) +#include # VOID # EFIAPI @@ -23,7 +21,7 @@ # IN CONST VOID *Source, # IN UINT32 Size # ); -ASM_PFX(memmove): +ASM_FUNC(memmove) CMP r2, #0 BXEQ lr CMP r0, r1 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S index 7b618eb06bdb..c8c87d8e23f9 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__moddi3) +#include -ASM_PFX(__moddi3): +ASM_FUNC(__moddi3) stmfd sp!, {r4, r5, r7, lr} mov r4, r1, asr #31 add r7, sp, #8 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S index 047501e929bd..29e2df92b02f 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__modsi3) +#include -ASM_PFX(__modsi3): +ASM_FUNC(__modsi3) stmfd sp!, {r4, r5, r7, lr} add r7, sp, #8 mov r5, r0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S index dff61ef7a44b..a6689fcee958 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__muldi3) +#include -ASM_PFX(__muldi3): +ASM_FUNC(__muldi3) stmfd sp!, {r4, r5, r6, r7, lr} add r7, sp, #12 stmfd sp!, {r8, r10, r11} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S index 09c9004ddfff..6de2d4513c82 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S @@ -13,13 +13,11 @@ #**/ # -.text -.syntax unified -.p2align 2 +#include -GCC_ASM_EXPORT(__switch16) +.syntax unified -ASM_PFX(__switch16): +ASM_FUNC(__switch16) ldrh ip, [lr, #-1] cmp r0, ip add r0, lr, r0, lsl #1 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S index 5b8fd34733cd..f4b3343a787e 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S @@ -13,13 +13,11 @@ #**/ # -.text -.syntax unified -.p2align 2 +#include -GCC_ASM_EXPORT(__switch32) +.syntax unified -ASM_PFX(__switch32): +ASM_FUNC(__switch32) ldr ip, [lr, #-1] cmp r0, ip add r0, lr, r0, lsl #2 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S index 871c7c05f7a4..7f84b16c7917 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S @@ -13,13 +13,11 @@ #**/ # -.text -.syntax unified -.p2align 2 +#include -GCC_ASM_EXPORT(__switch8) +.syntax unified -ASM_PFX(__switch8): +ASM_FUNC(__switch8) ldrb ip, [lr, #-1] cmp r0, ip ldrsbcc r0, [lr, r0] diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S index 5849998eaf32..7c94dd4fad27 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S @@ -13,14 +13,11 @@ #**/ # -.text -.syntax unified -.p2align 2 - -GCC_ASM_EXPORT(__switchu8) +#include +.syntax unified -ASM_PFX(__switchu8): +ASM_FUNC(__switchu8) ldrb ip,[lr,#-1] cmp r0,ip ldrbcc r0,[lr,r0] diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S index da57423bf1e3..472bbc10563c 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__ucmpdi2) +#include -ASM_PFX(__ucmpdi2): +ASM_FUNC(__ucmpdi2) stmfd sp!, {r4, r5, r8, lr} cmp r1, r3 mov r8, r0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S index cbfb12735003..e173d4ada786 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__udivdi3) +#include -ASM_PFX(__udivdi3): +ASM_FUNC(__udivdi3) stmfd sp!, {r7, lr} add r7, sp, #0 sub sp, sp, #8 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S index 42f4ba404730..b87872d39e07 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S @@ -12,12 +12,11 @@ # #------------------------------------------------------------------------------ - .text +#include + .syntax unified - .align 2 - GCC_ASM_EXPORT(__udivmoddi4) -ASM_PFX(__udivmoddi4): +ASM_FUNC(__udivmoddi4) stmfd sp!, {r4, r5, r6, r7, lr} add r7, sp, #12 stmfd sp!, {r10, r11} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S index 080aa51c3c54..b70d1d7f0322 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S @@ -12,12 +12,11 @@ # #------------------------------------------------------------------------------ - .text +#include + .syntax unified - .align 2 - GCC_ASM_EXPORT(__udivsi3) -ASM_PFX(__udivsi3): +ASM_FUNC(__udivsi3) cmp r1, #0 cmpne r0, #0 stmfd sp!, {r4, r5, r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S index 6b718a657474..3edff1b715a1 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__umoddi3) +#include -ASM_PFX(__umoddi3): +ASM_FUNC(__umoddi3) stmfd sp!, {r7, lr} add r7, sp, #0 sub sp, sp, #16 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S index 76c26beb0b19..2a300601d0f5 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S @@ -12,11 +12,9 @@ # #------------------------------------------------------------------------------ - .text - .align 2 - GCC_ASM_EXPORT(__umodsi3) +#include -ASM_PFX(__umodsi3): +ASM_FUNC(__umodsi3) stmfd sp!, {r4, r5, r7, lr} add r7, sp, #8 mov r5, r0