1 /*
2    20030914-1.c from the execute part of the gcc torture tests.
3  */
4 
5 #include <testfwk.h>
6 
7 #ifdef __SDCC
8 #pragma std_c99
9 #endif
10 
11 // TODO: Enable when sdcc supports long double!
12 #if 0
13 /* On IRIX 6, PB is passed partially in registers and partially on the
14    stack, with an odd number of words in the register part.  Check that
15    the long double stack argument (PC) is still accessed properly.  */
16 
17 struct s { int val[16]; };
18 
19 long double f (int pa, struct s pb, long double pc)
20 {
21   int i;
22 
23   for (i = 0; i < 16; i++)
24     pc += pb.val[i];
25   return pc;
26 }
27 #endif
28 
29 void
testTortureExecute(void)30 testTortureExecute (void)
31 {
32 #if 0
33   struct s x;
34   int i;
35 
36   for (i = 0; i < 16; i++)
37     x.val[i] = i + 1;
38   if (f (1, x, 10000.0L) != 10136.0L)
39     ASSERT (0);
40   return;
41 #endif
42 }
43 
44