fop_helper.c (c60be6e3e38cb36dc66129e757ec4b34152232be) fop_helper.c (daf457d40f92dd5f957b206cc86d95d9c42350c6)
1/*
2 * FPU op helpers
3 *
4 * Copyright (c) 2003-2005 Fabrice Bellard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either

--- 100 unchanged lines hidden (view full) ---

109
110void helper_fdmulq(CPUSPARCState *env, float64 src1, float64 src2)
111{
112 QT0 = float128_mul(float64_to_float128(src1, &env->fp_status),
113 float64_to_float128(src2, &env->fp_status),
114 &env->fp_status);
115}
116
1/*
2 * FPU op helpers
3 *
4 * Copyright (c) 2003-2005 Fabrice Bellard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either

--- 100 unchanged lines hidden (view full) ---

109
110void helper_fdmulq(CPUSPARCState *env, float64 src1, float64 src2)
111{
112 QT0 = float128_mul(float64_to_float128(src1, &env->fp_status),
113 float64_to_float128(src2, &env->fp_status),
114 &env->fp_status);
115}
116
117float32 helper_fnegs(float32 src)
118{
119 return float32_chs(src);
120}
121
122#ifdef TARGET_SPARC64
123float64 helper_fnegd(float64 src)
124{
125 return float64_chs(src);
126}
127
128F_HELPER(neg, q)
129{
130 QT0 = float128_chs(QT1);
131}
132#endif
133
134/* Integer to float conversion. */
135float32 helper_fitos(CPUSPARCState *env, int32_t src)
136{
137 return int32_to_float32(src, &env->fp_status);
138}
139
140float64 helper_fitod(CPUSPARCState *env, int32_t src)
141{

--- 82 unchanged lines hidden (view full) ---

224}
225
226int64_t helper_fqtox(CPUSPARCState *env)
227{
228 return float128_to_int64_round_to_zero(QT1, &env->fp_status);
229}
230#endif
231
117/* Integer to float conversion. */
118float32 helper_fitos(CPUSPARCState *env, int32_t src)
119{
120 return int32_to_float32(src, &env->fp_status);
121}
122
123float64 helper_fitod(CPUSPARCState *env, int32_t src)
124{

--- 82 unchanged lines hidden (view full) ---

207}
208
209int64_t helper_fqtox(CPUSPARCState *env)
210{
211 return float128_to_int64_round_to_zero(QT1, &env->fp_status);
212}
213#endif
214
232float32 helper_fabss(float32 src)
233{
234 return float32_abs(src);
235}
236
237#ifdef TARGET_SPARC64
238float64 helper_fabsd(float64 src)
239{
240 return float64_abs(src);
241}
242
243void helper_fabsq(CPUSPARCState *env)
244{
245 QT0 = float128_abs(QT1);
246}
247#endif
248
249float32 helper_fsqrts(CPUSPARCState *env, float32 src)
250{
251 return float32_sqrt(src, &env->fp_status);
252}
253
254float64 helper_fsqrtd(CPUSPARCState *env, float64 src)
255{
256 return float64_sqrt(src, &env->fp_status);

--- 132 unchanged lines hidden ---
215float32 helper_fsqrts(CPUSPARCState *env, float32 src)
216{
217 return float32_sqrt(src, &env->fp_status);
218}
219
220float64 helper_fsqrtd(CPUSPARCState *env, float64 src)
221{
222 return float64_sqrt(src, &env->fp_status);

--- 132 unchanged lines hidden ---