Re: [hatari-devel] Portability patch -> missing STOPTRY |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
- To: hatari-devel@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [hatari-devel] Portability patch -> missing STOPTRY
- From: Thomas Huth <th.huth@xxxxxxxxx>
- Date: Sat, 26 Mar 2022 20:58:14 +0000
- Cc: Toni Wilen <twilen@xxxxxxxxxx>
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1648328297; bh=+E/D3HQ7kpwsTgdhfXiYD2AvAgcOHdUKQTUHOFsi/zE=; h=Date:From:To:Cc:Subject:From; b=DLHnYctAVvRq/Eftee3Cxissar7T5S1TA+oqbbNdfX9pvgQA+7dvvnG38PNk/m+1v 2Ia7InPXlAiczqL88rj6PV8VMNsjpu4E4v64O032CdTNjpH7m+lXHCZupRYjbyWYnK JpaLudjvzet7ivMmt+18j3EMbCYEgKhepbsxl1DzkoBzl84xX78OM+Cqpenv0KRnpx Lu9zjIbUvCPjf9iw2xP9swcRw7AwEWQt++h3W4JaGeLOwTd7aoenz+287kPcDM/8Bs gaxWZrRfil46wCkYXRv4C3h9nqmzsJ5Uj0H7hafCxYB04DCO1lr4jlcYu8QuNs7Q94 jOl/sHxAjhOpQ==
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 ?