From 58f3877307afd8c07fdad680eb09c0f2771a3240 Mon Sep 17 00:00:00 2001 From: Duncan Sands <baldrick@free.fr> Date: Fri, 19 Sep 2008 08:17:05 +0000 Subject: Add a new pass AddReadAttrs which works out which functions can get the readnone/readonly attributes, and gives them it. The plan is to remove markmodref (which did the same thing by querying GlobalsModRef) and delete the analogous functionality from GlobalsModRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56341 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Analysis/GlobalsModRef/2008-09-03-Mutual.ll | 11 ----------- test/Analysis/GlobalsModRef/2008-09-03-ReadNone.ll | 9 --------- test/Analysis/GlobalsModRef/2008-09-03-ReadOnly.ll | 9 --------- test/Analysis/GlobalsModRef/2008-09-13-VolatileRead.ll | 9 --------- test/Transforms/AddReadAttrs/2008-09-03-Mutual.ll | 11 +++++++++++ test/Transforms/AddReadAttrs/2008-09-03-ReadNone.ll | 9 +++++++++ test/Transforms/AddReadAttrs/2008-09-03-ReadOnly.ll | 9 +++++++++ test/Transforms/AddReadAttrs/2008-09-13-VolatileRead.ll | 9 +++++++++ 8 files changed, 38 insertions(+), 38 deletions(-) delete mode 100644 test/Analysis/GlobalsModRef/2008-09-03-Mutual.ll delete mode 100644 test/Analysis/GlobalsModRef/2008-09-03-ReadNone.ll delete mode 100644 test/Analysis/GlobalsModRef/2008-09-03-ReadOnly.ll delete mode 100644 test/Analysis/GlobalsModRef/2008-09-13-VolatileRead.ll create mode 100644 test/Transforms/AddReadAttrs/2008-09-03-Mutual.ll create mode 100644 test/Transforms/AddReadAttrs/2008-09-03-ReadNone.ll create mode 100644 test/Transforms/AddReadAttrs/2008-09-03-ReadOnly.ll create mode 100644 test/Transforms/AddReadAttrs/2008-09-13-VolatileRead.ll (limited to 'test') diff --git a/test/Analysis/GlobalsModRef/2008-09-03-Mutual.ll b/test/Analysis/GlobalsModRef/2008-09-03-Mutual.ll deleted file mode 100644 index f6f47f9..0000000 --- a/test/Analysis/GlobalsModRef/2008-09-03-Mutual.ll +++ /dev/null @@ -1,11 +0,0 @@ -; RUN: llvm-as < %s | opt -globalsmodref-aa -markmodref | llvm-dis | grep readnone - -define i32 @a() { - %tmp = call i32 @b( ) ; <i32> [#uses=1] - ret i32 %tmp -} - -define i32 @b() { - %tmp = call i32 @a( ) ; <i32> [#uses=1] - ret i32 %tmp -} diff --git a/test/Analysis/GlobalsModRef/2008-09-03-ReadNone.ll b/test/Analysis/GlobalsModRef/2008-09-03-ReadNone.ll deleted file mode 100644 index b286ada..0000000 --- a/test/Analysis/GlobalsModRef/2008-09-03-ReadNone.ll +++ /dev/null @@ -1,9 +0,0 @@ -; RUN: llvm-as < %s | opt -globalsmodref-aa -markmodref | llvm-dis | grep readnone | count 2 - -define i32 @f() { -entry: - %tmp = call i32 @e( ) ; <i32> [#uses=1] - ret i32 %tmp -} - -declare i32 @e() readnone diff --git a/test/Analysis/GlobalsModRef/2008-09-03-ReadOnly.ll b/test/Analysis/GlobalsModRef/2008-09-03-ReadOnly.ll deleted file mode 100644 index de1666f..0000000 --- a/test/Analysis/GlobalsModRef/2008-09-03-ReadOnly.ll +++ /dev/null @@ -1,9 +0,0 @@ -; RUN: llvm-as < %s | opt -globalsmodref-aa -markmodref | llvm-dis | grep readonly | count 2 - -define i32 @f() { -entry: - %tmp = call i32 @e( ) ; <i32> [#uses=1] - ret i32 %tmp -} - -declare i32 @e() readonly diff --git a/test/Analysis/GlobalsModRef/2008-09-13-VolatileRead.ll b/test/Analysis/GlobalsModRef/2008-09-13-VolatileRead.ll deleted file mode 100644 index 8ac9637..0000000 --- a/test/Analysis/GlobalsModRef/2008-09-13-VolatileRead.ll +++ /dev/null @@ -1,9 +0,0 @@ -; RUN: llvm-as < %s | opt -globalsmodref-aa -markmodref | llvm-dis | not grep read -; PR2792 - -@g = global i32 0 ; <i32*> [#uses=1] - -define i32 @f() { - %t = volatile load i32* @g ; <i32> [#uses=1] - ret i32 %t -} diff --git a/test/Transforms/AddReadAttrs/2008-09-03-Mutual.ll b/test/Transforms/AddReadAttrs/2008-09-03-Mutual.ll new file mode 100644 index 0000000..0a4f085 --- /dev/null +++ b/test/Transforms/AddReadAttrs/2008-09-03-Mutual.ll @@ -0,0 +1,11 @@ +; RUN: llvm-as < %s | opt -addreadattrs | llvm-dis | grep readnone + +define i32 @a() { + %tmp = call i32 @b( ) ; <i32> [#uses=1] + ret i32 %tmp +} + +define i32 @b() { + %tmp = call i32 @a( ) ; <i32> [#uses=1] + ret i32 %tmp +} diff --git a/test/Transforms/AddReadAttrs/2008-09-03-ReadNone.ll b/test/Transforms/AddReadAttrs/2008-09-03-ReadNone.ll new file mode 100644 index 0000000..3271902 --- /dev/null +++ b/test/Transforms/AddReadAttrs/2008-09-03-ReadNone.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | opt -addreadattrs | llvm-dis | grep readnone | count 2 + +define i32 @f() { +entry: + %tmp = call i32 @e( ) ; <i32> [#uses=1] + ret i32 %tmp +} + +declare i32 @e() readnone diff --git a/test/Transforms/AddReadAttrs/2008-09-03-ReadOnly.ll b/test/Transforms/AddReadAttrs/2008-09-03-ReadOnly.ll new file mode 100644 index 0000000..c08e7b1 --- /dev/null +++ b/test/Transforms/AddReadAttrs/2008-09-03-ReadOnly.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | opt -addreadattrs | llvm-dis | grep readonly | count 2 + +define i32 @f() { +entry: + %tmp = call i32 @e( ) ; <i32> [#uses=1] + ret i32 %tmp +} + +declare i32 @e() readonly diff --git a/test/Transforms/AddReadAttrs/2008-09-13-VolatileRead.ll b/test/Transforms/AddReadAttrs/2008-09-13-VolatileRead.ll new file mode 100644 index 0000000..0690083 --- /dev/null +++ b/test/Transforms/AddReadAttrs/2008-09-13-VolatileRead.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | opt -addreadattrs | llvm-dis | not grep read +; PR2792 + +@g = global i32 0 ; <i32*> [#uses=1] + +define i32 @f() { + %t = volatile load i32* @g ; <i32> [#uses=1] + ret i32 %t +} -- cgit v1.1