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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [tree-ssa/] [pr46734.C] - Blame information for rev 693

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 693 jeremybenn
/* { dg-do compile } */
2
/* { dg-options "-O -fipa-sra" } */
3
 
4
struct A
5
{
6
  int *p;
7
  A() {p = (int *) -1;}
8
  ~A() {if (p && p != (int *) -1) *p = 0;}
9
};
10
 
11
struct B
12
{
13
  A a;
14
  char data[23];
15
  B() : a() {data[0] = 0;}
16
};
17
 
18
extern A ga;
19
extern int *gi;
20
extern void *gz;
21
extern B *gb;
22
 
23
static int * __attribute__ ((noinline)) foo (B *b, void *z)
24
{
25
  __builtin_memcpy (gz, z, 28);
26
  ga = b->a;
27
  return b->a.p;
28
}
29
 
30
int *bar (B *b, void *z)
31
{
32
  gb = b;
33
  return foo (b, z);
34
}

powered by: WebSVN 2.1.0

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