tech-pkg archive

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

Re: gcc14 on NetBSD 10



On Fri 11 Sep 2026 at 09:12:12 +1200, Mark Davies wrote:
> I'm trying to build a package for kquickimageeditor on a NetBSD 10 machine.
> The package requires c++23 so pkgsrc pulls in gcc14.
> 
> Part way through the build it dies with:
> 
> /tmp//ccweaPa5.s: Assembler messages:
> /tmp//ccweaPa5.s:46349: Error: no such instruction: `vmovw %eax,%xmm0'
> /tmp//ccweaPa5.s:46382: Error: no such instruction: `vmovw
> (%rsi,%rax,2),%xmm1'
> /tmp//ccweaPa5.s:46425: Error: no such instruction: `vmovw
> (%rsi,%rax,2),%xmm1'
> /tmp//ccweaPa5.s:46470: Error: no such instruction: `vmovw (%r10),%xmm1'
> /tmp//ccweaPa5.s:46524: Error: no such instruction: `vmovw (%rcx),%xmm1'
> 
> 
> A quick google suggests that NetBSD 10's assembler is too old for the code
> that gcc14 is generating.  Have we struck this issue with any other package?

This can also happen with gcc 12, I noticed. I "solved" it locally by
patching the related packages so that they would not use those
instructions. For example in Firefox, third_party/gemmology/gemmology.h:

-#ifdef __AVXVNNI__
+#ifdef __AVXVNNI__NOT

or devel/libdeflate/patch-lib_x86_adler32__impl.h

-#if GCC_PREREQ(12, 1) || CLANG_PREREQ(12, 0, 13000000) || MSVC_PREREQ(1930)
+#if 0 /*GCC_PREREQ(12, 1) || CLANG_PREREQ(12, 0, 13000000) || MSVC_PREREQ(1930)*/
 #  define adler32_x86_avx2_vnni        adler32_x86_avx2_vnni

> Is there a fix?

It looks like I could remove at least some of these patches the last
time around, but the same fix for gcc 14 would probably apply to gcc 12
on NetBSD 10.

I presume that on NetBSD 11 with gcc 12 in base binutils is already new
enough.

-Olaf.
-- 
___ Olaf 'Rhialto' Seibert                            <rhialto/at/falu.nl>
\X/ There is no AI. There is just someone else's work.           --I. Rose

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index