Oh, that was quite mundane - as most bugs are when found. :)

Huge props to you for finding it so very fast.


On 2017-07-15 14:45, Alexander Burger wrote:
> On Sat, Jul 15, 2017 at 02:02:00PM +0200, Jakob Eriksson wrote:
>> What was it?
> 
> The diff is:
> 
>    2460a2461
>    >       push ZERO  # <L III> Safe
>    2489,2490c2490,2491
>    <       ld E (L I)  # Get product
>    <       ld (L I) A  # Save halved argument
>            call adduAE_A  # Add for rounding
>    ---
>    >       ld (L III) A  # Save halved argument
>    >       ld E (L I)  # Get product, keep in safe
>            call adduAE_A  # Add for rounding
> 
> Register E was not saved before the call to 'adduAE_A', because the stack
> entry (L I) was overwritten with register A. Now A is saved in a separate
> entry (L III).
> 
> ♪♫ Alex
> 

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to