ChuanqiXu9 wrote: > > what the code does is: when we write a on-disk hash table, try to write the > > imported merged hash table in the same process so that we don't need to > > read these tables again. However, in line 329 the function will try to omit > > the data from imported table with the same key which already emitted by the > > current module file. This is the root cause of the problem. > > It's been a while since I looked at this, but as I recall, a fundamental > assumption of MultiOnDiskHashTable is that if we have a lookup result for a > key K in the current file, that result supersedes any results from dependency > files. So lookup won't look in those files if we have a local result (they > are overridden) and merging doesn't take results from those files either. > > So I think the problem probably is that when we form a local result, we need > to (but presumably don't) add all the imported results with the same key to > the local result.
Thanks for the insight! I didn't known this. I'll try to make it. https://github.com/llvm/llvm-project/pull/83237 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits