This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] uint64_aligned_t not compatible across gcc versions

>>> John Levon <levon@xxxxxxxxxxxxxxxxx> 29.08.06 14:38 >>>
>On Tue, Aug 29, 2006 at 12:13:13PM +0200, Jan Beulich wrote:
>> Here my take at it. This actually also replaces the patch sent under
>> the same subject yesterday, as I meanwhile realized there's a simpler
>> way to achieve the desired effect. It also converts the 64-bit store
>> to a 32-bit one, as only the upper 32 bits need clearing.
>> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
>> Index: 2006-08-28/xen/include/public/arch-x86_32.h
>> ===================================================================
>> --- 2006-08-28.orig/xen/include/public/arch-x86_32.h 2006-08-28 
>> 08:32:38.000000000 +0200
>> +++ 2006-08-28/xen/include/public/arch-x86_32.h      2006-08-29 
>> 11:15:44.000000000 +0200
>> @@ -29,11 +29,11 @@
>>  /* Structural guest handles introduced in 0x00030201. */
>>  #if (defined(__XEN__) || defined(__XEN_TOOLS__)) && !defined(__ASSEMBLY__)
>> -typedef uint64_t __attribute__((aligned(8))) uint64_aligned_t;
>> +#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
>This is GCC-specific, in a public header. At the very least it needs to
>be conditional on gcc being used (#define __xen_aligned or whatever)...

That is a comment regarding the original change, then. I still agree this
should be abstracted out in some way - the question is how, since I
guess users of other compilers would need to provide input.


Xen-devel mailing list