From 63ca7402171de8a3f412ac1709d2423e25af7690 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Wed, 15 Dec 2010 01:06:20 +0000 Subject: [PATCH] Update remaining ARM .S files with INTERWORK_FUNC macro. This is the 2nd half of check-in 11167. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11169 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Drivers/CpuDxe/ExceptionSupport.ARMv6.S | 5 +++++ ArmPkg/Library/ArmLib/Arm11/Arm11Support.S | 19 +++++++++++++++++ ArmPkg/Library/ArmLib/Arm9/Arm9Support.S | 19 +++++++++++++++++ ArmPkg/Library/ArmLib/ArmV7/ArmLibSupport.S | 17 +++++++++++++++ ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S | 21 +++++++++++++++++++ ArmPkg/Library/ArmLib/Common/ArmLibSupport.S | 15 +++++++++++++ ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.S | 1 + ArmPkg/Library/BaseMemoryLibStm/Arm/SetMem.S | 1 + .../Library/BaseMemoryLibVstm/Arm/CopyMem.S | 1 + ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S | 1 + .../CompilerIntrinsicsLib/Arm/ashldi3.S | 1 + .../CompilerIntrinsicsLib/Arm/ashrdi3.S | 1 + .../CompilerIntrinsicsLib/Arm/clzsi2.S | 1 + .../CompilerIntrinsicsLib/Arm/ctzsi2.S | 1 + .../CompilerIntrinsicsLib/Arm/divdi3.S | 1 + .../CompilerIntrinsicsLib/Arm/divsi3.S | 1 + .../CompilerIntrinsicsLib/Arm/ldivmod.S | 1 + .../CompilerIntrinsicsLib/Arm/lshrdi3.S | 1 + .../CompilerIntrinsicsLib/Arm/memcpy.S | 1 + .../CompilerIntrinsicsLib/Arm/memset.S | 6 ++++-- .../CompilerIntrinsicsLib/Arm/moddi3.S | 1 + .../CompilerIntrinsicsLib/Arm/modsi3.S | 1 + .../CompilerIntrinsicsLib/Arm/muldi3.S | 3 ++- .../CompilerIntrinsicsLib/Arm/sourcery.S | 2 ++ .../CompilerIntrinsicsLib/Arm/switch16.S | 2 +- .../CompilerIntrinsicsLib/Arm/switch32.S | 2 +- .../CompilerIntrinsicsLib/Arm/switch8.S | 1 + .../CompilerIntrinsicsLib/Arm/switchu8.S | 1 + .../CompilerIntrinsicsLib/Arm/ucmpdi2.S | 1 + .../CompilerIntrinsicsLib/Arm/udivdi3.S | 1 + .../CompilerIntrinsicsLib/Arm/udivmoddi4.S | 3 ++- .../CompilerIntrinsicsLib/Arm/udivsi3.S | 1 + .../Library/CompilerIntrinsicsLib/Arm/uldiv.S | 1 + .../CompilerIntrinsicsLib/Arm/umoddi3.S | 1 + .../CompilerIntrinsicsLib/Arm/umodsi3.S | 1 + BeagleBoardPkg/BeagleBoardPkg.dsc | 9 +++++++- BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S | 1 + .../Arm/ExceptionSupport.ARMv6.S | 5 +++++ 38 files changed, 145 insertions(+), 7 deletions(-) diff --git a/ArmPkg/Drivers/CpuDxe/ExceptionSupport.ARMv6.S b/ArmPkg/Drivers/CpuDxe/ExceptionSupport.ARMv6.S index 9db6756c7b..1c2bb62605 100644 --- a/ArmPkg/Drivers/CpuDxe/ExceptionSupport.ARMv6.S +++ b/ArmPkg/Drivers/CpuDxe/ExceptionSupport.ARMv6.S @@ -51,10 +51,15 @@ This is the stack constructed by the exception handler (low address to high addr .globl ASM_PFX(ExceptionHandlersStart) +INTERWORK_FUNC(ExceptionHandlersStart) .globl ASM_PFX(ExceptionHandlersEnd) +INTERWORK_FUNC(ExceptionHandlersEnd) .globl ASM_PFX(CommonExceptionEntry) +INTERWORK_FUNC(CommonExceptionEntry) .globl ASM_PFX(AsmCommonExceptionEntry) +INTERWORK_FUNC(AsmCommonExceptionEntry) .globl ASM_PFX(CommonCExceptionHandler) +INTERWORK_FUNC(CommonCExceptionHandler) .text #if !defined(__APPLE__) diff --git a/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S b/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S index 885043414c..8c2ce60f5a 100644 --- a/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S +++ b/ArmPkg/Library/ArmLib/Arm11/Arm11Support.S @@ -15,24 +15,43 @@ .text .align 2 .globl ASM_PFX(ArmCleanInvalidateDataCache) +INTERWORK_FUNC(ArmCleanInvalidateDataCache) .globl ASM_PFX(ArmCleanDataCache) +INTERWORK_FUNC(ArmCleanDataCache) .globl ASM_PFX(ArmInvalidateDataCache) +INTERWORK_FUNC(ArmInvalidateDataCache) .globl ASM_PFX(ArmInvalidateInstructionCache) +INTERWORK_FUNC(ArmInvalidateInstructionCache) .globl ASM_PFX(ArmInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmEnableMmu) +INTERWORK_FUNC(ArmEnableMmu) .globl ASM_PFX(ArmDisableMmu) +INTERWORK_FUNC(ArmDisableMmu) .globl ASM_PFX(ArmMmuEnabled) +INTERWORK_FUNC(ArmMmuEnabled) .globl ASM_PFX(ArmEnableDataCache) +INTERWORK_FUNC(ArmEnableDataCache) .globl ASM_PFX(ArmDisableDataCache) +INTERWORK_FUNC(ArmDisableDataCache) .globl ASM_PFX(ArmEnableInstructionCache) +INTERWORK_FUNC(ArmEnableInstructionCache) .globl ASM_PFX(ArmDisableInstructionCache) +INTERWORK_FUNC(ArmDisableInstructionCache) .globl ASM_PFX(ArmEnableBranchPrediction) +INTERWORK_FUNC(ArmEnableBranchPrediction) .globl ASM_PFX(ArmDisableBranchPrediction) +INTERWORK_FUNC(ArmDisableBranchPrediction) .globl ASM_PFX(ArmDataMemoryBarrier) +INTERWORK_FUNC(ArmDataMemoryBarrier) .globl ASM_PFX(ArmDataSyncronizationBarrier) +INTERWORK_FUNC(ArmDataSyncronizationBarrier) .globl ASM_PFX(ArmInstructionSynchronizationBarrier) +INTERWORK_FUNC(ArmInstructionSynchronizationBarrier) .set DC_ON, (0x1<<2) diff --git a/ArmPkg/Library/ArmLib/Arm9/Arm9Support.S b/ArmPkg/Library/ArmLib/Arm9/Arm9Support.S index 281603b117..f570f75059 100644 --- a/ArmPkg/Library/ArmLib/Arm9/Arm9Support.S +++ b/ArmPkg/Library/ArmLib/Arm9/Arm9Support.S @@ -15,24 +15,43 @@ .text .align 2 .globl ASM_PFX(ArmCleanInvalidateDataCache) +INTERWORK_FUNC(ArmCleanInvalidateDataCache) .globl ASM_PFX(ArmCleanDataCache) +INTERWORK_FUNC(ArmCleanDataCache) .globl ASM_PFX(ArmInvalidateDataCache) +INTERWORK_FUNC(ArmInvalidateDataCache) .globl ASM_PFX(ArmInvalidateInstructionCache) +INTERWORK_FUNC(ArmInvalidateInstructionCache) .globl ASM_PFX(ArmInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmEnableMmu) +INTERWORK_FUNC(ArmEnableMmu) .globl ASM_PFX(ArmDisableMmu) +INTERWORK_FUNC(ArmDisableMmu) .globl ASM_PFX(ArmMmuEnabled) +INTERWORK_FUNC(ArmMmuEnabled) .globl ASM_PFX(ArmEnableDataCache) +INTERWORK_FUNC(ArmEnableDataCache) .globl ASM_PFX(ArmDisableDataCache) +INTERWORK_FUNC(ArmDisableDataCache) .globl ASM_PFX(ArmEnableInstructionCache) +INTERWORK_FUNC(ArmEnableInstructionCache) .globl ASM_PFX(ArmDisableInstructionCache) +INTERWORK_FUNC(ArmDisableInstructionCache) .globl ASM_PFX(ArmEnableBranchPrediction) +INTERWORK_FUNC(ArmEnableBranchPrediction) .globl ASM_PFX(ArmDisableBranchPrediction) +INTERWORK_FUNC(ArmDisableBranchPrediction) .globl ASM_PFX(ArmDataMemoryBarrier) +INTERWORK_FUNC(ArmDataMemoryBarrier) .globl ASM_PFX(ArmDataSyncronizationBarrier) +INTERWORK_FUNC(ArmDataSyncronizationBarrier) .globl ASM_PFX(ArmInstructionSynchronizationBarrier) +INTERWORK_FUNC(ArmInstructionSynchronizationBarrier) .set DC_ON, (1<<2) diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupport.S b/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupport.S index 83ecdba8e1..8ca37f0be0 100644 --- a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupport.S +++ b/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupport.S @@ -13,22 +13,39 @@ #------------------------------------------------------------------------------ .globl ASM_PFX(Cp15IdCode) +INTERWORK_FUNC(Cp15IdCode) .globl ASM_PFX(Cp15CacheInfo) +INTERWORK_FUNC(Cp15CacheInfo) .globl ASM_PFX(ArmEnableInterrupts) +INTERWORK_FUNC(ArmEnableInterrupts) .globl ASM_PFX(ArmDisableInterrupts) +INTERWORK_FUNC(ArmDisableInterrupts) .globl ASM_PFX(ArmGetInterruptState) +INTERWORK_FUNC(ArmGetInterruptState) .globl ASM_PFX(ArmEnableFiq) +INTERWORK_FUNC(ArmEnableFiq) .globl ASM_PFX(ArmDisableFiq) +INTERWORK_FUNC(ArmDisableFiq) .globl ASM_PFX(ArmGetFiqState) +INTERWORK_FUNC(ArmGetFiqState) .globl ASM_PFX(ArmInvalidateTlb) +INTERWORK_FUNC(ArmInvalidateTlb) .globl ASM_PFX(ArmSetTranslationTableBaseAddress) +INTERWORK_FUNC(ArmSetTranslationTableBaseAddress) .globl ASM_PFX(ArmGetTranslationTableBaseAddress) +INTERWORK_FUNC(ArmGetTranslationTableBaseAddress) .globl ASM_PFX(ArmSetDomainAccessControl) +INTERWORK_FUNC(ArmSetDomainAccessControl) .globl ASM_PFX(ArmUpdateTranslationTableEntry) +INTERWORK_FUNC(ArmUpdateTranslationTableEntry) .globl ASM_PFX(CPSRMaskInsert) +INTERWORK_FUNC(CPSRMaskInsert) .globl ASM_PFX(CPSRRead) +INTERWORK_FUNC(CPSRRead) .globl ASM_PFX(ReadCCSIDR) +INTERWORK_FUNC(ReadCCSIDR) .globl ASM_PFX(ReadCLIDR) +INTERWORK_FUNC(ReadCLIDR) .text .align 2 diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S b/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S index d071c1ac01..991de89a96 100644 --- a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S +++ b/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S @@ -13,26 +13,47 @@ #------------------------------------------------------------------------------ .globl ASM_PFX(ArmInvalidateInstructionCache) +INTERWORK_FUNC(ArmInvalidateInstructionCache) .globl ASM_PFX(ArmInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanDataCacheEntryByMVA) .globl ASM_PFX(ArmCleanInvalidateDataCacheEntryByMVA) +INTERWORK_FUNC(ArmCleanInvalidateDataCacheEntryByMVA) .globl ASM_PFX(ArmInvalidateDataCacheEntryBySetWay) +INTERWORK_FUNC(ArmInvalidateDataCacheEntryBySetWay) .globl ASM_PFX(ArmCleanDataCacheEntryBySetWay) +INTERWORK_FUNC(ArmCleanDataCacheEntryBySetWay) .globl ASM_PFX(ArmCleanInvalidateDataCacheEntryBySetWay) +INTERWORK_FUNC(ArmCleanInvalidateDataCacheEntryBySetWay) .globl ASM_PFX(ArmDrainWriteBuffer) +INTERWORK_FUNC(ArmDrainWriteBuffer) .globl ASM_PFX(ArmEnableMmu) +INTERWORK_FUNC(ArmEnableMmu) .globl ASM_PFX(ArmDisableMmu) +INTERWORK_FUNC(ArmDisableMmu) .globl ASM_PFX(ArmMmuEnabled) +INTERWORK_FUNC(ArmMmuEnabled) .globl ASM_PFX(ArmEnableDataCache) +INTERWORK_FUNC(ArmEnableDataCache) .globl ASM_PFX(ArmDisableDataCache) +INTERWORK_FUNC(ArmDisableDataCache) .globl ASM_PFX(ArmEnableInstructionCache) +INTERWORK_FUNC(ArmEnableInstructionCache) .globl ASM_PFX(ArmDisableInstructionCache) +INTERWORK_FUNC(ArmDisableInstructionCache) .globl ASM_PFX(ArmEnableBranchPrediction) +INTERWORK_FUNC(ArmEnableBranchPrediction) .globl ASM_PFX(ArmDisableBranchPrediction) +INTERWORK_FUNC(ArmDisableBranchPrediction) .globl ASM_PFX(ArmV7AllDataCachesOperation) +INTERWORK_FUNC(ArmV7AllDataCachesOperation) .globl ASM_PFX(ArmDataMemoryBarrier) +INTERWORK_FUNC(ArmDataMemoryBarrier) .globl ASM_PFX(ArmDataSyncronizationBarrier) +INTERWORK_FUNC(ArmDataSyncronizationBarrier) .globl ASM_PFX(ArmInstructionSynchronizationBarrier) +INTERWORK_FUNC(ArmInstructionSynchronizationBarrier) .text .align 2 diff --git a/ArmPkg/Library/ArmLib/Common/ArmLibSupport.S b/ArmPkg/Library/ArmLib/Common/ArmLibSupport.S index e5e9b54fc2..a432acbb80 100644 --- a/ArmPkg/Library/ArmLib/Common/ArmLibSupport.S +++ b/ArmPkg/Library/ArmLib/Common/ArmLibSupport.S @@ -15,19 +15,34 @@ .text .align 2 .globl ASM_PFX(Cp15IdCode) +INTERWORK_FUNC(Cp15IdCode) .globl ASM_PFX(Cp15CacheInfo) +INTERWORK_FUNC(Cp15CacheInfo) .globl ASM_PFX(ArmEnableInterrupts) +INTERWORK_FUNC(ArmEnableInterrupts) .globl ASM_PFX(ArmDisableInterrupts) +INTERWORK_FUNC(ArmDisableInterrupts) .globl ASM_PFX(ArmGetInterruptState) +INTERWORK_FUNC(ArmGetInterruptState) .globl ASM_PFX(ArmEnableFiq) +INTERWORK_FUNC(ArmEnableFiq) .globl ASM_PFX(ArmDisableFiq) +INTERWORK_FUNC(ArmDisableFiq) .globl ASM_PFX(ArmGetFiqState) +INTERWORK_FUNC(ArmGetFiqState) .globl ASM_PFX(ArmInvalidateTlb) +INTERWORK_FUNC(ArmInvalidateTlb) .globl ASM_PFX(ArmSetTranslationTableBaseAddress) +INTERWORK_FUNC(ArmSetTranslationTableBaseAddress) .globl ASM_PFX(ArmGetTranslationTableBaseAddress) +INTERWORK_FUNC(ArmGetTranslationTableBaseAddress) .globl ASM_PFX(ArmSetDomainAccessControl) +INTERWORK_FUNC(ArmSetDomainAccessControl) .globl ASM_PFX(CPSRMaskInsert) +INTERWORK_FUNC(CPSRMaskInsert) .globl ASM_PFX(CPSRRead) +INTERWORK_FUNC(CPSRRead) + #------------------------------------------------------------------------------ diff --git a/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.S b/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.S index 9d0d389a13..1cd1dae54f 100755 --- a/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.S +++ b/ArmPkg/Library/BaseMemoryLibStm/Arm/CopyMem.S @@ -40,6 +40,7 @@ InternalMemCopyMem ( .text .align 2 .globl ASM_PFX(InternalMemCopyMem) +INTERWORK_FUNC(InternalMemCopyMem) ASM_PFX(InternalMemCopyMem): stmfd sp!, {r4-r11, lr} diff --git a/ArmPkg/Library/BaseMemoryLibStm/Arm/SetMem.S b/ArmPkg/Library/BaseMemoryLibStm/Arm/SetMem.S index 94aa0ca3db..29a50f5a49 100755 --- a/ArmPkg/Library/BaseMemoryLibStm/Arm/SetMem.S +++ b/ArmPkg/Library/BaseMemoryLibStm/Arm/SetMem.S @@ -38,6 +38,7 @@ InternalMemSetMem ( .text .align 2 .globl ASM_PFX(InternalMemSetMem) +INTERWORK_FUNC(InternalMemSetMem) ASM_PFX(InternalMemSetMem): stmfd sp!, {r4-r11, lr} diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S b/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S index f340146373..69db936555 100755 --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S +++ b/ArmPkg/Library/BaseMemoryLibVstm/Arm/CopyMem.S @@ -40,6 +40,7 @@ InternalMemCopyMem ( .text .align 2 .globl ASM_PFX(InternalMemCopyMem) +INTERWORK_FUNC(InternalMemCopyMem) ASM_PFX(InternalMemCopyMem): stmfd sp!, {r4, r9, lr} diff --git a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S b/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S index 3b4a03d559..3eb901b58f 100755 --- a/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S +++ b/ArmPkg/Library/BaseMemoryLibVstm/Arm/SetMem.S @@ -38,6 +38,7 @@ InternalMemSetMem ( .text .align 2 .globl ASM_PFX(InternalMemSetMem) +INTERWORK_FUNC(InternalMemSetMem) ASM_PFX(InternalMemSetMem): stmfd sp!, {r4-r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S index 669e3963da..64d0a33c26 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__ashldi3) + INTERWORK_FUNC(__ashldi3) ASM_PFX(__ashldi3): cmp r2, #31 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S index a55c7824dd..3cb0e68f62 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashrdi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__ashrdi3) + INTERWORK_FUNC(__ashrdi3) ASM_PFX(__ashrdi3): cmp r2, #31 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S index fedad74958..2f9dcd4297 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/clzsi2.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__clzsi2) + INTERWORK_FUNC(__clzsi2) ASM_PFX(__clzsi2): @ frame_needed = 1, uses_anonymous_args = 0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S index 0f26c4ad3e..b776ef43e1 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ctzsi2.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__ctzsi2) + INTERWORK_FUNC(__ctzsi2) ASM_PFX(__ctzsi2): uxth r3, r0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S index d6a5add8f8..c6a889a8b4 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divdi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__divdi3) + INTERWORK_FUNC(__divdi3) ASM_PFX(__divdi3): @ args = 0, pretend = 0, frame = 0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S index df07e72166..3d9b78c6b1 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__divsi3) + INTERWORK_FUNC(__divsi3) ASM_PFX(__divsi3): eor r3, r0, r0, asr #31 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S index d5a68ae285..f8cd1aa9e2 100755 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ldivmod.S @@ -16,6 +16,7 @@ .text .align 2 .globl ASM_PFX(__aeabi_ldivmod) + INTERWORK_FUNC(__aeabi_ldivmod) // // A pair of (unsigned) long longs is returned in {{r0, r1}, {r2, r3}}, diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S index 2f0341cb73..8d8c98b602 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/lshrdi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__lshrdi3) + INTERWORK_FUNC(__lshrdi3) ASM_PFX(__lshrdi3): cmp r2, #31 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memcpy.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memcpy.S index 3c26981e1c..ae20598943 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memcpy.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memcpy.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(memcpy) + INTERWORK_FUNC(memcpy) ASM_PFX(memcpy): stmfd sp!, {r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memset.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memset.S index 6992832aa0..040bbf1fdc 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memset.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/memset.S @@ -15,8 +15,10 @@ .text .align 2 - .globl _memset -_memset: + .globl ASM_PFX(memset) + INTERWORK_FUNC(memset) + +ASM_PFX(memset): @ args = 0, pretend = 0, frame = 0 @ frame_needed = 1, uses_anonymous_args = 0 stmfd sp!, {r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S index a872b63a90..c7eb4b5f0e 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/moddi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__moddi3) + INTERWORK_FUNC(__moddi3) ASM_PFX(__moddi3): stmfd sp!, {r4, r5, r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S index 8924e7ba7b..93ba234ccb 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/modsi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__modsi3) + INTERWORK_FUNC(__modsi3) ASM_PFX(__modsi3): stmfd sp!, {r4, r5, r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S index c4059024aa..5c9aeef4ab 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/muldi3.S @@ -15,7 +15,8 @@ .text .align 2 .globl ASM_PFX(__muldi3) - + INTERWORK_FUNC(__muldi3) + ASM_PFX(__muldi3): stmfd sp!, {r4, r5, r6, r7, lr} add r7, sp, #12 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/sourcery.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/sourcery.S index 6791050937..68cc974fd9 100755 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/sourcery.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/sourcery.S @@ -16,6 +16,8 @@ .text .align 2 .globl ASM_PFX(__aeabi_ulcmp) + INTERWORK_FUNC(__aeabi_ulcmp) + ASM_PFX(__aeabi_ulcmp): stmfd sp!, {r4, r5, r8} cmp r3, r1 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S index 88419db27e..8c38a7af47 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch16.S @@ -17,7 +17,7 @@ .p2align 2 .globl ASM_PFX(__switch16) - +INTERWORK_FUNC(__switch16) ASM_PFX(__switch16): ldrh ip, [lr, #-1] diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S index d6be556874..d9bf800fd7 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch32.S @@ -17,7 +17,7 @@ .p2align 2 .globl ASM_PFX(__switch32) - +INTERWORK_FUNC(__switch32) ASM_PFX(__switch32): ldr ip, [lr, #-1] diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S index a526d599fe..1fbd48aa35 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch8.S @@ -17,6 +17,7 @@ .p2align 2 .globl ASM_PFX(__switch8) +INTERWORK_FUNC(__switch8) ASM_PFX(__switch8): diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S index 8f057b85f3..ed0c115817 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/switchu8.S @@ -17,6 +17,7 @@ .p2align 2 .globl ASM_PFX(__switchu8) +INTERWORK_FUNC(__switchu8) ASM_PFX(__switchu8): diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S index 18fccc6a0e..5b7f5b70b7 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/ucmpdi2.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__ucmpdi2) + INTERWORK_FUNC(__ucmpdi2) ASM_PFX(__ucmpdi2): stmfd sp!, {r4, r5, r8, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S index b03f65322c..fc9240e135 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivdi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__udivdi3) + INTERWORK_FUNC(__udivdi3) ASM_PFX(__udivdi3): stmfd sp!, {r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S index 77507e3441..816e66a12a 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivmoddi4.S @@ -15,7 +15,8 @@ .text .align 2 .globl ASM_PFX(__udivmoddi4) - + INTERWORK_FUNC(__udivmoddi4) + ASM_PFX(__udivmoddi4): stmfd sp!, {r4, r5, r6, r7, lr} add r7, sp, #12 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S index 452cfe5f1b..77cfa726c0 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/udivsi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__udivsi3) + INTERWORK_FUNC(__udivsi3) ASM_PFX(__udivsi3): cmp r1, #0 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uldiv.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uldiv.S index 75761deca0..81e824cc83 100755 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uldiv.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/uldiv.S @@ -17,6 +17,7 @@ .text .align 2 .globl ASM_PFX(__aeabi_uldivmod) + INTERWORK_FUNC(__aeabi_uldivmod) // //UINT64 diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S index b83d7b1978..c801ba06dd 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umoddi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__umoddi3) + INTERWORK_FUNC(__umoddi3) ASM_PFX(__umoddi3): stmfd sp!, {r7, lr} diff --git a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S index 919018ab88..30dc55193b 100644 --- a/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S +++ b/ArmPkg/Library/CompilerIntrinsicsLib/Arm/umodsi3.S @@ -15,6 +15,7 @@ .text .align 2 .globl ASM_PFX(__umodsi3) + INTERWORK_FUNC(__umodsi3) ASM_PFX(__umodsi3): stmfd sp!, {r4, r5, r7, lr} diff --git a/BeagleBoardPkg/BeagleBoardPkg.dsc b/BeagleBoardPkg/BeagleBoardPkg.dsc index 5e460c7574..1a7b2cc280 100644 --- a/BeagleBoardPkg/BeagleBoardPkg.dsc +++ b/BeagleBoardPkg/BeagleBoardPkg.dsc @@ -364,7 +364,14 @@ MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf - EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf + + EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf +# +# This version uses semi-hosting console +# EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf { +# +# SerialPortLib|ArmPkg/Library/SemiHostingSerialPortLib/SemiHostingSerialPortLib.inf +# } EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf diff --git a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S b/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S index e51a779ed0..c8deed83b4 100644 --- a/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S +++ b/BeagleBoardPkg/Sec/Arm/ModuleEntryPoint.S @@ -20,6 +20,7 @@ .globl ASM_PFX(CEntryPoint) .globl ASM_PFX(_ModuleEntryPoint) +INTERWORK_FUNC(_ModuleEntryPoint) ASM_PFX(_ModuleEntryPoint): diff --git a/EmbeddedPkg/Library/GdbDebugAgent/Arm/ExceptionSupport.ARMv6.S b/EmbeddedPkg/Library/GdbDebugAgent/Arm/ExceptionSupport.ARMv6.S index 4b7b5c95c8..2682581ea9 100755 --- a/EmbeddedPkg/Library/GdbDebugAgent/Arm/ExceptionSupport.ARMv6.S +++ b/EmbeddedPkg/Library/GdbDebugAgent/Arm/ExceptionSupport.ARMv6.S @@ -51,10 +51,15 @@ This is the stack constructed by the exception handler (low address to high addr .globl ASM_PFX(ExceptionHandlersStart) +INTERWORK_FUNC(ExceptionHandlersStart) .globl ASM_PFX(ExceptionHandlersEnd) +INTERWORK_FUNC(ExceptionHandlersEnd) .globl ASM_PFX(CommonExceptionEntry) +INTERWORK_FUNC(CommonExceptionEntry) .globl ASM_PFX(AsmCommonExceptionEntry) +INTERWORK_FUNC(AsmCommonExceptionEntry) .globl ASM_PFX(GdbExceptionHandler) +INTERWORK_FUNC(GdbExceptionHandler) .text .align 3 -- 2.39.2