diff --git a/EdkCompatibilityPkg/Foundation/Include/Ia32/EfiBind.h b/EdkCompatibilityPkg/Foundation/Include/Ia32/EfiBind.h index 7c3c585b9e..61614355a8 100644 --- a/EdkCompatibilityPkg/Foundation/Include/Ia32/EfiBind.h +++ b/EdkCompatibilityPkg/Foundation/Include/Ia32/EfiBind.h @@ -295,7 +295,12 @@ typedef int32_t intn_t; #endif - +// +// For symbol name in GNU assembly code, an extra "_" is necessary +// +#if __GNUC__ + #define ASM_PFX(name) _##name +#endif #endif diff --git a/EdkCompatibilityPkg/Foundation/Include/X64/EfiBind.h b/EdkCompatibilityPkg/Foundation/Include/X64/EfiBind.h index 52a223990d..19570c82b2 100644 --- a/EdkCompatibilityPkg/Foundation/Include/X64/EfiBind.h +++ b/EdkCompatibilityPkg/Foundation/Include/X64/EfiBind.h @@ -248,7 +248,12 @@ typedef int64_t intn_t; #endif - +// +// For symbol name in GNU assembly code, an extra "_" is necessary +// +#if __GNUC__ + #define ASM_PFX(name) _##name +#endif #endif