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/] [i386/] [pr32000-1.c] - Diff between revs 318 and 338

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

Rev 318 Rev 338
/* { dg-do run } */
/* { dg-do run } */
/* { dg-require-effective-target dfp } */
/* { dg-require-effective-target dfp } */
/* { dg-options "-O -msse2 -std=gnu99" } */
/* { dg-options "-O -msse2 -std=gnu99" } */
/* { dg-require-effective-target sse2 } */
/* { dg-require-effective-target sse2 } */
 
 
#include "sse2-check.h"
#include "sse2-check.h"
 
 
typedef struct { _Decimal128 f __attribute__((packed)); } packed;
typedef struct { _Decimal128 f __attribute__((packed)); } packed;
 
 
_Decimal128 __attribute__((noinline))
_Decimal128 __attribute__((noinline))
foo (_Decimal128 a1, _Decimal128 a2, _Decimal128 a3, _Decimal128 a4,
foo (_Decimal128 a1, _Decimal128 a2, _Decimal128 a3, _Decimal128 a4,
     _Decimal128 a5, _Decimal128 a6, _Decimal128 a7, _Decimal128 a8,
     _Decimal128 a5, _Decimal128 a6, _Decimal128 a7, _Decimal128 a8,
     int b1, int b2, int b3, int b4, int b5, int b6, int b7, packed y)
     int b1, int b2, int b3, int b4, int b5, int b6, int b7, packed y)
{
{
  return y.f;
  return y.f;
}
}
 
 
void
void
sse2_test (void)
sse2_test (void)
{
{
  packed x;
  packed x;
  _Decimal128 y = -1;
  _Decimal128 y = -1;
  x.f = y;
  x.f = y;
  y = foo (0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, -1, x);
  y = foo (0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, -1, x);
  if (__builtin_memcmp (&y, &x.f, sizeof (y)))
  if (__builtin_memcmp (&y, &x.f, sizeof (y)))
    abort ();
    abort ();
}
}
 
 

powered by: WebSVN 2.1.0

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