[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH for-4.15] x86/efi: enable MS ABI attribute on clang
On 04.02.2021 11:51, Roger Pau Monné wrote: > On Thu, Feb 04, 2021 at 11:27:17AM +0100, Jan Beulich wrote: >> On 03.02.2021 18:58, Roger Pau Monne wrote: >>> --- a/xen/include/asm-x86/x86_64/efibind.h >>> +++ b/xen/include/asm-x86/x86_64/efibind.h >>> @@ -172,7 +172,7 @@ typedef uint64_t UINTN; >>> #ifndef EFIAPI // Forces EFI calling conventions >>> reguardless of compiler options >>> #ifdef _MSC_EXTENSIONS >>> #define EFIAPI __cdecl // Force C calling convention for >>> Microsoft C compiler >>> - #elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) >>> + #elif __clang__ || __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= >>> 4) >>> #define EFIAPI __attribute__((__ms_abi__)) // Force Microsoft ABI >>> #else >>> #define EFIAPI // Substitute expresion to force C calling >>> convention >>> >> >> So the problem is that some capable Clang versions set too low >> a __GNUC_MINOR__ (I'm observing 2 alongside __GNUC__ being 4 >> on Clang5). The way the description and change are written >> made me rather imply __GNUC__ to not be available at all, >> which I then thought can't be the case because iirc we use it >> elsewhere. > > Yes, I also see 4.2 on Clang 11. > > Do you want me to expand the description by adding: > > "Add a specific Clang check because the GCC version reported by Clang > is below the required 4.4 to use the __ms_abi__ attribute." I guess adding this is easy enough when done while committing. Thanks for the addition. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |