PR target/55146
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / pr46126.c
blobc46d7f40d33cd1eb3c0023b4af3edece740d2182
1 /* { dg-do compile } */
3 __extension__ typedef __UINTPTR_TYPE__ uintptr_t;
5 typedef struct TypHeader {
6 struct TypHeader * * ptr;
7 unsigned char type;
8 } * TypHandle;
9 extern TypHandle (* EvTab[81]) ( TypHandle hd );
10 TypHandle FunApplyRel ( TypHandle hdCall )
12 TypHandle hdApp;
13 TypHandle * ptApp;
14 long lp;
15 long lc;
16 hdApp = ((uintptr_t)(((TypHandle*)((hdCall)->ptr))[1])&1 ?
17 (((TypHandle*)((hdCall)->ptr))[1]) : (*
18 EvTab[(((uintptr_t)(((TypHandle*)((hdCall)->ptr))[1]) & 1) ? 1 :
19 ((((TypHandle*)((hdCall)->ptr))[1])->type))])((((TypHandle*)((hdCall)->ptr))[1])));
20 ptApp = ((TypHandle*)((hdApp)->ptr));
21 ptApp[1] = ((TypHandle) (uintptr_t) (((long)(lp) << 2) + 1));
22 ptApp[2] = ((TypHandle) (uintptr_t) (((long)(lc) << 2) + 1));
25 /* { dg-final { cleanup-tree-dump "vect" } } */