summaryrefslogtreecommitdiffstats
path: root/llvm/test/Assembler/auto_upgrade_intrinsics.ll
diff options
context:
space:
mode:
authorGeorge Burgess IV <george.burgess.iv@gmail.com>2017-03-21 20:08:59 +0000
committerGeorge Burgess IV <george.burgess.iv@gmail.com>2017-03-21 20:08:59 +0000
commit56c7e88c2cd8f4f6d440f50d9f19401763f3122b (patch)
tree387c614351099aaccde94582e47a058120215ca3 /llvm/test/Assembler/auto_upgrade_intrinsics.ll
parentce39fdd6eeabc4a007ce7821a247cc58b816e0d7 (diff)
downloadbcm5719-llvm-56c7e88c2cd8f4f6d440f50d9f19401763f3122b.tar.gz
bcm5719-llvm-56c7e88c2cd8f4f6d440f50d9f19401763f3122b.zip
Let llvm.objectsize be conservative with null pointers
This adds a parameter to @llvm.objectsize that makes it return conservative values if it's given null. This fixes PR23277. Differential Revision: https://reviews.llvm.org/D28494 llvm-svn: 298430
Diffstat (limited to 'llvm/test/Assembler/auto_upgrade_intrinsics.ll')
-rw-r--r--llvm/test/Assembler/auto_upgrade_intrinsics.ll11
1 files changed, 10 insertions, 1 deletions
diff --git a/llvm/test/Assembler/auto_upgrade_intrinsics.ll b/llvm/test/Assembler/auto_upgrade_intrinsics.ll
index 2f0f4f779e7..6df5500b442 100644
--- a/llvm/test/Assembler/auto_upgrade_intrinsics.ll
+++ b/llvm/test/Assembler/auto_upgrade_intrinsics.ll
@@ -53,11 +53,20 @@ entry:
define i32 @test.objectsize() {
; CHECK-LABEL: @test.objectsize(
-; CHECK: @llvm.objectsize.i32.p0i8
+; CHECK: @llvm.objectsize.i32.p0i8(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @a, i32 0, i32 0), i1 false, i1 false)
%s = call i32 @llvm.objectsize.i32(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @a, i32 0, i32 0), i1 false)
ret i32 %s
}
+declare i64 @llvm.objectsize.i64.p0i8(i8*, i1) nounwind readonly
+define i64 @test.objectsize.2() {
+; CHECK-LABEL: @test.objectsize.2(
+; CHECK: @llvm.objectsize.i64.p0i8(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @a, i32 0, i32 0), i1 false, i1 false)
+ %s = call i64 @llvm.objectsize.i64.p0i8(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @a, i32 0, i32 0), i1 false)
+ ret i64 %s
+}
+
+
declare <2 x double> @llvm.masked.load.v2f64(<2 x double>* %ptrs, i32, <2 x i1> %mask, <2 x double> %src0)
define <2 x double> @tests.masked.load(<2 x double>* %ptr, <2 x i1> %mask, <2 x double> %passthru) {
OpenPOWER on IntegriCloud