diffkemp
diffkemp copied to clipboard
Long duration of generate phase because of symbol lookup by use
Currently, DiffKemp tries to compile all files where a symbol is used and looks for it in the generated LLVM IR in cases when the compilation of the file containing the definition fails for some reason.
In the case of some sources (like mutex_lock in 2.6.32-696.el6), this can take a few minutes, which would become a significant delay when there are multiple symbols behaving like that.
The best solution I currently have is skipping the compilation of other sources when a definition in a non-header file is found. This however causes some problem with finding sources containing global variables, whose comparison is not fully implemented yet, therefore the resolution of this issue will be probably postponed after #79 is resolved.
This now seems to also affect the compare phase (after the implementation of using the kernel directory to look for missing definitions).