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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [gcc.target/] [cris/] [peep2-andu2.c] - Diff between revs 316 and 338

Only display areas with differences | Details | Blame | View Log

Rev 316 Rev 338
/* { dg-do assemble } */
/* { dg-do assemble } */
/* { dg-final { scan-assembler "movu.w \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler "movu.w \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler "and.w 2047,\\\$" } } */
/* { dg-final { scan-assembler "and.w 2047,\\\$" } } */
/* { dg-final { scan-assembler-not "move.d \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler-not "move.d \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler "movu.b \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler "movu.b \\\$r10,\\\$" } } */
/* { dg-final { scan-assembler "and.b 95,\\\$" } } */
/* { dg-final { scan-assembler "and.b 95,\\\$" } } */
/* { dg-final { scan-assembler "andq -2,\\\$" } } */
/* { dg-final { scan-assembler "andq -2,\\\$" } } */
/* { dg-options "-O2 -save-temps" } */
/* { dg-options "-O2 -save-temps" } */
 
 
/* Test the "andu" peephole2 trivially, register operand.  */
/* Test the "andu" peephole2 trivially, register operand.  */
 
 
unsigned int
unsigned int
and_peep2_hi (unsigned int y, unsigned int *x)
and_peep2_hi (unsigned int y, unsigned int *x)
{
{
  *x = y & 0x7ff;
  *x = y & 0x7ff;
  return y;
  return y;
}
}
 
 
unsigned int
unsigned int
and_peep2_qi (unsigned int y, unsigned int *x)
and_peep2_qi (unsigned int y, unsigned int *x)
{
{
  *x = y & 0x5f;
  *x = y & 0x5f;
  return y;
  return y;
}
}
 
 
 
 
unsigned int
unsigned int
and_peep2_q (unsigned int y, unsigned int *x)
and_peep2_q (unsigned int y, unsigned int *x)
{
{
  *x = y & 0xfe;
  *x = y & 0xfe;
  return y;
  return y;
}
}
 
 

powered by: WebSVN 2.1.0

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