mseaborn / x86-decoder

A DFA-based x86-32 validator for Native Client
BSD 3-Clause "New" or "Revised" License
13 stars 3 forks source link

Cross-check failed #1

Open krasin opened 13 years ago

krasin commented 13 years ago

krasin@krasin7:~/x86-decoder$ make python generator.py [+0.000s] 0.000s: Building trie... [+0.000s] 0.000s: Core instructions... [+0.210s] 0.210s: Merge... [+0.050s] 0.260s: Memory access instructions... [+0.005s] 0.265s: Merge... [+0.000s] 0.265s: Locked instructions... [+0.012s] 0.276s: Merge... [+0.002s] 0.278s: Merge... [+0.000s] 0.278s: Size: [+0.071s] 0.349s: 1313310 [+0.000s] 0.350s: Node count: [+0.041s] 0.391s: 60554 [+0.000s] 0.391s: Building test subset... [+0.093s] 0.484s: Testing... Checking 1009 instructions... Mismatch (360): 'push VALUE16' != 'pushw VALUE16' ('pushw 0x1111') (66 68 XX XX) Mismatch (363): 'data16 push VALUE8' != 'pushw VALUE8' ('pushw 0x11') (66 6a XX) Mismatch (450): 'data16 leave' != 'leavew' ('leavew') (66 c9) Traceback (most recent call last): File "generator.py", line 1033, in Main() File "generator.py", line 999, in Main objdump_check.DisassembleTest(lambda: GetAll(filtered_trie), bits=32) File "/home/krasin/x86-decoder/objdump_check.py", line 116, in DisassembleTest DisassembleTestCallback(Func, bits) File "/home/krasin/x86-decoder/objdump_check.py", line 33, in DisassembleTestCallback CrossCheck('tmp.o', 'tmp.list') File "/home/krasin/x86-decoder/objdump_check.py", line 109, in CrossCheck raise Exception('Cross check failed') Exception: Cross check failed make: *\ [x86_32.trie] Error 1

krasin commented 13 years ago

krasin@krasin7:~/x86-decoder$ python --version Python 2.7.1+

mseaborn commented 13 years ago

objdump's disassembly output must have changed. What version of binutils are you using? I'm using Ubuntu Lucid:

$ objdump --version GNU objdump (GNU Binutils for Ubuntu) 2.20.1-system.20100303

I suppose I should separate the testing from the building.

krasin commented 13 years ago

krasin@krasin7:~/x86-decoder$ objdump --version GNU objdump (GNU Binutils) 2.21.53.20110828 Copyright 2011 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) any later version. This program has absolutely no warranty.