diff options
| author | Bill Wendling <isanbard@gmail.com> | 2013-02-20 07:21:42 +0000 |
|---|---|---|
| committer | Bill Wendling <isanbard@gmail.com> | 2013-02-20 07:21:42 +0000 |
| commit | 90bc19cd914c9870c1d1701b3a3e290b135c63b6 (patch) | |
| tree | 7736dc6d4af8aa2de18f78a625376295275cbd6a /llvm/test/Feature | |
| parent | 8e60d4d240ebf86f8cc62d9a638f816ac255b875 (diff) | |
| download | bcm5719-llvm-90bc19cd914c9870c1d1701b3a3e290b135c63b6.tar.gz bcm5719-llvm-90bc19cd914c9870c1d1701b3a3e290b135c63b6.zip | |
Modify the LLVM assembly output so that it uses references to represent function attributes.
This makes the LLVM assembly look better. E.g.:
define void @foo() #0 { ret void }
attributes #0 = { nounwind noinline ssp }
llvm-svn: 175605
Diffstat (limited to 'llvm/test/Feature')
| -rw-r--r-- | llvm/test/Feature/attributes.ll | 15 | ||||
| -rw-r--r-- | llvm/test/Feature/intrinsics.ll | 6 | ||||
| -rw-r--r-- | llvm/test/Feature/minsize_attr.ll | 3 |
3 files changed, 22 insertions, 2 deletions
diff --git a/llvm/test/Feature/attributes.ll b/llvm/test/Feature/attributes.ll new file mode 100644 index 00000000000..7707d82be5c --- /dev/null +++ b/llvm/test/Feature/attributes.ll @@ -0,0 +1,15 @@ +; RUN: llvm-as < %s | llvm-dis > %t1.ll +; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll +; RUN: diff %t1.ll %t2.ll + +@.str = private unnamed_addr constant [14 x i8] c"hello world!\0A\00", align 1 + +define void @foo() #0 { +entry: + %call = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([14 x i8]* @.str, i32 0, i32 0)) + ret void +} + +declare i32 @printf(i8*, ...) + +attributes #0 = { nounwind ssp uwtable } diff --git a/llvm/test/Feature/intrinsics.ll b/llvm/test/Feature/intrinsics.ll index 9e7dc6d4102..28be053714d 100644 --- a/llvm/test/Feature/intrinsics.ll +++ b/llvm/test/Feature/intrinsics.ll @@ -61,10 +61,14 @@ define void @libm() { ; FIXME: test ALL the intrinsics in this file. ; rdar://11542750 -; CHECK: declare void @llvm.trap() noreturn nounwind +; CHECK: declare void @llvm.trap() #2 declare void @llvm.trap() define void @trap() { call void @llvm.trap() ret void } + +; CHECK: attributes #0 = { nounwind readnone } +; CHECK: attributes #1 = { nounwind readonly } +; CHECK: attributes #2 = { noreturn nounwind } diff --git a/llvm/test/Feature/minsize_attr.ll b/llvm/test/Feature/minsize_attr.ll index 51b133c4bdb..1f915b35a36 100644 --- a/llvm/test/Feature/minsize_attr.ll +++ b/llvm/test/Feature/minsize_attr.ll @@ -1,7 +1,8 @@ ; RUN: llvm-as < %s | llvm-dis | FileCheck %s define void @test1() minsize { -; CHECK: define void @test1() minsize +; CHECK: define void @test1() #0 ret void } +; CHECK: attributes #0 = { minsize } |

