Treat copysignl like the other copysign functions.
[oota-llvm.git] / test / FrontendC / 2007-03-05-DataLayout.c
1 // Testcase for PR1242
2 // RUN: %llvmgcc -S %s -o - | grep datalayout | \
3 // RUN:    not grep {"\[Ee\]-p:\[36\]\[24\]:\[36\]\[24\]"}
4 // END.
5 #include <stdlib.h>
6 #define NDIM 3
7 #define BODY 01
8 typedef double vector[NDIM];
9 typedef struct bnode* bodyptr;
10 // { i16, double, [3 x double], i32, i32, [3 x double], [3 x double], [3 x
11 // double], double, \2 *, \2 * }
12 struct bnode {
13   short int type;
14   double mass;
15   vector pos;
16   int proc;
17   int new_proc;
18   vector vel;
19   vector acc;
20   vector new_acc;
21   double phi;
22   bodyptr next;
23   bodyptr proc_next;
24 } body;
25
26 #define Type(x) ((x)->type)
27 #define Mass(x) ((x)->mass)
28 #define Pos(x)  ((x)->pos)
29 #define Proc(x) ((x)->proc)
30 #define New_Proc(x) ((x)->new_proc)
31 #define Vel(x)  ((x)->vel)
32 #define Acc(x)  ((x)->acc)
33 #define New_Acc(x)  ((x)->new_acc)
34 #define Phi(x)  ((x)->phi)
35 #define Next(x) ((x)->next)
36 #define Proc_Next(x) ((x)->proc_next)
37
38 bodyptr ubody_alloc(int p)
39
40   register bodyptr tmp;
41   tmp = (bodyptr)malloc(sizeof(body));
42
43   Type(tmp) = BODY;
44   Proc(tmp) = p;
45   Proc_Next(tmp) = NULL;
46   New_Proc(tmp) = p;
47   return tmp;
48 }
49
50 int main(int argc, char** argv) {
51   bodyptr b = ubody_alloc(17);
52   return 0;
53 }