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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [20020215-1.c] - Rev 801

Go to most recent revision | Compare with Previous | Blame | View Log

/* Test failed on an architecture that:
 
   - had 16-bit registers,
   - passed 64-bit structures in registers,
   - only allowed SImode values in even numbered registers.
 
   Before reload, s.i2 in foo() was represented as:
 
	(subreg:SI (reg:DI 0) 2)
 
   find_dummy_reload would return (reg:SI 1) for the subreg reload,
   despite that not being a valid register.  */
 
struct s
{
  short i1;
  long i2;
  short i3;
};
 
struct s foo (struct s s)
{
  s.i2++;
  return s;
}
 
int main ()
{
  struct s s = foo ((struct s) { 1000, 2000L, 3000 });
  if (s.i1 != 1000 || s.i2 != 2001L || s.i3 != 3000)
    abort ();
  exit (0);
}
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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