diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2013-09-16 01:08:15 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2013-09-16 01:08:15 +0000 |
commit | 3fa50f9b0529f046c27a0a9d7f93732138638a6c (patch) | |
tree | 5839a9eb7a11a3ca38a19c38dbb0cd1760ee7e5e /llvm/test | |
parent | 3ee2bf6a627fcd2e872eaa748bb886ff3d4faa12 (diff) | |
download | bcm5719-llvm-3fa50f9b0529f046c27a0a9d7f93732138638a6c.tar.gz bcm5719-llvm-3fa50f9b0529f046c27a0a9d7f93732138638a6c.zip |
Implement function prefix data as an IR feature.
Previous discussion:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/063909.html
Differential Revision: http://llvm-reviews.chandlerc.com/D1191
llvm-svn: 190773
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/prefixdata.ll | 15 | ||||
-rw-r--r-- | llvm/test/Feature/prefixdata.ll | 18 | ||||
-rw-r--r-- | llvm/test/Linker/prefixdata.ll | 9 |
3 files changed, 42 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/prefixdata.ll b/llvm/test/CodeGen/X86/prefixdata.ll new file mode 100644 index 00000000000..2ffa89d287d --- /dev/null +++ b/llvm/test/CodeGen/X86/prefixdata.ll @@ -0,0 +1,15 @@ +; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s + +@i = linkonce_odr global i32 1 + +; CHECK: f: +; CHECK-NEXT: .long 1 +define void @f() prefix i32 1 { + ret void +} + +; CHECK: g: +; CHECK-NEXT: .quad i +define void @g() prefix i32* @i { + ret void +} diff --git a/llvm/test/Feature/prefixdata.ll b/llvm/test/Feature/prefixdata.ll new file mode 100644 index 00000000000..b53945c11ff --- /dev/null +++ b/llvm/test/Feature/prefixdata.ll @@ -0,0 +1,18 @@ +; RUN: llvm-as < %s | llvm-dis > %t1.ll +; RUN: FileCheck %s < %t1.ll +; RUN: llvm-as < %t1.ll | llvm-dis > %t2.ll +; RUN: diff %t1.ll %t2.ll +; RUN: opt -O3 -S < %t1.ll | FileCheck %s + +; CHECK: @i +@i = linkonce_odr global i32 1 + +; CHECK: f(){{.*}}prefix i32 1 +define void @f() prefix i32 1 { + ret void +} + +; CHECK: g(){{.*}}prefix i32* @i +define void @g() prefix i32* @i { + ret void +} diff --git a/llvm/test/Linker/prefixdata.ll b/llvm/test/Linker/prefixdata.ll new file mode 100644 index 00000000000..1f11dc7083e --- /dev/null +++ b/llvm/test/Linker/prefixdata.ll @@ -0,0 +1,9 @@ +; RUN: echo > %t.ll +; RUN: llvm-link %t.ll %s -S -o - | FileCheck %s + +@i = linkonce_odr global i32 1 + +; CHECK: define void @f() prefix i32* @i +define void @f() prefix i32* @i { + ret void +} |