From f703b1265fbfb70a3de51067803b6b211d5c5d4d Mon Sep 17 00:00:00 2001 From: Stefan Ring Date: Fri, 14 Oct 2011 23:21:52 +0200 Subject: [PATCH] * src/vm/jit/arm/emit.c (emit_verbosecall_enter): Remove broken support for float argument passing in registers The removed code was not prepared for handling register numbers constructed by PACK_REGS and would produce illegal instructions. --- src/vm/jit/arm/emit.c | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/src/vm/jit/arm/emit.c b/src/vm/jit/arm/emit.c index b1587e340..f5617cd85 100644 --- a/src/vm/jit/arm/emit.c +++ b/src/vm/jit/arm/emit.c @@ -794,7 +794,6 @@ void emit_verbosecall_enter(jitdata *jd) if (!md->params[i].inmemory) { s = md->params[i].regoff; -#if defined(ENABLE_SOFTFLOAT) switch (md->paramtypes[i].type) { case TYPE_INT: case TYPE_FLT: @@ -806,23 +805,6 @@ void emit_verbosecall_enter(jitdata *jd) M_LST(s, REG_SP, i * 8); break; } -#else - switch (md->paramtypes[i].type) { - case TYPE_ADR: - case TYPE_INT: - M_IST(s, REG_SP, i * 8); - break; - case TYPE_LNG: - M_LST(s, REG_SP, i * 8); - break; - case TYPE_FLT: - M_FST(s, REG_SP, i * 8); - break; - case TYPE_DBL: - M_DST(s, REG_SP, i * 8); - break; - } -#endif } } @@ -838,7 +820,6 @@ void emit_verbosecall_enter(jitdata *jd) if (!md->params[i].inmemory) { s = md->params[i].regoff; -#if defined(ENABLE_SOFTFLOAT) switch (md->paramtypes[i].type) { case TYPE_INT: case TYPE_FLT: @@ -850,23 +831,6 @@ void emit_verbosecall_enter(jitdata *jd) M_LLD(s, REG_SP, i * 8); break; } -#else - switch (md->paramtypes[i].type) { - case TYPE_ADR: - case TYPE_INT: - M_ILD(s, REG_SP, i * 8); - break; - case TYPE_LNG: - M_LLD(s, REG_SP, i * 8); - break; - case TYPE_FLT: - M_FLD(s, REG_SP, i * 8); - break; - case TYPE_DBL: - M_DLD(s, REG_SP, i * 8); - break; - } -#endif } } -- 2.25.1