[llvm] 3187d4d - [Verifier] Add additional tests for dereferenceable assumptions.

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 24 12:45:48 PDT 2025


Author: Florian Hahn
Date: 2025-06-24T20:45:21+01:00
New Revision: 3187d4da24adad5f31589c25b88f5e34f97dd52b

URL: https://github.com/llvm/llvm-project/commit/3187d4da24adad5f31589c25b88f5e34f97dd52b
DIFF: https://github.com/llvm/llvm-project/commit/3187d4da24adad5f31589c25b88f5e34f97dd52b.diff

LOG: [Verifier] Add additional tests for dereferenceable assumptions.

Added: 
    

Modified: 
    llvm/test/Verifier/assume-bundles.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/Verifier/assume-bundles.ll b/llvm/test/Verifier/assume-bundles.ll
index afe6cc0ab4c67..4b6971d6be832 100644
--- a/llvm/test/Verifier/assume-bundles.ll
+++ b/llvm/test/Verifier/assume-bundles.ll
@@ -9,6 +9,8 @@ define void @func(ptr %P, i32 %P1, ptr %P2, ptr %P3) {
   call void @llvm.assume(i1 true) ["adazdazd"()]
 ; CHECK: the second argument should be a constant integral value
   call void @llvm.assume(i1 true) ["dereferenceable"(ptr %P, i32 %P1)]
+; CHECK: the second argument should be a constant integral value
+  call void @llvm.assume(i1 true) ["dereferenceable"(ptr %P, float 1.5)]
 ; CHECK: too many arguments
   call void @llvm.assume(i1 true) ["dereferenceable"(ptr %P, i32 8, i32 8)]
 ; CHECK: this attribute should have 2 arguments
@@ -28,5 +30,8 @@ define void @func(ptr %P, i32 %P1, ptr %P2, ptr %P3) {
   call void @llvm.assume(i1 true) ["separate_storage"(ptr %P)]
 ; CHECK: arguments to separate_storage assumptions should be pointers
   call void @llvm.assume(i1 true) ["separate_storage"(ptr %P, i32 123)]
+; FIXME: The dereferenceable bundle is invalid.
+; CHECK-NOT: call {{.+}}dereferenceable
+  call void @llvm.assume(i1 true) ["align"(ptr %P, i32 4), "dereferenceable"(ptr %P)]
   ret void
 }


        


More information about the llvm-commits mailing list