forked from OSchip/llvm-project
Test to ensure that data layout is generated correctly for host platform.
This is for PR1242. llvm-svn: 34944
This commit is contained in:
parent
a8c81c5261
commit
3f634774aa
|
@ -0,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;
|
||||
}
|
Loading…
Reference in New Issue