diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-03-28 23:02:18 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-03-28 23:02:18 +0000 |
commit | 2d930db24f1d44a9d68c90cb7a1a58e76abd40da (patch) | |
tree | 261494a0eabcb3420fb3f25c73451ccbd669ab06 /test | |
parent | a7b8c2b6a416052bd7b48d3c0d702d266c6ac3a2 (diff) |
In some cases, the "fail BB dominator" may be null after the BB was split (and
becomes reachable when before it wasn't). Check to make sure that it's not null
before trying to use it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128434 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/CodeGen/X86/crash.ll | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/test/CodeGen/X86/crash.ll b/test/CodeGen/X86/crash.ll index 2d8e63e313..7c4e64cdf6 100644 --- a/test/CodeGen/X86/crash.ll +++ b/test/CodeGen/X86/crash.ll @@ -189,7 +189,7 @@ for.inc44: ; preds = %for.body } ; PR9028 -define void @f(i64 %A) nounwind { +define void @func_60(i64 %A) nounwind { entry: %0 = zext i64 %A to i160 %1 = shl i160 %0, 64 @@ -199,3 +199,19 @@ entry: store i576 %4, i576* undef, align 8 ret void } + +; <rdar://problem/9187792> +define fastcc void @func_61() nounwind sspreq { +entry: + %t1 = tail call i64 @llvm.objectsize.i64(i8* undef, i1 false) + %t2 = icmp eq i64 %t1, -1 + br i1 %t2, label %bb2, label %bb1 + +bb1: + ret void + +bb2: + ret void +} + +declare i64 @llvm.objectsize.i64(i8*, i1) nounwind readnone |