]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmPkg/CompilerIntrinsicsLib: switch to ASM_FUNC() asm macro
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 10 Aug 2016 12:38:08 +0000 (14:38 +0200)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 11 Aug 2016 10:40:51 +0000 (12:40 +0200)
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 <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
25 files changed:
ArmPkg/Library/CompilerIntrinsicsLib/AArch64/memcpy.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsl.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/memmove.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S
ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S

index 66102da14b6a15465f44d09b896438daa30e125d..4dd6cf2077542e6a2bcafe33ae128d9c29999aba 100644 (file)
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
  */\r
 \r
-\r
-.text\r
-.align 2\r
-\r
-\r
-GCC_ASM_EXPORT(memcpy)\r
-\r
+#include <AsmMacroIoLibV8.h>\r
 \r
 // Taken from Newlib BSD implementation.\r
-ASM_PFX(memcpy):\r
+ASM_FUNC(memcpy)\r
         // Copy dst to x6, so we can preserve return value.\r
         mov     x6, x0\r
 \r
index 74960b1df18580ced62c5835167e1c181450fb73..a68b60cf0c96bb74570c3009795cf7d3105ede30 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__ashldi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__ashldi3):\r
+ASM_FUNC(__ashldi3)\r
   cmp  r2, #31\r
   bls  L2\r
   cmp  r2, #63\r
index 3cee2c1085d8cbf8ea4b2070f849b67151b64b58..6d004a553fa610258a60ffe571bac60280aa4dfd 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__ashrdi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__ashrdi3):\r
+ASM_FUNC(__ashrdi3)\r
   cmp  r2, #31\r
   bls  L2\r
   cmp  r2, #63\r
index 4cef26575712597af1c7c3b9dced5569352944e4..8ebf65bc8c6ac1a0863b338e5f28feb6fcdeff72 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__clzsi2)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__clzsi2):\r
+ASM_FUNC(__clzsi2)\r
   @ frame_needed = 1, uses_anonymous_args = 0\r
   stmfd  sp!, {r7, lr}\r
   add  r7, sp, #0\r
index 108072eef720b9fdddd223cea7480a7c70a496d5..ea957fb198eb10271abab7e84d40c8a7cc9556f2 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__ctzsi2)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__ctzsi2):\r
+ASM_FUNC(__ctzsi2)\r
   uxth  r3, r0\r
   cmp  r3, #0\r
   moveq  ip, #16\r
index 23c8e8ffbf68080979850717849d0f15f04e8cd1..ce55951d3cf759e2136ebf0f6e6b1b1493083ad8 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__divdi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__divdi3):\r
+ASM_FUNC(__divdi3)\r
   @ args = 0, pretend = 0, frame = 0\r
   @ frame_needed = 1, uses_anonymous_args = 0\r
   stmfd  sp!, {r4, r5, r7, lr}\r
index d585146878d0868e0395408dee94afa92d518c50..835f1c51718fe7f7d916ad8177ccf7b44d6cb3b9 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__divsi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__divsi3):\r
+ASM_FUNC(__divsi3)\r
   eor  r3, r0, r0, asr #31\r
   eor  r2, r1, r1, asr #31\r
   stmfd  sp!, {r4, r5, r7, lr}\r
index e7a05de58913804f0851919d5fe6c17b38d2543a..98632cf445ccd502e40a445b62aed308a36a5241 100644 (file)
 //\r
 //------------------------------------------------------------------------------\r
 \r
-\r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__aeabi_ldivmod)\r
+#include <AsmMacroIoLib.h>\r
 \r
 //\r
 // A pair of (unsigned) long longs is returned in {{r0, r1}, {r2, r3}},\r
@@ -29,7 +26,7 @@
 //  )//\r
 //\r
 \r
-ASM_PFX(__aeabi_ldivmod):\r
+ASM_FUNC(__aeabi_ldivmod)\r
     push     {r4,lr}\r
     asrs     r4,r1,#1\r
     eor      r4,r4,r3,LSR #1\r
index ba8ab1cf5870b6d788020288e7d58efac7e4adc3..f72aca97c137b887cb169d1536a1099e43dd654e 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-\r
-.text\r
-.align 2\r
-GCC_ASM_EXPORT(__aeabi_llsl)\r
+#include <AsmMacroIoLib.h>\r
 \r
 #\r
 #VOID\r
