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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [g++.dg/] [torture/] [pr36445.C] - Blame information for rev 308

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

Line No. Rev Author Line
1 301 jeremybenn
/* { dg-do compile } */
2
// This used to fail as we would try to expand a VCE where one side had
3
// a mode of BLKmode and the other side was a vector mode.
4
#define vector __attribute__((vector_size(16) ))
5
struct struct1  {
6
  union { float a[3]; }    vmx;
7
  struct struct2   {
8
    struct2(const struct2& r) {}
9
  } w;
10
} __attribute__((aligned(16)));
11
struct struct3  {
12
  vector float vmx;
13
  operator const struct1& () const{
14
    return *reinterpret_cast(this);
15
  }
16
};
17
struct3 func3( struct3 V1);
18
struct3 func2( void );
19
void func1( )  {
20
  struct1 vVec = func2() ;
21
  func3 ( (struct3&)vVec );
22
}

powered by: WebSVN 2.1.0

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