Re: Build issue "Error: operands mismatch -- statement `movec %d2,%caar' ignored" on m68k

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Thomas,

On Sun, Dec 29, 2024 at 1:48 PM Thomas Petazzoni
<thomas.petazzoni@xxxxxxxxxxx> wrote:
While trying to build the multi_defconfig, from Linux 6.12.5, for a
68040 system, the build fails with:

{standard input}: Assembler messages:
{standard input}:104: Error: operands mismatch -- statement `movec %d2,%caar' ignored
make[5]: *** [scripts/Makefile.build:229: arch/m68k/kernel/sys_m68k.o] Error 1

That's not the only error:

{standard input}: Assembler messages:
{standard input}:17: Error: invalid instruction for this architecture;
needs M68K mmu (68020 [68k, 68ec020], 68030 [68ec030], 68040
[68ec040], 68060 [68ec060]) -- statement `pflusha' ignored
make[5]: *** [scripts/Makefile.build:229: arch/m68k/mm/kmap.o] Error 1

There are more like the above, but at least these tell you what's the
underlying problem: the cross-compiler does not seem to support real
m68k CPUs. Interestingly, it was built with --with-cpu=68040...

Also:

    cat > /tmp/a.s <<EOF
    movec %d2,%caar
    EOF
    output/host/bin/m68k-buildroot-linux-gnu-as /tmp/a.s

does build.

    output/host/bin/m68k-buildroot-linux-gnu-gcc -c /tmp/a.s

does not.

With plain m68k-linux-gnu-{as,gcc} (Ubuntu 13.3.0-6ubuntu2~24.04,
which is also 13.3.0, just like the buildroot toolchain), both work.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds





[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux