]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseIoLibIntrinsic/Arm/ArmVirtMmio.S
MdePkg/BaseIoLibIntrinsicArmVirt ARM: avoid double word loads and stores
[mirror_edk2.git] / MdePkg / Library / BaseIoLibIntrinsic / Arm / ArmVirtMmio.S
index 3ad22bd5706dc0b792d30a96627437a50728297a..0d802d6928d6da1cae104ad3ab85b9ae5942f10b 100644 (file)
@@ -125,7 +125,8 @@ ASM_PFX(MmioWrite32Internal):
 //  @return The value read.\r
 //\r
 ASM_PFX(MmioRead64Internal):\r
 //  @return The value read.\r
 //\r
 ASM_PFX(MmioRead64Internal):\r
-  ldrd    r0, r1, [r0]\r
+  ldr     r1, [r0, #4]\r
+  ldr     r0, [r0]\r
   dmb\r
   bx      lr\r
 \r
   dmb\r
   bx      lr\r
 \r
@@ -141,5 +142,6 @@ ASM_PFX(MmioRead64Internal):
 //\r
 ASM_PFX(MmioWrite64Internal):\r
   dmb     st\r
 //\r
 ASM_PFX(MmioWrite64Internal):\r
   dmb     st\r
-  strd    r2, r3, [r0]\r
+  str     r2, [r0]\r
+  str     r3, [r0, #4]\r
   bx      lr\r
   bx      lr\r