[llvm-commits] CVS: llvm/test/CFrontend/2007-03-05-DataLayout.c
Reid Spencer
reid at x10sys.com
Mon Mar 5 19:00:33 PST 2007
Changes in directory llvm/test/CFrontend:
2007-03-05-DataLayout.c added (r1.1)
---
Log message:
Test to ensure that data layout is generated correctly for host platform.
This is for PR1242: http://llvm.org/PR1242 .
---
Diffs of the changes: (+51 -0)
2007-03-05-DataLayout.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 51 insertions(+)
Index: llvm/test/CFrontend/2007-03-05-DataLayout.c
diff -c /dev/null llvm/test/CFrontend/2007-03-05-DataLayout.c:1.1
*** /dev/null Mon Mar 5 21:00:27 2007
--- llvm/test/CFrontend/2007-03-05-DataLayout.c Mon Mar 5 21:00:17 2007
***************
*** 0 ****
--- 1,51 ----
+ // Testcase for PR1242
+ // RUN: %llvmgcc -c %s -o %t && lli --force-interpreter=1 %t
+ #include <stdlib.h>
+ #define NDIM 3
+ #define BODY 01
+ typedef double vector[NDIM];
+ typedef struct bnode* bodyptr;
+ // { i16, double, [3 x double], i32, i32, [3 x double], [3 x double], [3 x
+ // double], double, \2 *, \2 * }
+ struct bnode {
+ short int type;
+ double mass;
+ vector pos;
+ int proc;
+ int new_proc;
+ vector vel;
+ vector acc;
+ vector new_acc;
+ double phi;
+ bodyptr next;
+ bodyptr proc_next;
+ } body;
+
+ #define Type(x) ((x)->type)
+ #define Mass(x) ((x)->mass)
+ #define Pos(x) ((x)->pos)
+ #define Proc(x) ((x)->proc)
+ #define New_Proc(x) ((x)->new_proc)
+ #define Vel(x) ((x)->vel)
+ #define Acc(x) ((x)->acc)
+ #define New_Acc(x) ((x)->new_acc)
+ #define Phi(x) ((x)->phi)
+ #define Next(x) ((x)->next)
+ #define Proc_Next(x) ((x)->proc_next)
+
+ bodyptr ubody_alloc(int p)
+ {
+ register bodyptr tmp;
+ tmp = (bodyptr)malloc(sizeof(body));
+
+ Type(tmp) = BODY;
+ Proc(tmp) = p;
+ Proc_Next(tmp) = NULL;
+ New_Proc(tmp) = p;
+ return tmp;
+ }
+
+ int main(int argc, char** argv) {
+ bodyptr b = ubody_alloc(17);
+ return 0;
+ }
More information about the llvm-commits
mailing list