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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.old-deja/] [g++.law/] [mentor1.C] - Blame information for rev 699

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 699 jeremybenn
// { dg-do assemble  }
2
// { dg-options "-O" }
3
// GROUPS passed mentor
4
struct Word {
5
   struct S1 *p1;
6
};
7
struct S1 {
8
   Word o;
9
   void shift_left(int delta, int ct);
10
};
11
inline void S1::shift_left(int delta, int ct)
12
{
13
   int cnt = ct;
14
   for (S1 *to_p = this, *from_p = to_p + delta; cnt--;) *to_p++ = *from_p++;
15
}
16
 
17
void dispose_t(S1 *tp, int from_index, int ct, const int d_last_t)
18
{
19
        int new_ct = d_last_t + 1 - ct;
20
        tp[0].o.p1[from_index].shift_left(ct, new_ct - from_index);
21
}

powered by: WebSVN 2.1.0

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