This PR enables fcd to build under llvm-3.5 up to llvm-5.0, creates a new README.md and generally clean's up the codebase a bit by trimming off unneeded code, mostly bitcode transformation passes that were dependent on bitcode structure of the original fcd.
Good thing to note is that when adaptors in fcd/compat/ were not enough, explicit #ifdef style macros were used to modify the source code. This was mostly necessary in original fcd code. It's not ideal, but this code will need a refactor anyway so I didn't invest a lot of time and thought to finding a cleaner solution.
The README.md is mostly stolen from McSema and Remill.
This PR enables fcd to build under llvm-3.5 up to llvm-5.0, creates a new README.md and generally clean's up the codebase a bit by trimming off unneeded code, mostly bitcode transformation passes that were dependent on bitcode structure of the original fcd.
Good thing to note is that when adaptors in
fcd/compat/
were not enough, explicit#ifdef
style macros were used to modify the source code. This was mostly necessary in original fcd code. It's not ideal, but this code will need a refactor anyway so I didn't invest a lot of time and thought to finding a cleaner solution.The README.md is mostly stolen from McSema and Remill.