XDEBUG build bots?

Hi All,

Are there any bots that do any testing with clang/llvm built with XDEBUG
(i.e. expensive checking)? I'm seeing 36 lit tests that currently hit
asserts that are checked when XDEBUG is enabled. The checks that I'm
hitting are:
- DominatorTree::verifyDomTree()
- DAGTypeLegalizer::PerformExpensiveChecks()
- SelectionDAG checkForCyclesHelper

Are these known issues or should I file bugs for them?

I don't believe we do. Adding one would be a good idea if anyone has a spare machine lying around...


This seems super bad :wink:
Have a testcase?

Yeah, they are just triggered by lit check tests. I’ll file some bugs today, though it looks like Quentin may have already filed bugs for some of these.

Bugs filed:

27488 librarie Scalar O NEW — [StructurizeCFG] lit test hits assert in verifyDomTree when compiled w/ XDEBUG 14:34:06
27487 librarie Scalar O NEW — [LoopVersioning] lit test hits invalid domtree assert w/ XDEBUG 14:31:56
27486 librarie Scalar O NEW — [InductiveRangeCheckElimination] invalidates domtree and hits asserts w/ XDEBUG 14:29:00
27485 librarie Backend: NEW — [X86] Codegen/X86/selectiondag-cse.ll hits assert when LLVM compiled with XDEBUG 14:13:03
27483 librarie Common C NEW — [SelectionDAG] LegalizeTypes hits asserts in PerformExpensiveChecks when compiled with XDEBUG 14:12:59
27484 librarie Backend: NEW — [ARM] Codegen/Thumb/segmented-stacks.ll hits assert when llvm compiled w/ XDEBUG

Thanks for noticing this, Geoff.

I just landed r268050 which add a cmake option for this (and unifies XDEBUG and EXPENSIVE_CHECKS). This might make it easier to setup some build bots.

Would it make sense to include -verify-machineinstrs into XDEBUG ad well?

I had a patch at some point that added a feature to lit that would always add the -verify-machineinstrs (unless disabled explicitely).
Test that wouldn’t pass were marked something like “XFAIL: verifymachineinstrs”, but it would prevent from adding new failing tests and we could move towards a totally verifier-clean suite.