SelectionDAG: Remove #if NDEBUG from check for a post-isel hook
authorTom Stellard <thomas.stellard@amd.com>
Thu, 25 Sep 2014 18:59:22 +0000 (18:59 +0000)
committerTom Stellard <thomas.stellard@amd.com>
Thu, 25 Sep 2014 18:59:22 +0000 (18:59 +0000)
The InstrEmitter will skip the check of MI.hasPostISelHook()
before calling AdjustInstrPostInstrSelection() when NDEBUG
is not defined.

This was added in r140228, and I'm not sure if it is intentional or not,
but it is a likely source for bugs, because it means with
Release+Asserts builds you can forget to set the hasPostISelHook
flag on TableGen definitions and AdjustInstrPostInstrSelection() will
still be called.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218458 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/InstrEmitter.cpp

index 6661aca6feba24fa1e98bff9922ef367ab5db032..4d6de12161cc39a7b67aca0e2996059afbe87530 100644 (file)
@@ -865,9 +865,7 @@ EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned,
     MIB->setPhysRegsDeadExcept(UsedRegs, *TRI);
 
   // Run post-isel target hook to adjust this instruction if needed.
-#ifdef NDEBUG
   if (II.hasPostISelHook())
-#endif
     TLI->AdjustInstrPostInstrSelection(MIB, Node);
 }