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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [optimize1.C] - Diff between revs 149 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
// { dg-do run  }
// { dg-do run  }
// { dg-options "-O2" }
// { dg-options "-O2" }
//
//
// Copyright (C) 2001 Free Software Foundation, Inc.
// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 18 May 2001 
// Contributed by Nathan Sidwell 18 May 2001 
// Bug 2781. We forgot to copy addressability information when
// Bug 2781. We forgot to copy addressability information when
// cloning.
// cloning.
struct B
struct B
{
{
  B(int v1);
  B(int v1);
  void Member (int v1);
  void Member (int v1);
  static void Static (int v1);
  static void Static (int v1);
};
};
struct D : B
struct D : B
{
{
  D (int v1);
  D (int v1);
};
};
void xswap(int& x1) ;
void xswap(int& x1) ;
int xxx = 0;
int xxx = 0;
B::B(int v1)
B::B(int v1)
{
{
  xswap(v1);
  xswap(v1);
  xxx = v1;
  xxx = v1;
}
}
void B::Member(int v1)
void B::Member(int v1)
{
{
  xswap(v1);
  xswap(v1);
  xxx = v1;
  xxx = v1;
}
}
void B::Static(int v1)
void B::Static(int v1)
{
{
  xswap(v1);
  xswap(v1);
  xxx = v1;
  xxx = v1;
}
}
D::D(int v1)
D::D(int v1)
  : B (v1)
  : B (v1)
{
{
}
}
void xswap (int& x1) { x1 = 2; }
void xswap (int& x1) { x1 = 2; }
int main ()
int main ()
{
{
  B p (1);
  B p (1);
  if (xxx != 2)
  if (xxx != 2)
    return 1;
    return 1;
  D q (1);
  D q (1);
  if (xxx != 2)
  if (xxx != 2)
    return 2;
    return 2;
  p.Member (1);
  p.Member (1);
  if (xxx != 2)
  if (xxx != 2)
    return 3;
    return 3;
  p.Static (1);
  p.Static (1);
  if (xxx != 2)
  if (xxx != 2)
    return 4;
    return 4;
  return 0;
  return 0;
}
}
 
 

powered by: WebSVN 2.1.0

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