Also fix a couple bugs where DILocations are lost. EntryBuilder wasn't passing
on debug locations for PHI's, constants, GLOBAL_VALUE, etc.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
The verifier bits look great, I'll let someone else comment on the functionality changes. Thanks!
test/CodeGen/AArch64/GlobalISel/irtranslator-dilocation.ll | ||
---|---|---|
33 ↗ | (On Diff #171219) | It's probably safe to prune all of these out. |
lib/CodeGen/GlobalISel/IRTranslator.cpp | ||
---|---|---|
124 ↗ | (On Diff #171219) | I think this debug print is probably unnecessary given it'll print for every instruction translated (and without ASSERTIONS it won't actually do anything). |
1742 ↗ | (On Diff #171219) | This is unnecessary as Verifier goes out of scope immediately after? |
lib/CodeGen/GlobalISel/IRTranslator.cpp | ||
---|---|---|
124 ↗ | (On Diff #171219) | Yes I was suggesting removing it. AFAIK NDEBUG and assertions are independent of each other, so without assertions enabled this will print a message that doesn't actually check anything. Could be wrong about that. |
lib/CodeGen/GlobalISel/IRTranslator.cpp | ||
---|---|---|
124 ↗ | (On Diff #171219) | I'd prefer not to remove it as it was quite useful to see what DILocations were expected to go where when I was debugging the missing DILocations that are fixed in this patch. I do agree it should only print "Checking ..." when the checks are actually happening though.
The effects of LLVM_ENABLE_ASSERTIONS are achieved by adding -UNDEBUG and removing any -DNDEBUG from the standard build flags. The code for that is in HandleLLVMOptions.cmake |