@@ -144,6 +144,11 @@ UseMBPI("use-mbpi",
144144        cl::init(true ), cl::Hidden);
145145
146146#ifndef  NDEBUG
147+ static  cl::opt<bool >
148+     DumpSortedDAG (" dump-sorted-dags" 
149+                   cl::desc (" Print DAGs with sorted nodes in debug dump" 
150+                   cl::init(false ));
151+ 
147152static  cl::opt<std::string>
148153FilterDAGBasicBlockName (" filter-view-dags" 
149154                        cl::desc (" Only display the basic block whose name " 
@@ -932,7 +937,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
932937  ISEL_DUMP (dbgs () << " \n Initial selection DAG: " 
933938                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
934939                   << " '\n " 
935-             CurDAG->dump ());
940+             CurDAG->dump (DumpSortedDAG ));
936941
937942#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
938943  if  (TTI->hasBranchDivergence ())
@@ -952,7 +957,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
952957  ISEL_DUMP (dbgs () << " \n Optimized lowered selection DAG: " 
953958                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
954959                   << " '\n " 
955-             CurDAG->dump ());
960+             CurDAG->dump (DumpSortedDAG ));
956961
957962#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
958963  if  (TTI->hasBranchDivergence ())
@@ -974,7 +979,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
974979  ISEL_DUMP (dbgs () << " \n Type-legalized selection DAG: " 
975980                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
976981                   << " '\n " 
977-             CurDAG->dump ());
982+             CurDAG->dump (DumpSortedDAG ));
978983
979984#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
980985  if  (TTI->hasBranchDivergence ())
@@ -998,7 +1003,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
9981003    ISEL_DUMP (dbgs () << " \n Optimized type-legalized selection DAG: " 
9991004                     << printMBBReference (*FuncInfo->MBB ) << "  '" 
10001005                     << " '\n " 
1001-               CurDAG->dump ());
1006+               CurDAG->dump (DumpSortedDAG ));
10021007
10031008#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10041009    if  (TTI->hasBranchDivergence ())
@@ -1016,7 +1021,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
10161021    ISEL_DUMP (dbgs () << " \n Vector-legalized selection DAG: " 
10171022                     << printMBBReference (*FuncInfo->MBB ) << "  '" 
10181023                     << " '\n " 
1019-               CurDAG->dump ());
1024+               CurDAG->dump (DumpSortedDAG ));
10201025
10211026#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10221027    if  (TTI->hasBranchDivergence ())
@@ -1032,7 +1037,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
10321037    ISEL_DUMP (dbgs () << " \n Vector/type-legalized selection DAG: " 
10331038                     << printMBBReference (*FuncInfo->MBB ) << "  '" 
10341039                     << " '\n " 
1035-               CurDAG->dump ());
1040+               CurDAG->dump (DumpSortedDAG ));
10361041
10371042#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10381043    if  (TTI->hasBranchDivergence ())
@@ -1052,7 +1057,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
10521057    ISEL_DUMP (dbgs () << " \n Optimized vector-legalized selection DAG: " 
10531058                     << printMBBReference (*FuncInfo->MBB ) << "  '" 
10541059                     << " '\n " 
1055-               CurDAG->dump ());
1060+               CurDAG->dump (DumpSortedDAG ));
10561061
10571062#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10581063    if  (TTI->hasBranchDivergence ())
@@ -1072,7 +1077,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
10721077  ISEL_DUMP (dbgs () << " \n Legalized selection DAG: " 
10731078                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
10741079                   << " '\n " 
1075-             CurDAG->dump ());
1080+             CurDAG->dump (DumpSortedDAG ));
10761081
10771082#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10781083  if  (TTI->hasBranchDivergence ())
@@ -1092,7 +1097,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
10921097  ISEL_DUMP (dbgs () << " \n Optimized legalized selection DAG: " 
10931098                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
10941099                   << " '\n " 
1095-             CurDAG->dump ());
1100+             CurDAG->dump (DumpSortedDAG ));
10961101
10971102#if  !defined(NDEBUG) && LLVM_ENABLE_ABI_BREAKING_CHECKS
10981103  if  (TTI->hasBranchDivergence ())
@@ -1116,7 +1121,7 @@ void SelectionDAGISel::CodeGenAndEmitDAG() {
11161121  ISEL_DUMP (dbgs () << " \n Selected selection DAG: " 
11171122                   << printMBBReference (*FuncInfo->MBB ) << "  '" 
11181123                   << " '\n " 
1119-             CurDAG->dump ());
1124+             CurDAG->dump (DumpSortedDAG ));
11201125
11211126  if  (ViewSchedDAGs && MatchFilterBB)
11221127    CurDAG->viewGraph (" scheduler input for " 
0 commit comments