Hi Roger, > On 11 Feb 2026, at 11:46, Roger Pau Monne <[email protected]> wrote: > > On x86 GNU assembler will consider '/' as the start of comment marker for > some ELF targets. This is incorrect with Xen's usage, which does use '/' > in assembly files as a mathematical operator. > > The behavior of the assembler can be altered by passing the --divide > option; unconditionally pass this option when available to force the > expected behavior.
Works to build x86 and arm still working on Mac OS. > > Reported-by: Jan Beulich <[email protected]> > Signed-off-by: Roger Pau Monné <[email protected]> Reviewed-by: Bertrand Marquis <[email protected]> Cheers Bertrand > --- > Changes since v1: > - Guard option setting to x86 only. > - Adjust comment. > --- > xen/Makefile | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/xen/Makefile b/xen/Makefile > index a054315fa4a2..4c83e2a46477 100644 > --- a/xen/Makefile > +++ b/xen/Makefile > @@ -413,6 +413,13 @@ ifneq ($(CONFIG_CC_IS_CLANG),y) > CFLAGS += -Wa,--strip-local-absolute > endif > > +ifeq ($(CONFIG_X86),y) > +# The GNU assembler will interpret '/' as a comment start marker instead of a > +# divide for some ELF targets. Pass --divide when when available to signal > '/' > +# is always used as an operator in assembly. > +$(call cc-option-add,CFLAGS,CC,-Wa$$(comma)--divide) > +endif > + > $(call cc-option-add,AFLAGS,CC,-Wa$$(comma)--noexecstack) > > LDFLAGS-$(call ld-option,--warn-rwx-segments) += --no-warn-rwx-segments > -- > 2.51.0 > >
