On 19.09.2023 11:19, Nicola Vetrini wrote:
> I just noticed one further issue with making BYTES_PER_LONG unsigned, in 
> that causes
> several instances of (1U << 3) to appear inside the file 
> xen/arch/x86/xen.lds
> produced by the build, which in turn causes ld to fail on that 'U'.

That should be avoidable if _AC() is used in the #define.

Jan

> For 
> reference, the version of ld used by the build is the following:
> GNU ld (GNU Binutils for Ubuntu) 2.38
> 
> The following is a snippet of the output:
> 
>         . = ALIGN((1 << 12));
>         __ro_after_init_end = .;
>         __start_bug_frames = .;
>         *(.bug_frames.0)
>         __stop_bug_frames_0 = .;
>         *(.bug_frames.1)
>         __stop_bug_frames_1 = .;
>         *(.bug_frames.2)
>         __stop_bug_frames_2 = .;
>         *(.bug_frames.3)
>         __stop_bug_frames_3 = .;
>         *(.rodata)
>         *(.rodata.*)
>         *(.data.rel.ro)
>         *(.data.rel.ro.*)
>         . = ALIGN((1U << 3)); __start_vpci_array = .; 
> *(SORT(.data.vpci.*)) __end_vpci_array = .;
>    } :text
>    .note.gnu.build-id : AT(ADDR(".note.gnu.build-id") - (((((((261 >> 8) 
> * 0xffff000000000000) | (261 << 39))) + ((1 << 39) / 2)) + (64 << 30)) + 
> (1 << 30))) {
>         __note_gnu_build_id_start = .;
>         *(.note.gnu.build-id)
>         __note_gnu_build_id_end = .;
> 
> 


Reply via email to