1; RUN: llc -filetype=obj -o /dev/null < %s 2; RUN: llc -filetype=asm < %s | FileCheck %s 3 4; ModuleID = 'bugpoint-reduced-simplified.bc' 5source_filename = "bugpoint-output-39ed676.bc" 6target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" 7target triple = "thumbv8m.base-arm-none-eabi" 8 9@crc32_tab = external unnamed_addr global [256 x i32], align 4 10@g_566 = external global i32**, align 4 11 12define void @main() { 13entry: 14 %0 = load volatile i32**, i32*** @g_566, align 4 15 br label %func_16.exit.i.i.i 16 17lbl_1394.i.i.i.loopexit: ; preds = %for.cond14.preheader.us.i.i.i 18 unreachable 19 20func_16.exit.i.i.i: ; preds = %entry 21 br i1 undef, label %for.cond7.preheader.i.lr.ph.i.i, label %for.end476.i.i.i.loopexit 22 23for.cond7.preheader.i.lr.ph.i.i: ; preds = %func_16.exit.i.i.i 24 br i1 undef, label %for.end476.i.i.i.loopexit, label %for.cond7.preheader.i.i.preheader.i 25 26for.cond7.preheader.i.i.preheader.i: ; preds = %for.cond7.preheader.i.lr.ph.i.i 27 br label %for.cond14.preheader.us.i.i.i 28 29for.cond7.preheader.i.us.i.i: ; preds = %for.cond7.preheader.i.lr.ph.i.i 30 unreachable 31 32for.cond14.preheader.us.i.i.i: ; preds = %for.inc459.us.i.i.i, %for.cond7.preheader.i.i.preheader.i 33; CHECK: @ %bb.4 34; CHECK-NEXT: .p2align 2 35 switch i4 undef, label %func_1.exit.loopexit [ 36 i4 0, label %for.inc459.us.i.i.i 37 i4 -5, label %for.inc459.us.i.i.i 38 i4 2, label %lbl_1394.i.i.i.loopexit 39 i4 3, label %for.end476.i.i.i.loopexit 40 ] 41 42for.inc459.us.i.i.i: ; preds = %for.cond14.preheader.us.i.i.i, %for.cond14.preheader.us.i.i.i 43 br label %for.cond14.preheader.us.i.i.i 44 45for.end476.i.i.i.loopexit: ; preds = %for.cond14.preheader.us.i.i.i 46 unreachable 47 48func_1.exit.loopexit: ; preds = %for.cond14.preheader.us.i.i.i 49 %arrayidx.i63.i.i5252 = getelementptr inbounds [256 x i32], [256 x i32]* @crc32_tab, i32 0, i32 undef 50 unreachable 51} 52