Process valid SDDbgValues even if the node does not have any order assigned.

llvm-svn: 124301
This commit is contained in:
Devang Patel 2011-01-26 18:42:32 +00:00
parent 1448e7c8b6
commit 9d4eb2f480
1 changed files with 5 additions and 1 deletions

View File

@ -539,8 +539,12 @@ static void ProcessSourceNode(SDNode *N, SelectionDAG *DAG,
SmallVector<std::pair<unsigned, MachineInstr*>, 32> &Orders,
SmallSet<unsigned, 8> &Seen) {
unsigned Order = DAG->GetOrdering(N);
if (!Order || !Seen.insert(Order))
if (!Order || !Seen.insert(Order)) {
// Process any valid SDDbgValues even if node does not have any order
// assigned.
ProcessSDDbgValues(N, DAG, Emitter, Orders, VRBaseMap, 0);
return;
}
MachineBasicBlock *BB = Emitter.getBlock();
if (Emitter.getInsertPos() == BB->begin() || BB->back().isPHI()) {