<html>
<body>
  <div id="body" style="background-color:#ffffff;" >
<table cellspacing="0" cellpadding="0" border="0" rules="cols">
<tr class="head" style="border-bottom-width:1px;border-bottom-style:solid;" ><td class="headtd" style="padding:0;padding-top:.2em;" colspan="4">Commit in <b><tt>lxdream/src/sh4</tt></b></td></tr>
<tr><td><tt><a href="#file1">sh4trans.h</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+1</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-1</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">072131b61d2a -> a14dbddafd13</td></tr>
<tr class="alt" style=";" ><td><tt><a href="#file2">sh4x86.in</a></tt></td><td id="addedalt" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ccf7cc;" align="right">+10</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-2</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">072131b61d2a -> a14dbddafd13</td></tr>
<tr><td></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+11</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-3</td><td></td></tr>
</table>
<small id="info" style="color: #888888;" >2 modified files</small><br />
<pre class="comment" style="white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap;word-wrap:break-word;padding:4px;border:1px dashed #000000;background-color:#ffffdd;" >
Update maximum epilogue size
</pre>
<hr /><a name="file1" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/sh4</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>sh4trans.h</b></big> <small id="info" style="color: #888888;" >072131b61d2a -> a14dbddafd13</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/sh4/sh4trans.h
+++ lxdream/src/sh4/sh4trans.h
@@ -34,7 +34,7 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > /** Maximum size of the translation epilogue (current real size is 116 bytes, so
  * allows a little room
  */
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-#define EPILOGUE_SIZE 13<span id="removedchars" style="background-color:#ff9999;font-weight:bolder;" >6</span>
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+#define EPILOGUE_SIZE 13<span id="addedchars" style="background-color:#99ff99;font-weight:bolder;" >9</span>
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > 
 /** Maximum number of recovery records for a translated block (2048 based on
  * 1 record per SH4 instruction in a 4K page).
</pre></div>
<hr /><a name="file2" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/sh4</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>sh4x86.in</b></big> <small id="info" style="color: #888888;" >072131b61d2a -> a14dbddafd13</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/sh4/sh4x86.in
+++ lxdream/src/sh4/sh4x86.in
@@ -121,12 +121,15 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > static uint32_t save_fcw; /* save value for fpu control word */
 static uint32_t trunc_fcw = 0x0F7F; /* fcw value for truncation mode */
 
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+static void FASTCALL sh4_translate_get_code_and_backpatch( uint32_t pc );
+
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > static struct x86_symbol x86_symbol_table[] = {
     { "sh4r+128", ((char *)&sh4r)+128 },
     { "sh4_cpu_period", &sh4_cpu_period },
     { "sh4_address_space", NULL },
     { "sh4_user_address_space", NULL },
     { "sh4_translate_breakpoint_hit", sh4_translate_breakpoint_hit },
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+    { "sh4_translate_get_code_and_backpatch", sh4_translate_get_code_and_backpatch },
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     { "sh4_write_fpscr", sh4_write_fpscr },
     { "sh4_write_sr", sh4_write_sr },
     { "sh4_read_sr", sh4_read_sr },
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -520,11 +523,16 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > 
 uint32_t sh4_translate_end_block_size()
 {
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     uint32_t epilogue_size = EPILOGUE_SIZE;
+       if( sh4_x86.end_callback ) {
+           epilogue_size += (CALL1_PTR_MIN_SIZE - 1);
+       }
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     if( sh4_x86.backpatch_posn <= 3 ) {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        <span id="removedchars" style="background-color:#ff9999;font-weight:bolder;" >return EPILOGUE_SIZE +</span> (sh4_x86.backpatch_posn*(12+CALL1_PTR_MIN_SIZE));
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        <span id="addedchars" style="background-color:#99ff99;font-weight:bolder;" >epilogue_size +=</span> (sh4_x86.backpatch_posn*(12+CALL1_PTR_MIN_SIZE));
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     } else {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        <span id="removedchars" style="background-color:#ff9999;font-weight:bolder;" >return EPILOGUE_SIZE +</span> (3*(12+CALL1_PTR_MIN_SIZE)) + (sh4_x86.backpatch_posn-3)*(15+CALL1_PTR_MIN_SIZE);
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        <span id="addedchars" style="background-color:#99ff99;font-weight:bolder;" >epilogue_size +=</span> (3*(12+CALL1_PTR_MIN_SIZE)) + (sh4_x86.backpatch_posn-3)*(15+CALL1_PTR_MIN_SIZE);
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     }
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+    return epilogue_size;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > }
 
 
</pre></div>
<center><small>Chaos Theory</small></center>
</div></body></html>