das-labor / panopticon

A libre cross-platform disassembler.
https://panopticon.re
GNU General Public License v3.0
1.43k stars 80 forks source link

Cross checking RREIL code against the CPU #233

Closed flanfly closed 7 years ago

flanfly commented 7 years ago

Documentation for the AMD64 code generator and cross checking QuickCheck harness (enable w/ --features=cross-check-amd64) The harness depends on rappel: https://github.com/yrp604/rappel

coveralls commented 7 years ago

Coverage Status

Coverage increased (+0.4%) to 75.016% when pulling 7c08aa69494412f751b18374b819652cc9c1cf29 on flanfly:feature/xcheck-rreil into 19c0dc1963712627fb74aa5b22966c03311dd9aa on das-labor:master.

m4b commented 7 years ago

wow :+1: this is great for unit testing the semantic implementations! and thanks for adding the docs, much clearer now.

I've noticed I get several warnings like this:

/dev/fd/3:20: warning: word data exceeds bounds

Does this happen on your machine as well? I assume this is output from rappel

flanfly commented 7 years ago

Indeed it's rappel. It's something about how it expects immediate values above 2^(n-1) to be written. I think it wants -0x01 instead of 0xFF or something along those lines. It's save to ignore I think.