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

Reply via email to