X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=test%2FCodeGen%2FThumb2%2Fthumb2-tbh.ll;h=0761ed589a26691028e9890e66ba6c4743a37e27;hb=6948897e478cbd66626159776a8017b3c18579b9;hp=a5a5ed0c8da26c4538bb8a12ac93c37b3fc970e1;hpb=c3b0732900953dc4d8f68ce41da35f4760933bb3;p=android-x86%2Fexternal-llvm.git diff --git a/test/CodeGen/Thumb2/thumb2-tbh.ll b/test/CodeGen/Thumb2/thumb2-tbh.ll index a5a5ed0c8da..0761ed589a2 100644 --- a/test/CodeGen/Thumb2/thumb2-tbh.ll +++ b/test/CodeGen/Thumb2/thumb2-tbh.ll @@ -14,9 +14,19 @@ declare void @Z_fatal(i8*) noreturn nounwind declare noalias i8* @calloc(i32, i32) nounwind +; Jump tables are not anchored next to the TBB/TBH any more. Make sure the +; correct address is still calculated (i.e. via a PC-relative symbol *at* the +; TBB/TBH). define i32 @main(i32 %argc, i8** nocapture %argv) nounwind { ; CHECK-LABEL: main: -; CHECK: tbb +; CHECK-NOT: adr {{r[0-9]+}}, LJTI +; CHECK: [[PCREL_ANCHOR:LCPI[0-9]+_[0-9]+]]: +; CHECK-NEXT: tbb [pc, {{r[0-9]+}}] + +; CHECK: LJTI0_0: +; CHECK-NEXT: .data_region jt8 +; CHECK-NEXT: .byte (LBB{{[0-9]+_[0-9]+}}-([[PCREL_ANCHOR]]+4))/2 + entry: br label %bb42.i