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/] [pr35767-2d.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-options "-O2 -msse2" } */
/* { dg-options "-O2 -msse2" } */
/* { dg-require-effective-target sse2 } */
/* { dg-require-effective-target sse2 } */
 
 
#include "sse2-check.h"
#include "sse2-check.h"
 
 
typedef  __m128d __attribute__((aligned(1))) unaligned;
typedef  __m128d __attribute__((aligned(1))) unaligned;
 
 
__m128d  __attribute__((noinline))
__m128d  __attribute__((noinline))
foo (__m128d a1, __m128d a2, __m128d a3, __m128d a4,
foo (__m128d a1, __m128d a2, __m128d a3, __m128d a4,
     __m128d a5, __m128d a6, __m128d a7, __m128d a8,
     __m128d a5, __m128d a6, __m128d a7, __m128d a8,
     int b1, int b2, int b3, int b4, int b5, int b6, int b7, unaligned y)
     int b1, int b2, int b3, int b4, int b5, int b6, int b7, unaligned y)
{
{
  return y;
  return y;
}
}
 
 
void
void
sse2_test (void)
sse2_test (void)
{
{
  unaligned x;
  unaligned x;
  __m128d y = { 0 };
  __m128d y = { 0 };
  x = y;
  x = y;
  y = foo (y, y, y, y, y, y, y, y, 1, 2, 3, 4, 5, 6, -1, x);
  y = foo (y, y, y, y, y, y, y, y, 1, 2, 3, 4, 5, 6, -1, x);
  if (__builtin_memcmp (&y, &x, sizeof (y)) != 0)
  if (__builtin_memcmp (&y, &x, sizeof (y)) != 0)
    abort ();
    abort ();
}
}
 
 

powered by: WebSVN 2.1.0

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