From e59383fe911a1842fee8fbd3c71e2ad63680226b Mon Sep 17 00:00:00 2001 From: Lennart Sorensen Date: Tue, 1 Sep 2015 11:20:15 +0100 Subject: [PATCH] Add move_f_to_i4 and move_i4_to_f to PowerPC --- mono/mini/cpu-ppc.md | 2 ++ mono/mini/mini-ppc.c | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/mono/mini/cpu-ppc.md b/mono/mini/cpu-ppc.md index e6baf9148fc..8109c232b0b 100644 --- a/mono/mini/cpu-ppc.md +++ b/mono/mini/cpu-ppc.md @@ -128,6 +128,8 @@ storer8_memindex: dest:b src1:i src2:i len:4 loadu4_mem: dest:i len:8 move: dest:i src1:i len:4 fmove: dest:f src1:f len:4 +move_f_to_i4: dest:i src1:f len:8 +move_i4_to_f: dest:f src1:i len:8 add_imm: dest:i src1:i len:4 sub_imm: dest:i src1:i len:4 mul_imm: dest:i src1:i len:4 diff --git a/mono/mini/mini-ppc.c b/mono/mini/mini-ppc.c index 16d3eaf28eb..b905b412e66 100644 --- a/mono/mini/mini-ppc.c +++ b/mono/mini/mini-ppc.c @@ -3746,6 +3746,14 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb) if (ins->dreg != ins->sreg1) ppc_fmr (code, ins->dreg, ins->sreg1); break; + case OP_MOVE_F_TO_I4: + ppc_stfs (code, ins->sreg1, -4, ppc_r1); + ppc_ldptr (code, ins->dreg, -4, ppc_r1); + break; + case OP_MOVE_I4_TO_F: + ppc_stw (code, ins->sreg1, -4, ppc_r1); + ppc_lfs (code, ins->dreg, -4, ppc_r1); + break; case OP_FCONV_TO_R4: ppc_frsp (code, ins->dreg, ins->sreg1); break; -- 2.11.4.GIT