Rhialto writes: > Does the assembler also get updated with this? I'm asking because I > noticed when compiling pkgsrc package libdeflate-1.20 with gcc12 (from > pkgsrc) that the compiler generates vpdpbusd instructions (amd64) but > the assembler doesn't know those: > > [ 55%] Building C object CMakeFiles/libdeflate_static.dir/lib/crc32.c.o > [ 58%] Building C object > CMakeFiles/libdeflate_shared.dir/lib/zlib_decompress.c.o > [ 62%] Building C object > CMakeFiles/libdeflate_static.dir/lib/gzip_compress.c.o > [ 65%] Building C object CMakeFiles/libdeflate_shared.dir/lib/crc32.c.o > /tmp//ccZfStzB.s: Assembler messages: > /tmp//ccZfStzB.s:1377: Error: unsupported instruction `vpdpbusd' > /tmp//ccZfStzB.s:1379: Error: unsupported instruction `vpdpbusd' > /tmp//ccfRuVym.s: Assembler messages: > /tmp//ccfRuVym.s:1377: Error: unsupported instruction `vpdpbusd' > /tmp//ccfRuVym.s:1379: Error: unsupported instruction `vpdpbusd' > =2E.. more of the same... > > For building firefox, I had to pretend that __AVXVNNI__ wasn't #defined.
this is odd. it feels like the compiler is being invoked wrongly, as it will need some -m<opt> to enable these instructions, including by passing down relevant options to gas. can you get the full compile line for these files? .mrg.