2008-05-30 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Fri, 30 May 2008 16:58:58 +0000 (16:58 -0000)
committerZoltan Varga <vargaz@gmail.com>
Fri, 30 May 2008 16:58:58 +0000 (16:58 -0000)
* mini-amd64.c (mono_arch_emit_prolog): Increase max_offset when processing
bb_exit instead, since out of line bblocks might not actually be emitted
out-of-line.

svn path=/trunk/mono/; revision=104556

mono/mini/ChangeLog
mono/mini/mini-amd64.c

index 26f36e165b12dfe376548ff35afcb090ac732238..d9085b94e454399b99ea32ba52019f9947d1868d 100644 (file)
@@ -1,5 +1,9 @@
 2008-05-30  Zoltan Varga  <vargaz@gmail.com>
 
+       * mini-amd64.c (mono_arch_emit_prolog): Increase max_offset when processing
+       bb_exit instead, since out of line bblocks might not actually be emitted
+       out-of-line.
+       
        * mini-amd64.c (mono_arch_emit_prolog): Increase bb->max_offset by the
        maximum epilog size for out of line bblocks if tracing is enabled.
 
index 596e99dee483fc0ed9010041314f3f916ee2292f..98b6fa03b6d3337d881b7a1bd412b2eda9daeacf 100644 (file)
@@ -4030,9 +4030,9 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                                max_offset += ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
                        }
 
-                       if (mono_jit_trace_calls && bb->out_of_line)
+                       if (mono_jit_trace_calls && bb == cfg->bb_exit)
                                /* The tracing code can be quite large */
-                               bb->max_offset += max_epilog_size;
+                               max_offset += max_epilog_size;
                }
        }