1 /* { dg-skip-if "too many arguments in function call" { bpf-*-* } } */
2
3 short *_offsetTable;
4 /* This tests to make sure PRE splits the entry block ->block 0 edge
5 when there are multiple block 0 predecessors.
6 This is done so that we don't end up with an insertion on the
7 entry block -> block 0 edge which would require a split at insertion
8 time.
9 PR 13163. */
proc4WithoutFDFE(char * dst,const char * src,int next_offs,int bw,int bh,int pitch)10 void proc4WithoutFDFE(char *dst, const char *src, int next_offs, int bw,
11 int bh, int pitch)
12 {
13 do {
14 int i = bw;
15 int code = *src++;
16 int x, l;
17 int length = *src++ + 1;
18
19 for (l = 0; l < length; l++) {
20 int x;
21
22 for (x = 0; x < 4; x++) ;
23 if (i == 0)
24 dst += pitch * 3;
25 }
26 char *dst2 = dst + _offsetTable[code] + next_offs;
27
28 for (x = 0; x < 4; x++) {
29 int j = 0;
30 (dst + pitch * x)[j] = (dst2 + pitch * x)[j];
31 }
32 dst += pitch * 3;
33 } while (--bh);
34 }
35
36
37