https://bugs.kde.org/show_bug.cgi?id=369264

            Bug ID: 369264
           Summary: Fedora 24 i686 and vex x86->IR: unhandled instruction
                    bytes: 0xC5 0xF8 0x10 0x3
           Product: valgrind
           Version: 3.12 SVN
          Platform: Other
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: vex
          Assignee: jsew...@acm.org
          Reporter: noloa...@gmail.com

I'm working from Fedora 24 i686 fully patched. I also built Valgrind from SVN
sources. Finally, I'm running Wei Dai's Crypto++ program under Valgrind.

My apologies if this has been reported. Searching for "All" bugs under product
"Valgrind" for the string "0xC5 0xF8 0x10 0x3" returned 0 hits.

$ g++ --version
g++ (GCC) 5.3.1 20160406 (Red Hat 5.3.1-6)
Copyright (C) 2015 Free Software Foundation, Inc.

$ /usr/local/bin/valgrind ./cryptest.exe v
==9138== Memcheck, a memory error detector
==9138== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==9138== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright info
==9138== Command: ./cryptest.exe v
==9138== 
Using seed: 1474674382      
...

MD2 validation suite running...

vex x86->IR: unhandled instruction bytes: 0xC5 0xF8 0x10 0x3
==9138== valgrind: Unrecognised instruction at address 0x821642c.
==9138==    at 0x821642C: CryptoPP::Weak1::MD2::Update(unsigned char const*,
unsigned int) (md2.cpp:74)
==9138==    by 0x82167A1: CryptoPP::Weak1::MD2::TruncatedFinal(unsigned char*,
unsigned int) (md2.cpp:112)
==9138==    by 0x805699F: CryptoPP::HashTransformation::Final(unsigned char*)
(cryptlib.h:964)
==9138==    by 0x8101246: HashModuleTest(CryptoPP::HashTransformation&,
HashTestTuple const*, unsigned int) (validat3.cpp:82)
==9138==    by 0x8101963: ValidateMD2() (validat3.cpp:173)
==9138==    by 0x80B255F: ValidateAll(bool) (validat1.cpp:97)
==9138==    by 0x80551F1: Validate(int, bool, char const*) (test.cpp:894)
==9138==    by 0x804F57D: main (test.cpp:360)
==9138== Your program just tried to execute an instruction that Valgrind
==9138== did not recognise.  There are two possible reasons for this.
==9138== 1. Your program has a bug and erroneously jumped to a non-code
==9138==    location.  If you are running Memcheck and you just saw a
==9138==    warning about a bad jump, it's probably your program's fault.
==9138== 2. The instruction is legitimate but Valgrind doesn't handle it,
==9138==    i.e. it's Valgrind's fault.  If you think this is the case or
==9138==    you are not sure, please let us know and we'll try to fix it.
==9138== Either way, Valgrind will now raise a SIGILL signal which will
==9138== probably kill your program.
==9138== 
==9138== Process terminating with default action of signal 4 (SIGILL)
==9138==  Illegal opcode at address 0x821642C
==9138==    at 0x821642C: CryptoPP::Weak1::MD2::Update(unsigned char const*,
unsigned int) (md2.cpp:74)
==9138==    by 0x82167A1: CryptoPP::Weak1::MD2::TruncatedFinal(unsigned char*,
unsigned int) (md2.cpp:112)
==9138==    by 0x805699F: CryptoPP::HashTransformation::Final(unsigned char*)
(cryptlib.h:964)
==9138==    by 0x8101246: HashModuleTest(CryptoPP::HashTransformation&,
HashTestTuple const*, unsigned int) (validat3.cpp:82)
==9138==    by 0x8101963: ValidateMD2() (validat3.cpp:173)
==9138==    by 0x80B255F: ValidateAll(bool) (validat1.cpp:97)
==9138==    by 0x80551F1: Validate(int, bool, char const*) (test.cpp:894)
==9138==    by 0x804F57D: main (test.cpp:360)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to