SVF-tools / SVF

Static Value-Flow Analysis Framework for Source Code
http://svf-tools.github.io/SVF/
Other
1.41k stars 437 forks source link

Question about the time overhead of LLVMModuleSet::buildSymbolTable() #1573

Open learjet5 opened 3 hours ago

learjet5 commented 3 hours ago

I'm using SVF to analyze Linux kernel-6.5. The LLVM-version is 14.0.6. And the inputs include 2600+ .bc files.

At first, I'm using SVF-2.5 and everything goes well. It takes less than half an hour to build the PAG of the kernel code. However, after I migrated the code to SVF-2.9, it takes more than 10 hours for the LLVMModuleSet::buildSymbolTable() step.

I know SVF has been refactored since SVF-2.6. But I didn't figure out why there can be such a large difference in time overhead between the two versions. Thank you in advance for your response!

yuleisui commented 3 hours ago

Could you share us your bc file or provide a link to download?

@jumormt could you take a look at this?