Skip to content

Instantly share code, notes, and snippets.

@jroelofs
Created April 13, 2020 16:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jroelofs/f03ae725c6b9a5c80f9f187b80642f79 to your computer and use it in GitHub Desktop.
Save jroelofs/f03ae725c6b9a5c80f9f187b80642f79 to your computer and use it in GitHub Desktop.
diff --git a/llvm/test/Transforms/Attributor/noalias.ll b/llvm/test/Transforms/Attributor/noalias.ll
index 0b7856e01d9..678d7f7f8cc 100644
--- a/llvm/test/Transforms/Attributor/noalias.ll
+++ b/llvm/test/Transforms/Attributor/noalias.ll
@@ -407,13 +407,13 @@ define void @only_store(i32* %p) {
ret void
}
-; CHECK-LABEL define void @test15_caller(i32* noalias %p, i32 %c)
+; CHECK-LABEL: define void @test15_caller(i32* noalias nofree writeonly %p, i32 %c)
define void @test15_caller(i32* noalias %p, i32 %c) {
%tobool = icmp eq i32 %c, 0
br i1 %tobool, label %if.end, label %if.then
-; CHECK tail call void @only_store(i32* noalias %p)
-; CHECK tail call void @make_alias(i32* %p)
+; CHECK: tail call void @only_store(i32* noalias nocapture nofree writeonly align 4 %p)
+; CHECK: tail call void @make_alias(i32* nofree writeonly %p)
if.then:
tail call void @only_store(i32* %p)
@@ -439,12 +439,12 @@ if.end:
; test16_sub(p, c, c);
; }
-; CHECK-LABEL define internal void @test16_sub(i32* noalias %p, i32 %c1, i32 %c2)
+; CHECK-LABEL: define internal void @test16_sub(i32* noalias nofree writeonly %p, i32 %c1, i32 %c2)
define internal void @test16_sub(i32* noalias %p, i32 %c1, i32 %c2) {
%tobool = icmp eq i32 %c1, 0
br i1 %tobool, label %if.end, label %if.then
-; CHECK tail call void @only_store(i32* noalias %p)
+; CHECK: tail call void @only_store(i32* noalias nocapture nofree writeonly align 4 %p)
if.then:
tail call void @only_store(i32* %p)
tail call void @make_alias(i32* %p)
@@ -457,7 +457,7 @@ if.end:
; FIXME: this should be tail @only_store(i32* noalias %p)
; when test16_caller is called, c1 always equals to c2. (Note that linkage is internal)
; Therefore, only one of the two conditions of if statementes will be fulfilled.
-; CHECK tail call void @only_store(i32* %p)
+; CHECK: tail call void @only_store(i32* nofree writeonly align 4 %p)
if.then2:
tail call void @only_store(i32* %p)
br label %if.end3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment