22 ms·
Precision Opportunities for Demanded Bits in LLVM
- rwmj 7y agoNice, but I wonder if applying an SMT solver to just about every instruction in your program isn't likely to blow up sometimes. The solver is, after all, worst case NP complete.
- yokaze 7y agoNot really, since the input of the solver is bounded by the native word size of the architecture.
- rwmj 7y agoIt still might try to do 2^64 operations then.
- CodesInChaos 7y agoCompilers don't need an exact solution, so they can always fall back to the simple heuristics based approach when the SMT based analysis is too expensive.
- hyperpape 7y agoThe previous post states that the goal is to use the SMT solver offline to identify opportunities for improving the compiler: https://blog.regehr.org/archives/1709 https://blog.regehr.org/archives/1709. Using the solver online isn't the goal.
- rurban 7y agoSolvers already can only step into smthg like 5 iterations of each loop. See klee or cbmc. This project is much easier, just a lot of insns.
- chrisseaton 7y agoDoes anyone know how do LLVM's demanded bits compare to 'stamps' in compilers like Graal?