On 29.03.2015 20:58, Matthias Schwarzott wrote: > Hi there! > > I updated my ~amd64 system recently to new hardware (Intel Core i3-4160). > Since then valgrind did no longer work for 32bit programs because > "-march=native" did choose instructions that valgrind does not support > in 32bit mode (even ld.so was unusable). > > After some research I put this into make.conf and now it works: > CFLAGS_x86="${CFLAGS_x86} -mno-avx2 -mno-sse4 -mno-bmi -mno-bmi2" > CXXFLAGS_x86="${CXXFLAGS_x86} -mno-avx2 -mno-sse4 -mno-bmi -mno-bmi2" > > Is this the best solution to the problem? > If yes, the valgrind ebuild could suggest something like this. > Either always show it or check cpu-flags first (is this maintainable?). > I should add, that it seems to break for exactly one package: mariadb
# file /usr/lib32/libmysqlclient.so.18.0.0 /usr/lib32/libmysqlclient.so.18.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped After commenting the flags again: # file /usr/lib32/libmysqlclient.so.18.0.0 /usr/lib32/libmysqlclient.so.18.0.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped Regards Matthias