aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMark Seaborn <mseaborn@chromium.org>2013-08-29 12:34:39 -0700
committerMark Seaborn <mseaborn@chromium.org>2013-08-29 12:34:39 -0700
commita6bf06e32a23367bbc5b4029fa1c973d335683df (patch)
treef6bbaa00e5050e8d46a5c957f5dbe9c29c70c856 /test
parent013bcfcfcd04a3469429771e80997c02fdd03501 (diff)
PNaCl bitcode: Remove handling of named struct types
Named struct types should not appear in LLVM IR that passes the PNaCl ABI verifier. Remove the test struct-types.ll because it no longer passes. Handling of TYPE_CODE_STRUCT_ANON must remain for now until this issue is fixed: https://code.google.com/p/nativeclient/issues/detail?id=3648 BUG=https://code.google.com/p/nativeclient/issues/detail?id=3590 TEST=PNaCl toolchain trybots Review URL: https://codereview.chromium.org/23490018
Diffstat (limited to 'test')
-rw-r--r--test/NaCl/Bitcode/struct-types.ll79
1 files changed, 0 insertions, 79 deletions
diff --git a/test/NaCl/Bitcode/struct-types.ll b/test/NaCl/Bitcode/struct-types.ll
deleted file mode 100644
index b2f7dc62a8..0000000000
--- a/test/NaCl/Bitcode/struct-types.ll
+++ /dev/null
@@ -1,79 +0,0 @@
-; Checks if llvm bitcode defines a struct type before the pointer type,
-; even if the struct definintion appears after the pointer type, while
-; pnacl bitcode moves the pointer before the struct.
-; RUN: llvm-as < %s | llvm-bcanalyzer -dump | FileCheck %s -check-prefix=LLVM
-; RUN: llvm-as < %s | pnacl-freeze | pnacl-bcanalyzer -dump-records \
-; RUN: | FileCheck %s -check-prefix=PNACL
-
-%typeB = type { i8, %typeA, i32, %typeA }
-%typeA = type { i16 }
-
-define %typeB* @foo(%typeB* %a) {
- ret %typeB* %a
-}
-
-define %typeB* @bar(%typeB* %b) {
- ret %typeB* %b
-}
-
-define i16 @bam(i16 %a) {
- ret i16 %a
-}
-
-; Show the ordering llvm uses to order types, which is to expand subtypes
-; (including accross pointers) before the type. Expands types for functions
-; in order: @foo, @bar, @bam.
-; LLVM: <TYPE_BLOCK_ID {{.*}}>
-; i8
-; LLVM: <INTEGER op0=8/>
-; i16
-; LLVM: <INTEGER op0=16/>
-; %typeA = type { i16 }
-; LLVM: <STRUCT_NAME abbrevid=7 op0=116 op1=121 op2=112 op3=101 op4=65/>
-; LLVM: <STRUCT_NAMED abbrevid=8 op0=0 op1=1/>
-; i32
-; LLVM: <INTEGER op0=32/>
-; %typeB = type { i8, %typeA, i32, %typeA }
-; LLVM: <STRUCT_NAME abbrevid=7 op0=116 op1=121 op2=112 op3=101 op4=66/>
-; LLVM: <STRUCT_NAMED abbrevid=8 op0=0 op1=0 op2=2 op3=3 op4=2/>
-; %typeB*
-; LLVM: <POINTER abbrevid=4 op0=4 op1=0/>
-; %typeB* (%typeB*)
-; LLVM: <FUNCTION abbrevid=5 op0=0 op1=5 op2=5/>
-; %typeB* (%typeB*)*
-; LLVM: <POINTER abbrevid=4 op0=6 op1=0/>
-; i16 (i16)
-; LLVM: <FUNCTION abbrevid=5 op0=0 op1=1 op2=1/>
-; i16 (i16)*
-; LLVM: <POINTER abbrevid=4 op0=8 op1=0/>
-; type of instruction "RET"
-; LLVM: <VOID/>
-; LLVM: </TYPE_BLOCK_ID>
-
-; Show the ordering pnacl-freeze uses to order types.
-; PNACL: <TYPE_BLOCK_ID>
-; %typeB*
-; PNACL: <POINTER op0=8 op1=0/>
-; i16
-; PNACL: <INTEGER op0=16/>
-; type of instruction "RET"
-; PNACL: <VOID/>
-; %typeA = type { i16 }
-; PNACL: <STRUCT_NAME op0=116 op1=121 op2=112 op3=101 op4=65/>
-; PNACL: <STRUCT_NAMED op0=0 op1=1/>
-; %typeB* (%typeB*)
-; PNACL: <FUNCTION op0=0 op1=0 op2=0/>
-; %typeB* (%typeB*)*
-; PNACL: <POINTER op0=4 op1=0/>
-; i8
-; PNACL: <INTEGER op0=8/>
-; i32
-; PNACL: <INTEGER op0=32/>
-; %typeB = type { i8, %typeA, i32, %typeA }
-; PNACL: <STRUCT_NAME op0=116 op1=121 op2=112 op3=101 op4=66/>
-; PNACL: <STRUCT_NAMED op0=0 op1=6 op2=3 op3=7 op4=3/>
-; i16 (i16)
-; PNACL: <FUNCTION op0=0 op1=1 op2=1/>
-; i16 (i16)*
-; PNACL: <POINTER op0=9 op1=0/>
-; PNACL: </TYPE_BLOCK_ID>