diff options
author | Devang Patel <dpatel@apple.com> | 2009-01-19 21:00:48 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2009-01-19 21:00:48 +0000 |
commit | b11cdb3db7b5102c8a6a8fbf2a095efea6003767 (patch) | |
tree | f0a1ff832cb982865c53e4a350ba1b7d7d202380 | |
parent | b41cbd325d707a2d7aad9e599f3dcbcb73f7271c (diff) | |
download | external_llvm-b11cdb3db7b5102c8a6a8fbf2a095efea6003767.zip external_llvm-b11cdb3db7b5102c8a6a8fbf2a095efea6003767.tar.gz external_llvm-b11cdb3db7b5102c8a6a8fbf2a095efea6003767.tar.bz2 |
Verify Intrinsic::dbg_declare.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62526 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/VMCore/Verifier.cpp | 5 | ||||
-rw-r--r-- | test/CodeGen/Generic/2006-03-27-DebugInfoNULLDeclare.ll | 9 | ||||
-rw-r--r-- | test/DebugInfo/2009-01-15-dbg_declare.ll | 4 |
3 files changed, 8 insertions, 10 deletions
diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index 790a994..384aa3e 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -1332,6 +1332,11 @@ void Verifier::visitIntrinsicFunctionCall(Intrinsic::ID ID, CallInst &CI) { switch (ID) { default: break; + case Intrinsic::dbg_declare: // llvm.dbg.declare + if (Constant *C = dyn_cast<Constant>(CI.getOperand(1))) + Assert1(C && !isa<ConstantPointerNull>(C), + "invalid llvm.dbg.declare intrinsic call", &CI); + break; case Intrinsic::memcpy: case Intrinsic::memmove: case Intrinsic::memset: diff --git a/test/CodeGen/Generic/2006-03-27-DebugInfoNULLDeclare.ll b/test/CodeGen/Generic/2006-03-27-DebugInfoNULLDeclare.ll deleted file mode 100644 index 2f2fb8b..0000000 --- a/test/CodeGen/Generic/2006-03-27-DebugInfoNULLDeclare.ll +++ /dev/null @@ -1,9 +0,0 @@ -; RUN: llvm-as < %s | llc - -declare void @llvm.dbg.declare({ }*, { }*) - -define void @foo() { - call void @llvm.dbg.declare( { }* null, { }* null ) - ret void -} - diff --git a/test/DebugInfo/2009-01-15-dbg_declare.ll b/test/DebugInfo/2009-01-15-dbg_declare.ll index 475949a..3f78d0d 100644 --- a/test/DebugInfo/2009-01-15-dbg_declare.ll +++ b/test/DebugInfo/2009-01-15-dbg_declare.ll @@ -8,7 +8,9 @@ declare void @llvm.dbg.declare({ }*, { }*) nounwind define i32 @isascii(i32 %_c) nounwind { entry: - call void @llvm.dbg.declare({ }* null, { }* bitcast (%llvm.dbg.variable.type* @llvm.dbg.variable24 to { }*)) + %j = alloca i32 + %0 = bitcast i32* %j to { }* + call void @llvm.dbg.declare({ }* %0, { }* bitcast (%llvm.dbg.variable.type* @llvm.dbg.variable24 to { }*)) unreachable } |