1/* { dg-do run } */
2/* { dg-options "-mpreferred-stack-boundary=4 -msse" } */
3/* { dg-require-effective-target ilp32 } */
4/* { dg-require-effective-target sse } */
5
6#include "sse-check.h"
7
8extern void abort(void);
9
10void __attribute__((fastcall, sseregparm)) foo(int i, int j, float x)
11{
12  static int last_align = -1;
13  int dummy, align = (int)&dummy & 15;
14  if (last_align < 0)
15    last_align = align;
16  else if (align != last_align)
17    abort ();
18}
19
20static void
21sse_test (void)
22{
23	foo(0,0,0.0);
24	foo(0,0,0.0);
25}
26