Refactor fcd's call convention detection
surovic opened this issue · comments
Fcd currently uses a lot of dirty hacks in it's call convention detection IR passes and classes. Notable examples include wrapping an Executable
class object in an LLVM ImmutablePass
and having ParameterRegistryPass
be dependent on it for target information. This shouldn't really be necessary or desirable. Also generally there seems to be a lot of unused and possibly obsoleted code.
Turned out that it was just easier to reimplement this using remill's functionality. So far the calling convention used is given by the target architecture and OS, with no option to change this. Fcd's --cc
flag should be reenabled.