X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fmini-x86.c;h=a3e893a1e2b79a4d8ca8f10dd559b9a592b64ba3;hb=f9ae98ab88f522219cd6be6fd282ef30adbc5365;hp=54966b1dc8f39bbbafc7fe04dcfe581c4781e90d;hpb=a71c1c7196c272486507a96a784e0f0158acac35;p=mono.git diff --git a/mono/mini/mini-x86.c b/mono/mini/mini-x86.c index 54966b1dc8f..a3e893a1e2b 100644 --- a/mono/mini/mini-x86.c +++ b/mono/mini/mini-x86.c @@ -4927,6 +4927,13 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb) case OP_SET_SP: x86_mov_reg_reg (code, X86_ESP, ins->sreg1, sizeof (mgreg_t)); break; + case OP_FILL_PROF_CALL_CTX: + x86_mov_membase_reg (code, ins->sreg1, MONO_STRUCT_OFFSET (MonoContext, esp), X86_ESP, sizeof (mgreg_t)); + x86_mov_membase_reg (code, ins->sreg1, MONO_STRUCT_OFFSET (MonoContext, ebp), X86_EBP, sizeof (mgreg_t)); + x86_mov_membase_reg (code, ins->sreg1, MONO_STRUCT_OFFSET (MonoContext, ebx), X86_EBX, sizeof (mgreg_t)); + x86_mov_membase_reg (code, ins->sreg1, MONO_STRUCT_OFFSET (MonoContext, esi), X86_ESI, sizeof (mgreg_t)); + x86_mov_membase_reg (code, ins->sreg1, MONO_STRUCT_OFFSET (MonoContext, edi), X86_EDI, sizeof (mgreg_t)); + break; default: g_warning ("unknown opcode %s\n", mono_inst_name (ins->opcode)); g_assert_not_reached ();