On Mon, Nov 28, 2016 at 5:29 PM, Danny Wilson <da...@torquevideo.tv> wrote:

> On 28/11/2016, at 8:07 PM, Alex Bligh wrote:
> >
> >> On 27 Nov 2016, at 16:09, Danny Wilson <da...@torquevideo.tv> wrote:
> >>
> >> The target machines uses an i5 CPU but the build machine is a core2 duo
> which is why I chose 'native'.  Not sure that was the right choice but it
> works (without Valgrind).
> >>
> >> I've just tried -march as 'native', 'core2', and 'pentiumpro'.  All
> have the same result.
> >
> > Tried building the application, or tried building the standard library?
> I think you said it was the latter where the illegal instructions were.
> >
> > Your distribution might (or might not) have a pentium-pro compatible
> version for install. That should not have AVX instructions in (I would have
> thought)
> > --
> > Alex Bligh
>
> Hi Alex, rebuilding the standard libraries is a little beyond our scope
> (and I'd figure it unlikely that such a basic function of the c++ library
> had a memory leak.  Something like that would be well published).  As Tom
> pointed out, it could also be from a std template compiled in from my
> program.
>
> Good question now is how to disable generation of the unsupported
> instructions...
>
>
Based upon your prior report showing the illegal instruction associated
with std:tr1 code (re-included below), I recommend you build GCC from
source so that your C++ standard library is compiled with generic
instructions.  Building GCC sounds daunting but I do it all the time.  My
poorly curated notes are https://github.com/jeffhammond/HPCInfo/wiki/GCC if
you like to copy+paste from the internet :-)

Best,

Jeff

vex x86->IR: unhandled instruction bytes: 0xC5 0xF9 0x6E 0x45
==29426== valgrind: Unrecognised instruction at address 0x406ae5a.
==29426==    at 0x406AE5A: std::tr1::__detail::_Prime_
rehash_policy::_M_next_bkt(unsigned int) const (hashtable_policy.h:460)
==29426==    by 0x4353724: std::tr1::_Hashtable<DvDbDataBaseObject*,
DvDbDataBaseObject*, std::allocator<DvDbDataBaseObject*>,
std::_Identity<DvDbDataBaseObject*>,
equalp<DvDbDataBaseObject>, DvDbDataBaseObject::Hash,
std::tr1::__detail::_Mod_range_hashing,
std::tr1::__detail::_Default_ranged_hash,
std::tr1::__detail::_Prime_rehash_policy, false, true,
true>::_Hashtable(unsigned int, DvDbDataBaseObject::Hash const&,
std::tr1::__detail::_Mod_range_hashing const&,
std::tr1::__detail::_Default_ranged_hash
const&, equalp<DvDbDataBaseObject> const&, std::_Identity<DvDbDa



-- 
Jeff Hammond
jeff.scie...@gmail.com
http://jeffhammond.github.io/
------------------------------------------------------------------------------
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to