On Thu, 17 May 2018 16:41:12 +0200 Filip Banák <filip.banak...@gmail.com> wrote:
> => 0x7ffff601dce4 <ffi_closure_alloc+4196>: vmovq %r13,%xmm3 <<< OK, good, vmovq is an avx instruction. Your CPU flags don't list avx capability: > Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe > syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl > xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor > ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt > tsc_deadline_timer xsave lahf_lm epb pti tpr_shadow vnmi flexpriority > ept vpid xsaveopt ibpb ibrs stibp dtherm arat pln pts And here https://en.wikipedia.org/wiki/Advanced_Vector_Extensions it is stated "Note: Not all CPUs from the listed families support AVX. Generally, CPUs with the commercial denomination 'Core i3/i5/i7' support them, whereas 'Pentium' and 'Celeron' CPUs don't." So, libffi has a bug with regard to the configuration of Celeron G530 CPUs. When you build libffi, what do you see it is using for the gcc -march option? e.g., make 'AR_FLAGS=' 'CC_FOR_BUILD=' 'CFLAGS=-O3 -fomit-frame-pointer -fstrict-aliasing -ffast-math -march=amdfam10 -Wall -fexceptions' 'CXXFLAGS=-g -O2' 'CFLAGS_FOR_BUILD=' 'CFLAGS_FOR_TARGET=' Inside the libffi source tree there will be an architecture specific directory "..linux-gnu". Inside there will be a config.log file. In that file, what does it say on the lines from "checking for gcc architecture flag" to "checking CFLAGS for maximum warnings" which corresponds to configure:16308 to configure:16799, approx log lines 690-716 ? This bug should be reported to the libffi developers. However, in the meantime, ./configure has an architecture override option: --with-gcc-arch= The question then becomes what to put there for your CPU. Some say it should be pentium4: https://forums.gentoo.org/viewtopic-t-722765-start-0.html e.g., ./configure --with-gcc-arch=pentium4 You could try native and see if gcc gets it right. Still others say you should do: -march=corei7-avx -mtune=corei7-avx -mno-avx -mno-aes https://stackoverflow.com/questions/15576817/what-is-the-proper-architecture-specific-options-m-for-sandy-bridge-based-pen/35049035 which would require you to do ./configure --with-gcc-arch=corei7-avx and then add "-mno-avx -mno-aes" to your CFLAGS to remove support for the avx and aes instructions. Do let us know what you tried and how it turned out. Cheers, Mike -- http://lists.linuxfromscratch.org/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page Do not top post on this list. A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? http://en.wikipedia.org/wiki/Posting_style