[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 2/2] hvmloader: do not include system headers for type declarations
On 24.02.2021 13:01, Roger Pau Monné wrote: > On Wed, Feb 24, 2021 at 11:51:39AM +0100, Jan Beulich wrote: >> On 24.02.2021 11:26, Roger Pau Monne wrote: >>> --- /dev/null >>> +++ b/tools/firmware/hvmloader/types.h >>> @@ -0,0 +1,47 @@ >>> +#ifndef _HVMLOADER_TYPES_H_ >>> +#define _HVMLOADER_TYPES_H_ >>> + >>> +typedef unsigned char uint8_t; >>> +typedef signed char int8_t; >>> + >>> +typedef unsigned short uint16_t; >>> +typedef signed short int16_t; >>> + >>> +typedef unsigned int uint32_t; >>> +typedef signed int int32_t; >>> + >>> +typedef unsigned long long uint64_t; >>> +typedef signed long long int64_t; >> >> I wonder if we weren't better of not making assumptions on >> short / int / long long, and instead use >> __attribute__((__mode__(...))) or, if available, the compiler >> provided __{,U}INT*_TYPE__. > > Oh, didn't know about all this fancy stuff. > > Clang doens't seem to support the same mode attributes, for example > QImode is unknown, and that's just on one version of clang that I > happened to test on. Oh, these modes have been available even in gcc 3.x. I thought Clang was claiming to be 4.4(?) compatible. > Using __{,U}INT*_TYPE__ does seem to be supported on the clang version > I've tested with, so that might be an option if it's supported > everywhere we care about. If we still need to keep the current typedef > chunk for fallback purposes then I see no real usefulness of using > __{,U}INT*_TYPE__. Fair point. And they're available from 4.5 onwards only. So just __SIZE_TYPE__ has been available for long enough. As said in reply to Ian I think we at least want to use that one (and I guess in the hypervisor we may want to drop the fallback). Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |