Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
- Contact: cacao@cacaojvm.org
-
- Authors: Christian Thalinger
-
$Id: emit.c 4398 2006-01-31 23:43:08Z twisti $
*/
disp = src->vv.regoff * 4;
if (IS_FLT_DBL_TYPE(src->type)) {
-#if !defined(ENABLE_SOFTFLOAT)
+#if defined(ENABLE_SOFTFLOAT)
+ if (IS_2_WORD_TYPE(src->type))
+ M_LLD(tempreg, REG_SP, disp);
+ else
+ M_ILD(tempreg, REG_SP, disp);
+#else
if (IS_2_WORD_TYPE(src->type))
M_DLD(tempreg, REG_SP, disp);
else
M_FLD(tempreg, REG_SP, disp);
-#else
- assert(0);
#endif
}
else {
disp = dst->vv.regoff * 4;
-#if !defined(ENABLE_SOFTFLOAT)
if (IS_FLT_DBL_TYPE(dst->type)) {
+#if defined(ENABLE_SOFTFLOAT)
+ if (IS_2_WORD_TYPE(dst->type))
+ M_LST(d, REG_SP, disp);
+ else
+ M_IST(d, REG_SP, disp);
+#else
if (IS_2_WORD_TYPE(dst->type))
M_DST(d, REG_SP, disp);
else
M_FST(d, REG_SP, disp);
+#endif
}
else {
if (IS_2_WORD_TYPE(dst->type))
else
M_IST(d, REG_SP, disp);
}
-#else
- if (IS_2_WORD_TYPE(dst->type))
- M_LST(d, REG_SP, disp);
- else
- M_IST(d, REG_SP, disp);
-#endif
}
else if (IS_LNG_TYPE(dst->type)) {
#if defined(__ARMEL__)
}
if (s1 != d) {
-#if !defined(ENABLE_SOFTFLOAT)
if (IS_FLT_DBL_TYPE(src->type)) {
+#if defined(ENABLE_SOFTFLOAT)
+ if (IS_2_WORD_TYPE(src->type))
+ M_LNGMOVE(s1, d);
+ else
+ /* XXX grrrr, wrong direction! */
+ M_MOV(d, s1);
+#else
if (IS_2_WORD_TYPE(src->type))
M_DMOV(s1, d);
else
M_FMOV(s1, d);
+#endif
}
else {
if (IS_2_WORD_TYPE(src->type))
/* XXX grrrr, wrong direction! */
M_MOV(d, s1);
}
-#else
- if (IS_2_WORD_TYPE(src->type))
- M_LNGMOVE(s1, d);
- else
- /* XXX grrrr, wrong direction! */
- M_MOV(d, s1);
-#endif
}
emit_store(jd, iptr, dst, d);