URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 318 |
Rev 384 |
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-require-effective-target ilp32 } */
|
/* { dg-require-effective-target ilp32 } */
|
/* { dg-options "-O2 -march=i486" } */
|
/* { dg-options "-O2 -march=i486" } */
|
|
|
void
|
void
|
foo (unsigned long long *p)
|
foo (unsigned long long *p)
|
{
|
{
|
unsigned long long tmp;
|
unsigned long long tmp;
|
tmp = *p;
|
tmp = *p;
|
tmp = (tmp >> 32) | (tmp << 32);
|
tmp = (tmp >> 32) | (tmp << 32);
|
tmp = (((tmp & 0xff00ff00ff00ff00ULL) >> 8)
|
tmp = (((tmp & 0xff00ff00ff00ff00ULL) >> 8)
|
| ((tmp & 71777214294589695ULL) << 8));
|
| ((tmp & 71777214294589695ULL) << 8));
|
*p = (((tmp & 0xffff0000ffff0000ULL) >> 16)
|
*p = (((tmp & 0xffff0000ffff0000ULL) >> 16)
|
| ((tmp & 281470681808895ULL) << 16));
|
| ((tmp & 281470681808895ULL) << 16));
|
}
|
}
|
|
|
/* { dg-final { scan-assembler-times "bswap" 2 } } */
|
/* { dg-final { scan-assembler-times "bswap" 2 } } */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.