Ken Moffat
2014-05-24 01:12:23 UTC
I haven't built i686 for ages - my last time was while testing 7.4,
for 7.5 there was nothing which I felt it would be useful for me to
test on that architecture. But all the recent LFS changes made me
decide to try it again. The machine is an AMD A4, and LFS itself
built ok.
But lame, even with
sed -i -e 's/fast-math/& -msse2/' configure
fails to build :
xmm_quantize_sub.c: In function 'init_xrpow_core_sse':
xmm_quantize_sub.c:65:18: warning: SSE vector return without SSE
enabled changes the ABI [-Wpsabi]
const __m128 vec_fabs_mask =
_mm_loadu_ps(&fabs_mask._float[0]);
^
In file included from xmm_quantize_sub.c:37:0:
/usr/lib/gcc/i686-pc-linux-gnu/4.9.0/include/xmmintrin.h:929:1:
error: inlining failed in call to always_inline '_mm_loadu_ps':
target specific option mismatch
_mm_loadu_ps (float const *__P)
^
That first warning made me wonder if the CPU was a bit lacking in
sse* support (ISTR some of the earlier athlon64 processors did not
have a full complement of sse{,2,3}. But /proc/cpuinfo shows -
vendor_id : AuthenticAMD
cpu family : 21
model : 16
model name : AMD A4-5300 APU with Radeon(tm) HD Graphics
...
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr
pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx
mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc nonstop_tsc
extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1
sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic
cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit
wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat
cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean
flushbyasid decodeassists pausefilter pfthreshold bmi1
which I think is all the information that matters, and it does
claim to support sse, sse2, sse3, and even sse4_2.
For the moment I've commented lame out, but I'm sure that
something, possibly ffmpeg, will want lame. Any other ideas about
fixing the gcc-4.9 problem on 32-bit ?
ĸen
for 7.5 there was nothing which I felt it would be useful for me to
test on that architecture. But all the recent LFS changes made me
decide to try it again. The machine is an AMD A4, and LFS itself
built ok.
But lame, even with
sed -i -e 's/fast-math/& -msse2/' configure
fails to build :
xmm_quantize_sub.c: In function 'init_xrpow_core_sse':
xmm_quantize_sub.c:65:18: warning: SSE vector return without SSE
enabled changes the ABI [-Wpsabi]
const __m128 vec_fabs_mask =
_mm_loadu_ps(&fabs_mask._float[0]);
^
In file included from xmm_quantize_sub.c:37:0:
/usr/lib/gcc/i686-pc-linux-gnu/4.9.0/include/xmmintrin.h:929:1:
error: inlining failed in call to always_inline '_mm_loadu_ps':
target specific option mismatch
_mm_loadu_ps (float const *__P)
^
That first warning made me wonder if the CPU was a bit lacking in
sse* support (ISTR some of the earlier athlon64 processors did not
have a full complement of sse{,2,3}. But /proc/cpuinfo shows -
vendor_id : AuthenticAMD
cpu family : 21
model : 16
model name : AMD A4-5300 APU with Radeon(tm) HD Graphics
...
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr
pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx
mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc nonstop_tsc
extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1
sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic
cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit
wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb arat
cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean
flushbyasid decodeassists pausefilter pfthreshold bmi1
which I think is all the information that matters, and it does
claim to support sse, sse2, sse3, and even sse4_2.
For the moment I've commented lame out, but I'm sure that
something, possibly ffmpeg, will want lame. Any other ideas about
fixing the gcc-4.9 problem on 32-bit ?
ĸen
--
das eine Mal als Tragödie, dieses Mal als Farce
das eine Mal als Tragödie, dieses Mal als Farce