summaryrefslogtreecommitdiffstats
path: root/MdePkg/Include/Arm/ProcessorBind.h
diff options
context:
space:
mode:
Diffstat (limited to 'MdePkg/Include/Arm/ProcessorBind.h')
-rw-r--r--MdePkg/Include/Arm/ProcessorBind.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/MdePkg/Include/Arm/ProcessorBind.h b/MdePkg/Include/Arm/ProcessorBind.h
index 810bf03be0..a68b30b811 100644
--- a/MdePkg/Include/Arm/ProcessorBind.h
+++ b/MdePkg/Include/Arm/ProcessorBind.h
@@ -110,6 +110,20 @@ typedef INT32 INTN;
/// Define this macro to unify the usage.
///
#define ASM_GLOBAL .globl
+
+ #if !defined(__APPLE__)
+ ///
+ /// ARM EABI defines that the linker should not manipulate call relocations
+ /// (do bl/blx conversion) unless the target symbol has function type.
+ /// CodeSourcery 2010.09 started requiring the .type to function properly
+ ///
+ #define INTERWORK_FUNC(func__) .type ASM_PFX(func__), %function
+ #else
+ //
+ // .type not supported by Apple Xcode tools
+ //
+ #define INTERWORK_FUNC(func__)
+ #endif
#endif
/**