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

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


Am Sat, 26 Mar 2022 21:45:57 +0100
schrieb Nicolas Pomarède <npomarede@xxxxxxxxxxxx>:

> 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!
> 
> 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.

Yes. I did that already here:

 https://github.com/tonioni/WinUAE/pull/213

:-)

 Thomas


> > 
> > 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/