@@ -26,7 +23,7 @@ GCC_ASM_EXPORT(__aeabi_llsl)
 # IN  UINT32  Size\r
 # );\r
 #\r
-ASM_PFX(__aeabi_llsl):\r
+ASM_FUNC(__aeabi_llsl)\r
     subs     r3,r2,#0x20\r
     bpl      1f\r
     rsb      r3,r2,#0x20\r
index 3d2c106270e75bd2478d251efe000b3ea7231e95..6908bd6b7c08c315dc448f30c187714101a9d4b4 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
+#include <AsmMacroIoLib.h>\r
 \r
-.text\r
-.align 2\r
-GCC_ASM_EXPORT(__aeabi_llsr)\r
-\r
-#\r
 #VOID\r
 #EFIAPI\r
 #__aeabi_llsr (\r
@@ -26,7 +22,7 @@ GCC_ASM_EXPORT(__aeabi_llsr)
 # IN  UINT32  Size\r
 # );\r
 #\r
-ASM_PFX(__aeabi_llsr):\r
+ASM_FUNC(__aeabi_llsr)\r
     subs     r3,r2,#0x20\r
     bpl      1f\r
     rsb      r3,r2,#0x20\r
index a3133206a5df392ac8e32b03f6570ba4108f17cb..e17391184a7490df8daee7ce774eb66ffa99e9c3 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__lshrdi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__lshrdi3):\r
+ASM_FUNC(__lshrdi3)\r
   cmp  r2, #31\r
   bls  L2\r
   cmp  r2, #63\r
index 79f95b007d80a4355c211d62f0b1cd710a79a2bb..d10860d80689c29bf1da288b09daa115e0521b38 100644 (file)
@@ -12,9 +12,7 @@
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT (memmove)\r
+#include <AsmMacroIoLib.h>\r
 \r
 # VOID\r
 # EFIAPI\r
@@ -23,7 +21,7 @@
 #  IN  CONST VOID    *Source,\r
 #  IN  UINT32        Size\r
 #  );\r
-ASM_PFX(memmove):\r
+ASM_FUNC(memmove)\r
   CMP     r2, #0\r
   BXEQ    lr\r
   CMP     r0, r1\r
index 7b618eb06bdbceab0a634a3ea3fd545f56bb50b3..c8c87d8e23f958a1b51fa53d395d5921d390a958 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__moddi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__moddi3):\r
+ASM_FUNC(__moddi3)\r
   stmfd  sp!, {r4, r5, r7, lr}\r
   mov  r4, r1, asr #31\r
   add  r7, sp, #8\r
index 047501e929bd6d09e6a56485a8c583778bd8f8d4..29e2df92b02f44c010314e4a38174d2c1f520aa6 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__modsi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__modsi3):\r
+ASM_FUNC(__modsi3)\r
   stmfd  sp!, {r4, r5, r7, lr}\r
   add  r7, sp, #8\r
   mov  r5, r0\r
index dff61ef7a44b178492a3996532f2ec0f424b26fc..a6689fcee9580aa8f11bae5d06f61234e3766667 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__muldi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__muldi3):\r
+ASM_FUNC(__muldi3)\r
   stmfd  sp!, {r4, r5, r6, r7, lr}\r
   add  r7, sp, #12\r
   stmfd  sp!, {r8, r10, r11}\r
index 09c9004ddfff9cfcaf14e1f3e1d43d325f27d22a..6de2d4513c82d76c69fee6f1dc17358424b937be 100644 (file)
 #**/\r
 #\r
 \r
-.text\r
-.syntax unified\r
-.p2align 2\r
+#include <AsmMacroIoLib.h>\r
 \r
-GCC_ASM_EXPORT(__switch16)\r
+.syntax unified\r
 \r
