program testprog {
section module {
}
section data {
int rax = 0
float xmm0 = 0.0
float xmm1 = 0.0
float xmm2 = 0.0
float xmm3 = 0.0
float real_const_2 = 30.1
float real_const_1 = 20.2
float real_const_0 = 10.5
string fmt_float = "%.6f "
string newline = "\n"
float testFunction_x = 0.0
float testFunction_y = 0.0
float testFunction_z = 0.0
float __funcret_testFunction = 0.0
}
section code {
start:
mov xmm0, real_const_0
mov xmm1, real_const_1
mov xmm2, real_const_2
call FUNC_testFunction
mov xmm3, xmm0
print fmt_float, xmm3
print newline
done
function FUNC_testFunction:
mov testFunction_x, xmm0
mov testFunction_y, xmm1
mov testFunction_z, xmm2
mov xmm0, testFunction_x
mul xmm0, testFunction_y
mul xmm0, testFunction_z
mov __funcret_testFunction, xmm0
FUNC_END_testFunction:
mov xmm0, __funcret_testFunction
ret
}
}