summaryrefslogtreecommitdiffstats
path: root/llvm/test/Verifier
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2015-03-02 09:35:06 +0000
committerOwen Anderson <resistor@mac.com>2015-03-02 09:35:06 +0000
commit63fbf10c32014cd88eb495d2eed49592972adbe6 (patch)
tree38b90dedb9529f4607a22751caa9e0358ab653b8 /llvm/test/Verifier
parent5af4b21c2e5ecc84a509cf54bd65a5b7ceccbe8e (diff)
downloadbcm5719-llvm-63fbf10c32014cd88eb495d2eed49592972adbe6.tar.gz
bcm5719-llvm-63fbf10c32014cd88eb495d2eed49592972adbe6.zip
Teach the verifier to enforce that the alignment argument of memory intrinsics must be a power of 2.
llvm-svn: 230941
Diffstat (limited to 'llvm/test/Verifier')
-rw-r--r--llvm/test/Verifier/memcpy.ll9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/Verifier/memcpy.ll b/llvm/test/Verifier/memcpy.ll
new file mode 100644
index 00000000000..bd168cc953c
--- /dev/null
+++ b/llvm/test/Verifier/memcpy.ll
@@ -0,0 +1,9 @@
+; RUN: not opt -verify < %s 2>&1 | FileCheck %s
+
+; CHECK: alignment argument of memory intrinsics must be a power of 2
+
+define void @foo(i8* %P, i8* %Q) {
+ call void @llvm.memcpy.p0i8.p0i8.i32(i8* %P, i8* %Q, i32 4, i32 3, i1 false)
+ ret void
+}
+declare void @llvm.memcpy.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind
OpenPOWER on IntegriCloud