<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.c</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+2</td><td></td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">d18488c8668b -> b76840ccf94b</td></tr>
<tr class="alt" style=";" ><td><tt><a href="#file2">sh4trans.h</a></tt></td><td id="addedalt" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ccf7cc;" align="right">+6</td><td></td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">d18488c8668b -> b76840ccf94b</td></tr>
<tr><td><tt><a href="#file3">sh4x86.in</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+2</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-7</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">d18488c8668b -> b76840ccf94b</td></tr>
<tr><td></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+10</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-7</td><td></td></tr>
</table>
<small id="info" style="color: #888888;" >3 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;" >
Fix stack alignment when calling the end-block callback (broken on OS X)
</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.c</b></big> <small id="info" style="color: #888888;" >d18488c8668b -> b76840ccf94b</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/sh4/sh4trans.c
+++ lxdream/src/sh4/sh4trans.c
@@ -316,6 +316,8 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     { "sh4_write_sr", sh4_write_sr },
     { "sh4_read_sr", sh4_read_sr },
     { "sh4_raise_exception", sh4_raise_exception },
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+    { "sh4_shadow_block_begin", sh4_shadow_block_begin },
+    { "sh4_shadow_block_end", sh4_shadow_block_end },
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     { "sh4_sleep", sh4_sleep },
     { "sh4_fsca", sh4_fsca },
     { "sh4_ftrv", sh4_ftrv },
</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>sh4trans.h</b></big> <small id="info" style="color: #888888;" >d18488c8668b -> b76840ccf94b</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/sh4/sh4trans.h
+++ lxdream/src/sh4/sh4trans.h
@@ -76,6 +76,12 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >  */
 void sh4_shadow_init( void );
 
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+/**
+ * Shadow mode callbacks.
+ */
+void sh4_shadow_block_begin( void );
+void sh4_shadow_block_end( void );
+
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > extern uint8_t *xlat_output;
 extern struct xlat_recovery_record xlat_recovery[MAX_RECOVERY_SIZE];
 extern xlat_cache_block_t xlat_current_block;
</pre></div>
<hr /><a name="file3" /><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;" >d18488c8668b -> b76840ccf94b</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/sh4/sh4x86.in
+++ lxdream/src/sh4/sh4x86.in
@@ -519,9 +519,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      }
        JNE_label(wrongmode);
        if( sh4_x86.end_callback ) {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-       /* Note this does leave the stack out of alignment, but doesn't matter
-            * for what we're currently using it for.
-            */
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >        PUSH_r32(REG_EAX);
            MOVP_immptr_rptr(sh4_x86.end_callback, REG_ECX);
            JMP_rptr(REG_ECX);
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -618,11 +615,9 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > static void exit_block()
 {
        if( sh4_x86.end_callback ) {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-       MOVP_immptr_rptr(sh4_x86.end_callback, REG_ECX);
-           JMP_rptr(REG_ECX);
-       } else {
-           RET();
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+         CALL_ptr(sh4_x86.end_callback);
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >    }
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     RET();
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > }
 
 /**
</pre></div>
<center><small>Chaos Theory</small></center>
</div></body></html>