blob: 88eedee40c289d26dc88f17dce61f1f314b19868 [file] [log] [blame]
/* APPLE LOCAL file 4448096 */
/* { dg-do compile { target i?86-*-* } } */
/* APPLE LOCAL x86_64 */
/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O2 -mpreferred-stack-boundary=2 -mfpmath=sse -msse2" } */
#include <stdlib.h>
double d = 42.0;
unsigned int i;
main ()
{
i = d;
return 0;
}
/* The SSE-only double -> uint32 conversion uses several vector
instructions (including "maxsd"), and any spills amongst these
requires an SSE-aligned stack. -mpreferred-stack-boundary=2 means
"4-byte aligned stack," therefore the compiler must not emit any
vector-mode instructions for this testcase. */
/* { dg-final { scan-assembler-not "maxsd" } } */