On 25 May 2018 at 15:55, Richard Henderson <richard.hender...@linaro.org> wrote: > On 05/25/2018 06:27 AM, Peter Maydell wrote: >> We'll currently replace any 'u64' with a 'uint64_t' including when >> it's embedded in an '__aligned_u64', creating a '__aligned_uint64_t' >> which doesn't exist. We need to instead expand out the kernel's >> definition of __aligned_u64: >> #define __aligned_u64 __u64 __attribute__((aligned(8))) >> before we convert the __u64 to uint64_t. > > Wow. I did not believe that would work. I expected that you'd need to define > a typedef, or somehow sort the attribute after the identifier to which it > applies.
In the kernel it's a #define, not a typedef, so logically if the kernel compiles then doing the textual-substitution here with sed must also work... thanks -- PMM