-ASM_PFX(__switch16):\r
+ASM_FUNC(__switch16)\r
     ldrh      ip, [lr, #-1]\r
     cmp       r0, ip\r
     add       r0, lr, r0, lsl #1\r
index 5b8fd34733cd37069ab2fa47bd1291d944c38024..f4b3343a787e2cbbceb7572e62cfd8fe35cd4ae2 100644 (file)
 #**/\r
 #\r
 \r
-.text\r
-.syntax unified\r
-.p2align 2\r
+#include <AsmMacroIoLib.h>\r
 \r
-GCC_ASM_EXPORT(__switch32)\r
+.syntax unified\r
 \r
-ASM_PFX(__switch32):\r
+ASM_FUNC(__switch32)\r
     ldr     ip, [lr, #-1]\r
     cmp     r0, ip\r
     add     r0, lr, r0, lsl #2\r
index 871c7c05f7a4e17a889ec7e5649118da504ef05a..7f84b16c791766cf34cd668d09033ee953bbba96 100644 (file)
 #**/\r
 #\r
 \r
-.text\r
-.syntax unified\r
-.p2align 2\r
+#include <AsmMacroIoLib.h>\r
 \r
-GCC_ASM_EXPORT(__switch8)\r
+.syntax unified\r
 \r
-ASM_PFX(__switch8):\r
+ASM_FUNC(__switch8)\r
     ldrb      ip, [lr, #-1]\r
     cmp       r0, ip\r
     ldrsbcc   r0, [lr, r0]\r
index 5849998eaf32bd9d945567773814f3f696c4416a..7c94dd4fad275a373806f2c34e5a9c96d559bb84 100644 (file)
 #**/\r
 #\r
 \r
-.text\r
-.syntax unified\r
-.p2align 2\r
-\r
-GCC_ASM_EXPORT(__switchu8)\r
+#include <AsmMacroIoLib.h>\r
 \r
+.syntax unified\r
 \r
-ASM_PFX(__switchu8):\r
+ASM_FUNC(__switchu8)\r
     ldrb      ip,[lr,#-1]\r
     cmp       r0,ip\r
     ldrbcc    r0,[lr,r0]\r
index da57423bf1e3924b4c859ba91ff90da481e1ac22..472bbc10563ca7e6f001e74140d97cbfda63e874 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__ucmpdi2)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__ucmpdi2):\r
+ASM_FUNC(__ucmpdi2)\r
   stmfd  sp!, {r4, r5, r8, lr}\r
   cmp  r1, r3\r
   mov  r8, r0\r
index cbfb127350031c674a3f7beff0133c0b2e01c875..e173d4ada78651fdd5ab64facdaf923706e13f0c 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__udivdi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__udivdi3):\r
+ASM_FUNC(__udivdi3)\r
   stmfd  sp!, {r7, lr}\r
   add  r7, sp, #0\r
   sub  sp, sp, #8\r
index 42f4ba404730fb62060cf2708d40878ad2c8687a..b87872d39e0762fbe7c886ff47bca490a5edb3d3 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
+#include <AsmMacroIoLib.h>\r
+\r
   .syntax unified\r
-  .align 2\r
-  GCC_ASM_EXPORT(__udivmoddi4)\r
 \r
-ASM_PFX(__udivmoddi4):\r
+ASM_FUNC(__udivmoddi4)\r
   stmfd  sp!, {r4, r5, r6, r7, lr}\r
   add  r7, sp, #12\r
   stmfd  sp!, {r10, r11}\r
index 080aa51c3c545506bb72b49b22d6c5324b5567ca..b70d1d7f032264fc83f592e8c7890fcac90b141b 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
+#include <AsmMacroIoLib.h>\r
+\r
   .syntax unified\r
-  .align 2\r
-  GCC_ASM_EXPORT(__udivsi3)\r
 \r
-ASM_PFX(__udivsi3):\r
+ASM_FUNC(__udivsi3)\r
   cmp  r1, #0\r
   cmpne  r0, #0\r
   stmfd  sp!, {r4, r5, r7, lr}\r
index 6b718a6574742fa54b7c09c4d1a7861e78ea8ab8..3edff1b715a1cd9b95090e6e1c530b833dccc583 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__umoddi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__umoddi3):\r
+ASM_FUNC(__umoddi3)\r
   stmfd  sp!, {r7, lr}\r
   add  r7, sp, #0\r
   sub  sp, sp, #16\r
index 76c26beb0b192553e25b99ee9f8786df01cb2623..2a300601d0f5e964a859bde6dd8c88a7390aa3a5 100644 (file)
 #\r
 #------------------------------------------------------------------------------\r
 \r
-  .text\r
-  .align 2\r
-  GCC_ASM_EXPORT(__umodsi3)\r
+#include <AsmMacroIoLib.h>\r
 \r
-ASM_PFX(__umodsi3):\r
+ASM_FUNC(__umodsi3)\r
   stmfd  sp!, {r4, r5, r7, lr}\r
   add  r7, sp, #8\r
   mov  r5, r0\r