Description
Bugzilla Link | 28222 |
Version | trunk |
OS | Windows NT |
Depends On | #38383 #43973 #49312 |
Blocks | #33939 |
CC | @ahmedbougacha,@llvm-beanz,@topperc,@davidchisnall,@jryans,@kparzysz-quic,@RKSimon,@MatzeB,@cooperp,@sanjoy |
Extended Description
I'm filing this bug because I bothered to build LLVM in debug mode on Windows, and it's ridiculously slow. This has been a persistent problem across LLVM's entire history, and many people have attempted to solve it, but it still persists. Currently we have LLVM_OPTIMIZED_TABLEGEN
, but this is off by default and doesn't play well with ninja
.
I think we need should solve this by building lib/Support
in both release and debug configurations when we detect that the user is building in a debug configuration. The release version of support would be linked into llvm-tblgen
. We would also optimize the code in lib/TableGen
, which changes infrequently and doesn't need to be debugged very often. We would also disable things like debug iterator checks to make these libraries faster.
We'd probably disable this complexity in an "expensive checks" build. We also don't want to do this when the user is already doing a release build, since it increases the total compilation work.