[GCov] Emit memset instead of stores in __llvm_gcov_reset
For a very large module, __llvm_gcov_reset can become very large. __llvm_gcov_reset previously emitted stores to a bunch of globals in one huge basic block. MemCpyOpt would turn many of these stores into memsets, and updating MemorySSA would be extremely slow. Verified that this makes the compile time of certain files go down drastically (20min -> 5min). Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D107538
Loading
Please sign in to comment