diff options
author | Mark Seaborn <mseaborn@chromium.org> | 2013-08-29 12:34:39 -0700 |
---|---|---|
committer | Mark Seaborn <mseaborn@chromium.org> | 2013-08-29 12:34:39 -0700 |
commit | a6bf06e32a23367bbc5b4029fa1c973d335683df (patch) | |
tree | f6bbaa00e5050e8d46a5c957f5dbe9c29c70c856 /test | |
parent | 013bcfcfcd04a3469429771e80997c02fdd03501 (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.ll | 79 |
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> |