OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.dg/] [pr44023.c] - Blame information for rev 689

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 689 jeremybenn
/* PR debug/44023 */
2
/* { dg-do compile } */
3
/* { dg-options "-fcompare-debug -O2" } */
4
/* { dg-options "-fcompare-debug -O2 -mcpu=ev67" { target alpha*-*-* } } */
5
/* { dg-require-effective-target int32plus } */
6
 
7
void
8
foo (unsigned f, long v, unsigned *w, unsigned a, unsigned b, unsigned e, unsigned c, unsigned d)
9
{
10
  unsigned h = v / 4, x[16];
11
  while (f < h)
12
    {
13
      unsigned i;
14
      f++;
15
      a |= (a >> 30);
16
      d = (d << 30) | ((unsigned) d >> 30);
17
      c = (c << 30) | ((unsigned) c >> 30);
18
      b = 30 | ((unsigned) b >> 30);
19
      d += a = (a << 30) | ((unsigned) a >> 2);
20
      c += ((d << 5) | (d >> 27)) + ((e & (a ^ b))) + 0x5a827999 + x[12];
21
      a += (c & e);
22
      c = 30 | ((unsigned) c);
23
      i = x[5] ^ x[7] ^ x[8] ^ x[3];
24
      x[5] = (i << 1) | ((unsigned) i >> 31);
25
      i = x[6] ^ x[2] ^ x[14] ^ x[13];
26
      x[6] = (i << 1) | (i >> 31);
27
      b += (c | (c >> 5)) + (d ^ e) + 0x6ed9eba1 + (x[7] = (i << 1) | ((unsigned) i >> 31));
28
      x[8] = i | 1;
29
      e += (a | 5) + b + (i = x[9] ^ x[6], x[10] = (i << (unsigned) i));
30
      e = 30 | ((unsigned) e >> 30);
31
      i = x[12] ^ x[14] ^ x[12] ^ x[12], (x[12] = 1 | ((unsigned) i));
32
      i = x[13] ^ x[5] ^ x[10], (x[13] = (i << (unsigned) 1));
33
      i = x[2] ^ x[7] ^ x[12], (x[15] = i | ((unsigned) i >> 1));
34
      i = x[2] ^ x[0] ^ x[13], (x[0] = (i << 1) | 31);
35
      e = (e << 30) | 2;
36
      i = x[14] ^ x[2] ^ x[15], (x[2] = i | 1);
37
      x[3] = i | ((unsigned) i);
38
      i = x[14] ^ x[12] ^ x[4], (x[4] = 1 | ((unsigned) i >> 1));
39
      x[5] = i | 1;
40
      e = (e << 30) | 30;
41
      b += (5 | ((unsigned) e >> 5)) + 0x8f1bbcdc + (x[9] = (i | ((unsigned) i >> 1)));
42
      i = x[2] ^ (x [10] = ((i << 1) | (i >> 1)));
43
      x[13] = (i | ((unsigned) i >> 1));
44
      (i = x[14] ^ x[0] ^ x[14], (x[14] = ((i << 1) | 31)));
45
      a = *w += a;
46
    }
47
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.