diff options
author | Stephen Hines <srhines@google.com> | 2014-12-01 14:51:49 -0800 |
---|---|---|
committer | Stephen Hines <srhines@google.com> | 2014-12-02 16:08:10 -0800 |
commit | 37ed9c199ca639565f6ce88105f9e39e898d82d0 (patch) | |
tree | 8fb36d3910e3ee4c4e1b7422f4f017108efc52f5 /test/Bitcode/highLevelStructure.3.2.ll | |
parent | d2327b22152ced7bc46dc629fc908959e8a52d03 (diff) | |
download | external_llvm-37ed9c199ca639565f6ce88105f9e39e898d82d0.zip external_llvm-37ed9c199ca639565f6ce88105f9e39e898d82d0.tar.gz external_llvm-37ed9c199ca639565f6ce88105f9e39e898d82d0.tar.bz2 |
Update aosp/master LLVM for rebase to r222494.
Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
Diffstat (limited to 'test/Bitcode/highLevelStructure.3.2.ll')
-rw-r--r-- | test/Bitcode/highLevelStructure.3.2.ll | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/test/Bitcode/highLevelStructure.3.2.ll b/test/Bitcode/highLevelStructure.3.2.ll new file mode 100644 index 0000000..f9509eb --- /dev/null +++ b/test/Bitcode/highLevelStructure.3.2.ll @@ -0,0 +1,86 @@ +; RUN: llvm-dis < %s.bc| FileCheck %s + +; highLevelStructure.3.2.ll.bc was generated by passing this file to llvm-as-3.2. +; The test checks that LLVM does not misread binary float instructions of +; older bitcode files. + +; Data Layout Test +; CHECK: target datalayout = "e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-f80:32-n8:16:32-S32" +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64-v96:128:128-v128:128:128-v192:256:256-v256:256:256-v512:512:512-v1024:1024:1024-a0:0:64-f80:32:32-n8:16:32-S32" + +; Module-Level Inline Assembly Test +; CHECK: module asm "some assembly" +module asm "some assembly" + +; Named Types Test +; CHECK: %mytype = type { %mytype*, i32 } +%mytype = type { %mytype*, i32 } + +; Aliases Test +; CHECK: @glob1 = global i32 1 +@glob1 = global i32 1 +; CHECK: @aliased1 = alias i32* @glob1 +@aliased1 = alias i32* @glob1 +; CHECK-NEXT: @aliased2 = internal alias i32* @glob1 +@aliased2 = internal alias i32* @glob1 +; CHECK-NEXT: @aliased3 = alias i32* @glob1 +@aliased3 = external alias i32* @glob1 +; CHECK-NEXT: @aliased4 = weak alias i32* @glob1 +@aliased4 = weak alias i32* @glob1 +; CHECK-NEXT: @aliased5 = weak_odr alias i32* @glob1 +@aliased5 = weak_odr alias i32* @glob1 + +;Parameter Attribute Test +; CHECK: declare void @ParamAttr1(i8 zeroext) +declare void @ParamAttr1(i8 zeroext) +; CHECK: declare void @ParamAttr2(i8* nest) +declare void @ParamAttr2(i8* nest) +; CHECK: declare void @ParamAttr3(i8* sret) +declare void @ParamAttr3(i8* sret) +; CHECK: declare void @ParamAttr4(i8 signext) +declare void @ParamAttr4(i8 signext) +; CHECK: declare void @ParamAttr5(i8* inreg) +declare void @ParamAttr5(i8* inreg) +; CHECK: declare void @ParamAttr6(i8* byval) +declare void @ParamAttr6(i8* byval) +; CHECK: declare void @ParamAttr7(i8* noalias) +declare void @ParamAttr7(i8* noalias) +; CHECK: declare void @ParamAttr8(i8* nocapture) +declare void @ParamAttr8(i8* nocapture) +; CHECK: declare void @ParamAttr9{{[(i8* nest noalias nocapture) | (i8* noalias nocapture nest)]}} +declare void @ParamAttr9(i8* nest noalias nocapture) +; CHECK: declare void @ParamAttr10{{[(i8* sret noalias nocapture) | (i8* noalias nocapture sret)]}} +declare void @ParamAttr10(i8* sret noalias nocapture) +;CHECK: declare void @ParamAttr11{{[(i8* byval noalias nocapture) | (i8* noalias nocapture byval)]}} +declare void @ParamAttr11(i8* byval noalias nocapture) +;CHECK: declare void @ParamAttr12{{[(i8* inreg noalias nocapture) | (i8* noalias nocapture inreg)]}} +declare void @ParamAttr12(i8* inreg noalias nocapture) + + +; NamedTypesTest +define void @NamedTypes() { +entry: +; CHECK: %res = alloca %mytype + %res = alloca %mytype + ret void +} + +; Garbage Collector Name Test +; CHECK: define void @gcTest() gc "gc" +define void @gcTest() gc "gc" { +entry: + ret void +} + +; Named metadata Test +; CHECK: !name = !{!0, !1, !2} +!name = !{!0, !1, !2} +; CHECK: !0 = metadata !{metadata !"zero"} +!0 = metadata !{metadata !"zero"} +; CHECK: !1 = metadata !{metadata !"one"} +!1 = metadata !{metadata !"one"} +; CHECK: !2 = metadata !{metadata !"two"} +!2 = metadata !{metadata !"two"} + + + |