From 193b585f1b153507a9a5d248ebfead6caf03577e Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Wed, 25 Apr 2007 00:35:37 +0000 Subject: New test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36416 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../2007-04-24-eliminate-mostly-empty-blocks.ll | 309 +++++++++++++++++++++ 1 file changed, 309 insertions(+) create mode 100644 test/Other/2007-04-24-eliminate-mostly-empty-blocks.ll (limited to 'test/Other/2007-04-24-eliminate-mostly-empty-blocks.ll') diff --git a/test/Other/2007-04-24-eliminate-mostly-empty-blocks.ll b/test/Other/2007-04-24-eliminate-mostly-empty-blocks.ll new file mode 100644 index 0000000..1bb8683 --- /dev/null +++ b/test/Other/2007-04-24-eliminate-mostly-empty-blocks.ll @@ -0,0 +1,309 @@ +;RUN: llvm-upgrade < %s | llvm-as | opt -codegenprepare -disable-output + +void @foo() { +entry: + br i1 false, label %cond_next31, label %cond_true + +cond_true: ; preds = %entry + br i1 false, label %cond_true19, label %cond_next31 + +cond_true19: ; preds = %cond_true + br i1 false, label %bb510, label %cond_next31 + +cond_next31: ; preds = %cond_true19, %cond_true, %entry + br i1 false, label %cond_true61, label %cond_next78 + +cond_true61: ; preds = %cond_next31 + br label %cond_next78 + +cond_next78: ; preds = %cond_true61, %cond_next31 + br i1 false, label %cond_true93, label %bb.preheader + +cond_true93: ; preds = %cond_next78 + br label %bb.preheader + +bb.preheader: ; preds = %cond_true93, %cond_next78 + %iftmp.11.0.ph.ph = phi i16 [ 0, %cond_true93 ], [ 0, %cond_next78 ] ; [#uses=1] + br label %bb + +bb: ; preds = %cond_next499, %bb.preheader + %n.1 = phi i16 [ %iftmp.11.0.ph.ph, %cond_next499 ], [ 0, %bb.preheader ] ; [#uses=0] + br i1 false, label %bb148.preheader, label %bb493 + +bb148.preheader: ; preds = %bb + br label %bb148 + +bb148: ; preds = %cond_next475, %bb148.preheader + br i1 false, label %cond_next175, label %bb184 + +cond_next175: ; preds = %bb148 + br i1 false, label %bb184, label %bb185 + +bb184: ; preds = %cond_next175, %bb148 + br label %bb185 + +bb185: ; preds = %bb184, %cond_next175 + br i1 false, label %bb420.preheader, label %cond_true198 + +bb420.preheader: ; preds = %bb185 + br label %bb420 + +cond_true198: ; preds = %bb185 + br i1 false, label %bb294, label %cond_next208 + +cond_next208: ; preds = %cond_true198 + br i1 false, label %cond_next249, label %cond_true214 + +cond_true214: ; preds = %cond_next208 + br i1 false, label %bb294, label %cond_next262 + +cond_next249: ; preds = %cond_next208 + br i1 false, label %bb294, label %cond_next262 + +cond_next262: ; preds = %cond_next249, %cond_true214 + br label %bb269 + +bb269: ; preds = %cond_next285, %cond_next262 + br i1 false, label %cond_next285, label %cond_true279 + +cond_true279: ; preds = %bb269 + br label %cond_next285 + +cond_next285: ; preds = %cond_true279, %bb269 + br i1 false, label %bb269, label %cond_next446.loopexit + +bb294: ; preds = %cond_next249, %cond_true214, %cond_true198 + br i1 false, label %cond_next336, label %cond_true301 + +cond_true301: ; preds = %bb294 + br i1 false, label %cond_false398, label %cond_true344 + +cond_next336: ; preds = %bb294 + br i1 false, label %cond_false398, label %cond_true344 + +cond_true344: ; preds = %cond_next336, %cond_true301 + br i1 false, label %cond_false381, label %cond_true351 + +cond_true351: ; preds = %cond_true344 + br label %cond_next387 + +cond_false381: ; preds = %cond_true344 + br label %cond_next387 + +cond_next387: ; preds = %cond_false381, %cond_true351 + br label %cond_next401 + +cond_false398: ; preds = %cond_next336, %cond_true301 + br label %cond_next401 + +cond_next401: ; preds = %cond_false398, %cond_next387 + br i1 false, label %cond_next475, label %cond_true453 + +bb420: ; preds = %cond_next434, %bb420.preheader + br i1 false, label %cond_next434, label %cond_true428 + +cond_true428: ; preds = %bb420 + br label %cond_next434 + +cond_next434: ; preds = %cond_true428, %bb420 + br i1 false, label %bb420, label %cond_next446.loopexit1 + +cond_next446.loopexit: ; preds = %cond_next285 + br label %cond_next446 + +cond_next446.loopexit1: ; preds = %cond_next434 + br label %cond_next446 + +cond_next446: ; preds = %cond_next446.loopexit1, %cond_next446.loopexit + br i1 false, label %cond_next475, label %cond_true453 + +cond_true453: ; preds = %cond_next446, %cond_next401 + br i1 false, label %cond_true458, label %cond_next475 + +cond_true458: ; preds = %cond_true453 + br label %cond_next475 + +cond_next475: ; preds = %cond_true458, %cond_true453, %cond_next446, %cond_next401 + br i1 false, label %bb493.loopexit, label %bb148 + +bb493.loopexit: ; preds = %cond_next475 + br label %bb493 + +bb493: ; preds = %bb493.loopexit, %bb + br i1 false, label %cond_next499, label %bb510.loopexit + +cond_next499: ; preds = %bb493 + br label %bb + +bb510.loopexit: ; preds = %bb493 + br label %bb510 + +bb510: ; preds = %bb510.loopexit, %cond_true19 + br i1 false, label %cond_next524, label %cond_true517 + +cond_true517: ; preds = %bb510 + br label %cond_next524 + +cond_next524: ; preds = %cond_true517, %bb510 + br i1 false, label %cond_next540, label %cond_true533 + +cond_true533: ; preds = %cond_next524 + br label %cond_next540 + +cond_next540: ; preds = %cond_true533, %cond_next524 + br i1 false, label %cond_true554, label %cond_next560 + +cond_true554: ; preds = %cond_next540 + br label %cond_next560 + +cond_next560: ; preds = %cond_true554, %cond_next540 + br i1 false, label %cond_true566, label %cond_next572 + +cond_true566: ; preds = %cond_next560 + br label %cond_next572 + +cond_next572: ; preds = %cond_true566, %cond_next560 + br i1 false, label %bb608.preheader, label %bb791.preheader + +bb608.preheader: ; preds = %cond_next797.us, %cond_next572 + br label %bb608 + +bb608: ; preds = %cond_next771, %bb608.preheader + br i1 false, label %cond_false627, label %cond_true613 + +cond_true613: ; preds = %bb608 + br label %cond_next640 + +cond_false627: ; preds = %bb608 + br label %cond_next640 + +cond_next640: ; preds = %cond_false627, %cond_true613 + br i1 false, label %cond_true653, label %cond_next671 + +cond_true653: ; preds = %cond_next640 + br label %cond_next671 + +cond_next671: ; preds = %cond_true653, %cond_next640 + br i1 false, label %cond_true683, label %cond_next724 + +cond_true683: ; preds = %cond_next671 + br i1 false, label %cond_next724, label %L1 + +cond_next724: ; preds = %cond_true683, %cond_next671 + br i1 false, label %cond_true735, label %L1 + +cond_true735: ; preds = %cond_next724 + br label %L1 + +L1: ; preds = %cond_true735, %cond_next724, %cond_true683 + br i1 false, label %cond_true745, label %cond_next771 + +cond_true745: ; preds = %L1 + br label %cond_next771 + +cond_next771: ; preds = %cond_true745, %L1 + br i1 false, label %bb608, label %bb791.preheader.loopexit + +bb791.preheader.loopexit: ; preds = %cond_next771 + br label %bb791.preheader + +bb791.preheader: ; preds = %bb791.preheader.loopexit, %cond_next572 + br i1 false, label %cond_next797.us, label %bb809.split + +cond_next797.us: ; preds = %bb791.preheader + br label %bb608.preheader + +bb809.split: ; preds = %bb791.preheader + br i1 false, label %cond_next827, label %cond_true820 + +cond_true820: ; preds = %bb809.split + br label %cond_next827 + +cond_next827: ; preds = %cond_true820, %bb809.split + br i1 false, label %cond_true833, label %cond_next840 + +cond_true833: ; preds = %cond_next827 + br label %cond_next840 + +cond_next840: ; preds = %cond_true833, %cond_next827 + br i1 false, label %bb866, label %bb1245 + +bb866: ; preds = %bb1239, %cond_next840 + br i1 false, label %cond_true875, label %bb911 + +cond_true875: ; preds = %bb866 + br label %cond_next1180 + +bb911: ; preds = %bb866 + switch i32 0, label %bb1165 [ + i32 0, label %bb915 + i32 1, label %bb932 + i32 2, label %bb941 + i32 3, label %bb1029 + i32 4, label %bb1036 + i32 5, label %bb1069 + i32 6, label %L3 + ] + +bb915: ; preds = %cond_next1171, %bb911 + br i1 false, label %cond_next1171, label %cond_next1180 + +bb932: ; preds = %cond_next1171, %bb911 + br label %L1970 + +bb941: ; preds = %cond_next1171, %bb911 + br label %L1970 + +L1970: ; preds = %bb941, %bb932 + br label %bb1165 + +bb1029: ; preds = %cond_next1171, %bb911 + br label %L4 + +bb1036: ; preds = %cond_next1171, %bb911 + br label %L4 + +bb1069: ; preds = %cond_next1171, %bb911 + br i1 false, label %cond_next1121, label %cond_true1108 + +L3: ; preds = %cond_next1171, %bb911 + br i1 false, label %cond_next1121, label %cond_true1108 + +cond_true1108: ; preds = %L3, %bb1069 + br label %L4 + +cond_next1121: ; preds = %L3, %bb1069 + br label %L4 + +L4: ; preds = %cond_next1121, %cond_true1108, %bb1036, %bb1029 + br label %bb1165 + +bb1165: ; preds = %cond_next1171, %L4, %L1970, %bb911 + br i1 false, label %cond_next1171, label %cond_next1180 + +cond_next1171: ; preds = %bb1165, %bb915 + switch i32 0, label %bb1165 [ + i32 0, label %bb915 + i32 1, label %bb932 + i32 2, label %bb941 + i32 3, label %bb1029 + i32 4, label %bb1036 + i32 5, label %bb1069 + i32 6, label %L3 + ] + +cond_next1180: ; preds = %bb1165, %bb915, %cond_true875 + br label %bb1239 + +bb1239: ; preds = %cond_next1251, %cond_next1180 + br i1 false, label %bb866, label %bb1245 + +bb1245: ; preds = %bb1239, %cond_next840 + br i1 false, label %cond_next1251, label %bb1257 + +cond_next1251: ; preds = %bb1245 + br label %bb1239 + +bb1257: ; preds = %bb1245 + ret void +} -- cgit v1.1