[llvm-commits] CVS: llvm/test/Feature/packed_struct.ll

Andrew Lenharth alenhar2 at cs.uiuc.edu
Fri Dec 8 10:36:56 PST 2006



Changes in directory llvm/test/Feature:

packed_struct.ll added (r1.1)
---
Log message:

feature test for packed structs

---
Diffs of the changes:  (+29 -0)

 packed_struct.ll |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+)


Index: llvm/test/Feature/packed_struct.ll
diff -c /dev/null llvm/test/Feature/packed_struct.ll:1.1
*** /dev/null	Fri Dec  8 12:36:35 2006
--- llvm/test/Feature/packed_struct.ll	Fri Dec  8 12:36:24 2006
***************
*** 0 ****
--- 1,29 ----
+ ; RUN: llvm-as < %s | llvm-dis > %t1.ll
+ ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
+ ; RUN: diff %t1.ll %t2.ll &&
+ ; RUN: not grep cast %t2.ll &&
+ ; RUN: grep "<{" %t2.ll
+ 
+ %struct.anon = type <{ sbyte, int, int, int }>
+ %foos = external global %struct.anon 
+ %bara = external global [2 x <{ int, sbyte }>]
+ 
+ implementation   ; Functions:
+ 
+ int %main() 
+ {
+         %tmp = load int*  getelementptr (%struct.anon* %foos, int 0, uint 1)            ; <int> [#uses=1]
+         %tmp3 = load int* getelementptr (%struct.anon* %foos, int 0, uint 2)            ; <int> [#uses=1]
+         %tmp6 = load int* getelementptr (%struct.anon* %foos, int 0, uint 3)            ; <int> [#uses=1]
+         %tmp4 = add int %tmp3, %tmp             ; <int> [#uses=1]
+         %tmp7 = add int %tmp4, %tmp6            ; <int> [#uses=1]
+         ret int %tmp7
+ }
+ 
+ int %bar() {
+ entry:
+         %tmp = load int* getelementptr([2 x <{ int, sbyte }>]* %bara, int 0, int 0, uint 0 )            ; <int> [#uses=1]
+         %tmp4 = load int* getelementptr ([2 x <{ int, sbyte }>]* %bara, int 0, int 1, uint 0)           ; <int> [#uses=1]
+         %tmp5 = add int %tmp4, %tmp             ; <int> [#uses=1]
+         ret int %tmp5
+ }






More information about the llvm-commits mailing list