blob: 92c906fc852ee9ac72c32754ce211c211d8c4881 [file] [log] [blame]
/* This is an autogenerated file. Do not edit. */
#include "defines.h"
#include "macros.h"
#include "args.h"
char
fun_test_returning_char (void)
{
volatile_var++;
return 64;
}
short
fun_test_returning_short (void)
{
volatile_var++;
return 65;
}
int
fun_test_returning_int (void)
{
volatile_var++;
return 66;
}
long
fun_test_returning_long (void)
{
volatile_var++;
return 67;
}
long long
fun_test_returning_long_long (void)
{
volatile_var++;
return 68;
}
float
fun_test_returning_float (void)
{
volatile_var++;
return 69;
}
double
fun_test_returning_double (void)
{
volatile_var++;
return 70;
}
long double
fun_test_returning_long_double (void)
{
volatile_var++;
return 71;
}
#define def_test_returning_type_xmm(fun, type, ret, reg) \
{ type var = WRAP_RET (fun) (); \
assert (ret == (type) reg && ret == var); }
int
main (void)
{
def_test_returning_type_xmm(fun_test_returning_char, char, 64, rax);
def_test_returning_type_xmm(fun_test_returning_short, short, 65, rax);
def_test_returning_type_xmm(fun_test_returning_int, int, 66, rax);
def_test_returning_type_xmm(fun_test_returning_long, long, 67, rax);
def_test_returning_type_xmm(fun_test_returning_long_long, long long, 68, rax);
def_test_returning_type_xmm(fun_test_returning_float, float, 69, xmm_regs[0]._float[0]);
def_test_returning_type_xmm(fun_test_returning_double, double, 70, xmm_regs[0]._double[0]);
def_test_returning_type_xmm(fun_test_returning_long_double, long double, 71, x87_regs[0]._ldouble);
return 0;
}