Re: [hatari-devel] Portability patch -> missing STOPTRY

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Le 26/03/2022 à 16:34, Thomas Huth a écrit :

  Hi!

I just noticed this hasn't been fixed in Hatari yet, so I went ahead now
and adapted the patch (there were some additional spots missing). Thank you
for reporting it!

  Thomas



Hi

I'm cc-ing toni in case he didn't see this post, as it would certainly be better to include it in main WinUAE sources too.

Nicolas



Am Tue, 9 Mar 2021 18:47:31 +0100
schrieb Andreas Grabher <andreas_g86@xxxxxxxxxx>:

This is the patch (only for 68030 and 68040 as Previous does not use other CPUs):

diff -ruB /Users/andi/Desktop/previous-code-r969-branches-branch_softfloat/src/cpu/newcpu.c /Users/andi/Desktop/Previous_Latest/src/cpu/newcpu.c
--- /Users/andi/Desktop/previous-code-r969-branches-branch_softfloat/src/cpu/newcpu.c	2021-03-06 07:25:26.000000000 +0100
+++ /Users/andi/Desktop/Previous_Latest/src/cpu/newcpu.c	2021-03-09 18:42:21.000000000 +0100
@@ -6064,8 +6064,10 @@
  #endif
if (regs.spcflags) {
-					if (do_specialties (cpu_cycles))
+					if (do_specialties (cpu_cycles)) {
+						STOPTRY;
  						return;
+					}
  				}
  			}
  		} CATCH (prb) {
@@ -6192,8 +6194,10 @@
  				lastintr = intr;
  #endif
  				if (regs.spcflags) {
-					if (do_specialties (cpu_cycles))
+					if (do_specialties (cpu_cycles)) {
+						STOPTRY;
  						return;
+					}
  				}
  				
  			}


Am 09.03.2021 um 13:55 schrieb Nicolas Pomarède <npomarede@xxxxxxxxxxxx>:

Le 09/03/2021 à 10:59, Andreas Grabher a écrit :
There is a bug in the run-loops affecting the C implementation of try/catch:
Before returning after non-zero do_specialties() we need to call STOPTRY. That call is missing. C++ WinUAE is not affected.

Hi

at which line in the source ?











Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/