1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=armv7-apple-ios8.0 -o - %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker%BigInt = type i5500 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdefine %BigInt @test_moved_jumptable(i1 %tst, i32 %sw, %BigInt %l) { 6*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_moved_jumptable: 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker; CHECK: adr {{r[0-9]+}}, [[JUMP_TABLE:LJTI[0-9]+_[0-9]+]] 9*9880d681SAndroid Build Coastguard Worker; CHECK: b [[SKIP_TABLE:LBB[0-9]+_[0-9]+]] 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker; CHECK: [[JUMP_TABLE]]: 12*9880d681SAndroid Build Coastguard Worker; CHECK: .data_region jt32 13*9880d681SAndroid Build Coastguard Worker; CHECK: .long LBB{{[0-9]+_[0-9]+}}-[[JUMP_TABLE]] 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Worker; CHECK: [[SKIP_TABLE]]: 16*9880d681SAndroid Build Coastguard Worker; CHECK: add pc, {{r[0-9]+}}, {{r[0-9]+}} 17*9880d681SAndroid Build Coastguard Worker br i1 %tst, label %simple, label %complex 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workersimple: 20*9880d681SAndroid Build Coastguard Worker br label %end 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workercomplex: 23*9880d681SAndroid Build Coastguard Worker switch i32 %sw, label %simple [ i32 0, label %other 24*9880d681SAndroid Build Coastguard Worker i32 1, label %third 25*9880d681SAndroid Build Coastguard Worker i32 5, label %end 26*9880d681SAndroid Build Coastguard Worker i32 6, label %other ] 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Workerthird: 29*9880d681SAndroid Build Coastguard Worker ret %BigInt 0 30*9880d681SAndroid Build Coastguard Worker 31*9880d681SAndroid Build Coastguard Workerother: 32*9880d681SAndroid Build Coastguard Worker call void @bar() 33*9880d681SAndroid Build Coastguard Worker unreachable 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Workerend: 36*9880d681SAndroid Build Coastguard Worker %val = phi %BigInt [ %l, %complex ], [ -1, %simple ] 37*9880d681SAndroid Build Coastguard Worker ret %BigInt %val 38*9880d681SAndroid Build Coastguard Worker} 39*9880d681SAndroid Build Coastguard Worker 40*9880d681SAndroid Build Coastguard Workerdeclare void @bar() 41