diff options
author | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-07-12 18:00:36 +0000 |
---|---|---|
committer | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-07-12 18:00:36 +0000 |
commit | 836a78250b31ef71b3584d1a4e7cf2a03434422f (patch) | |
tree | 6feb542da4013e995f0123774c0f8c39f8b84148 /ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm | |
parent | 96f0d1cab0f2f1d7f923cc11bc56c069c6e71854 (diff) | |
download | edk2-platforms-836a78250b31ef71b3584d1a4e7cf2a03434422f.tar.xz |
ArmPkg/CompilerIntrinsicsLib: Added missing __aeabi_uread8 and __aeabi_uwrite8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13528 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm')
-rw-r--r-- | ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm index deb0189327..cbf1793af4 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uwrite.asm @@ -14,6 +14,7 @@ EXPORT __aeabi_uwrite4 + EXPORT __aeabi_uwrite8 AREA Uwrite4, CODE, READONLY @@ -35,6 +36,31 @@ __aeabi_uwrite4 mov r2, r0, lsr #24 strb r2, [r1, #3] bx lr - + +; +;UINT64 +;EFIAPI +;__aeabi_uwrite8 ( +; IN UINT64 Data, //r0-r1 +; IN VOID *Pointer //r2 +; ); +; +; +__aeabi_uwrite8 + mov r3, r0, lsr #8 + strb r0, [r2] + strb r3, [r2, #1] + mov r3, r0, lsr #16 + strb r3, [r2, #2] + mov r3, r0, lsr #24 + strb r3, [r2, #3] + + mov r3, r1, lsr #8 + strb r1, [r2, #4] + strb r3, [r2, #5] + mov r3, r1, lsr #16 + strb r3, [r2, #6] + mov r3, r1, lsr #24 + strb r3, [r2, #7] END |