Fix issue with CodeSourcery gcc requiring assembly functions to have a .type define inorder to support interworking (calling from thumb(C code) to ARM code (hadn written assembly). We had to add a macro as the .type directive is not supported, or needed, by Xcode. All ARM .S files need to be updated.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11167 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
andrewfish
2010-12-15 00:58:34 +00:00
parent 5792e320d3
commit e7cb469e3a
9 changed files with 51 additions and 2 deletions

View File

@@ -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
/**