2007-01-14-BreakCritEdges.ll 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. ; RUN: opt < %s -domtree -break-crit-edges -domtree -disable-output
  2. ; PR1110
  3. %struct.OggVorbis_File = type { i8*, i32, i64, i64, %struct.ogg_sync_state, i32, i64*, i64*, i32*, i64*, %struct.vorbis_info*, %struct.vorbis_comment*, i64, i32, i32, i32, double, double, %struct.ogg_stream_state, %struct.vorbis_dsp_state, %struct.vorbis_block, %struct.ov_callbacks }
  4. %struct.alloc_chain = type { i8*, %struct.alloc_chain* }
  5. %struct.ogg_stream_state = type { i8*, i32, i32, i32, i32*, i64*, i32, i32, i32, i32, [282 x i8], i32, i32, i32, i32, i32, i64, i64 }
  6. %struct.ogg_sync_state = type { i8*, i32, i32, i32, i32, i32, i32 }
  7. %struct.oggpack_buffer = type { i32, i32, i8*, i8*, i32 }
  8. %struct.ov_callbacks = type { i32 (i8*, i32, i32, i8*)*, i32 (i8*, i64, i32)*, i32 (i8*)*, i32 (i8*)* }
  9. %struct.vorbis_block = type { float**, %struct.oggpack_buffer, i32, i32, i32, i32, i32, i32, i64, i64, %struct.vorbis_dsp_state*, i8*, i32, i32, i32, %struct.alloc_chain*, i32, i32, i32, i32, i8* }
  10. %struct.vorbis_comment = type { i8**, i32*, i32, i8* }
  11. %struct.vorbis_dsp_state = type { i32, %struct.vorbis_info*, float**, float**, i32, i32, i32, i32, i32, i32, i32, i32, i32, i64, i64, i64, i64, i64, i64, i8* }
  12. %struct.vorbis_info = type { i32, i32, i32, i32, i32, i32, i32, i8* }
  13. define void @ov_read() {
  14. entry:
  15. br i1 false, label %bb, label %return
  16. bb: ; preds = %cond_next22, %entry
  17. br i1 false, label %cond_true8, label %cond_next15
  18. cond_true8: ; preds = %bb
  19. br i1 false, label %cond_next15, label %bb29
  20. cond_next15: ; preds = %cond_true8, %bb
  21. br i1 false, label %return, label %cond_next22
  22. cond_next22: ; preds = %cond_next15
  23. br i1 false, label %bb, label %return
  24. bb29: ; preds = %cond_true8
  25. br i1 false, label %cond_true32, label %return
  26. cond_true32: ; preds = %bb29
  27. br i1 false, label %cond_false37.i, label %cond_true.i11
  28. cond_true.i11: ; preds = %cond_true32
  29. br i1 false, label %cond_true8.i, label %ov_info.exit
  30. cond_true8.i: ; preds = %cond_true.i11
  31. br i1 false, label %cond_true44, label %cond_next48
  32. cond_false37.i: ; preds = %cond_true32
  33. br label %ov_info.exit
  34. ov_info.exit: ; preds = %cond_false37.i, %cond_true.i11
  35. br i1 false, label %cond_true44, label %cond_next48
  36. cond_true44: ; preds = %ov_info.exit, %cond_true8.i
  37. br label %cond_next48
  38. cond_next48: ; preds = %cond_true44, %ov_info.exit, %cond_true8.i
  39. br i1 false, label %cond_next53, label %return
  40. cond_next53: ; preds = %cond_next48
  41. br i1 false, label %cond_true56, label %cond_false97
  42. cond_true56: ; preds = %cond_next53
  43. br i1 false, label %bb85, label %cond_next304
  44. bb63: ; preds = %bb85
  45. br i1 false, label %cond_next78, label %cond_false73
  46. cond_false73: ; preds = %bb63
  47. br i1 false, label %cond_true76, label %cond_next78
  48. cond_true76: ; preds = %cond_false73
  49. br label %cond_next78
  50. cond_next78: ; preds = %cond_true76, %cond_false73, %bb63
  51. br label %bb85
  52. bb85: ; preds = %bb89, %cond_next78, %cond_true56
  53. br i1 false, label %bb63, label %bb89
  54. bb89: ; preds = %bb85
  55. br i1 false, label %bb85, label %cond_next304
  56. cond_false97: ; preds = %cond_next53
  57. br i1 false, label %cond_true108, label %bb248
  58. cond_true108: ; preds = %cond_false97
  59. br i1 false, label %bb196, label %bb149
  60. bb112: ; preds = %bb149, %bb146
  61. br i1 false, label %bb119, label %bb146
  62. bb119: ; preds = %cond_next134, %bb112
  63. br i1 false, label %cond_next134, label %cond_false129
  64. cond_false129: ; preds = %bb119
  65. br i1 false, label %cond_true132, label %cond_next134
  66. cond_true132: ; preds = %cond_false129
  67. br label %cond_next134
  68. cond_next134: ; preds = %cond_true132, %cond_false129, %bb119
  69. br i1 false, label %bb119, label %bb146
  70. bb146: ; preds = %cond_next134, %bb112
  71. br i1 false, label %bb112, label %cond_next304
  72. bb149: ; preds = %cond_true108
  73. br i1 false, label %bb112, label %cond_next304
  74. bb155: ; preds = %bb196, %bb193
  75. br i1 false, label %bb165, label %bb193
  76. bb165: ; preds = %cond_next180, %bb155
  77. br i1 false, label %cond_next180, label %cond_false175
  78. cond_false175: ; preds = %bb165
  79. br i1 false, label %cond_true178, label %cond_next180
  80. cond_true178: ; preds = %cond_false175
  81. br label %cond_next180
  82. cond_next180: ; preds = %cond_true178, %cond_false175, %bb165
  83. br i1 false, label %bb165, label %bb193
  84. bb193: ; preds = %cond_next180, %bb155
  85. br i1 false, label %bb155, label %cond_next304
  86. bb196: ; preds = %cond_true108
  87. br i1 false, label %bb155, label %cond_next304
  88. bb207: ; preds = %bb241
  89. br i1 false, label %cond_next225, label %cond_false220
  90. cond_false220: ; preds = %bb207
  91. br i1 false, label %cond_true223, label %cond_next225
  92. cond_true223: ; preds = %cond_false220
  93. br label %cond_next225
  94. cond_next225: ; preds = %cond_true223, %cond_false220, %bb207
  95. br label %bb241
  96. bb241: ; preds = %bb248, %bb245, %cond_next225
  97. br i1 false, label %bb207, label %bb245
  98. bb245: ; preds = %bb241
  99. br i1 false, label %bb241, label %cond_next304
  100. bb248: ; preds = %cond_false97
  101. br i1 false, label %bb241, label %cond_next304
  102. bb256: ; preds = %bb290
  103. br i1 false, label %cond_next274, label %cond_false269
  104. cond_false269: ; preds = %bb256
  105. br i1 false, label %cond_true272, label %cond_next274
  106. cond_true272: ; preds = %cond_false269
  107. br label %cond_next274
  108. cond_next274: ; preds = %cond_true272, %cond_false269, %bb256
  109. br label %bb290
  110. bb290: ; preds = %bb294, %cond_next274
  111. br i1 false, label %bb256, label %bb294
  112. bb294: ; preds = %bb290
  113. br i1 false, label %bb290, label %cond_next304
  114. cond_next304: ; preds = %bb294, %bb248, %bb245, %bb196, %bb193, %bb149, %bb146, %bb89, %cond_true56
  115. br i1 false, label %cond_next11.i, label %cond_true.i
  116. cond_true.i: ; preds = %cond_next304
  117. br i1 false, label %vorbis_synthesis_read.exit, label %cond_next11.i
  118. cond_next11.i: ; preds = %cond_true.i, %cond_next304
  119. br label %vorbis_synthesis_read.exit
  120. vorbis_synthesis_read.exit: ; preds = %cond_next11.i, %cond_true.i
  121. br i1 false, label %cond_next321, label %cond_true316
  122. cond_true316: ; preds = %vorbis_synthesis_read.exit
  123. ret void
  124. cond_next321: ; preds = %vorbis_synthesis_read.exit
  125. ret void
  126. return: ; preds = %cond_next48, %bb29, %cond_next22, %cond_next15, %entry
  127. ret void
  128. }