[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] [PATCH] Mostly fix #1604
From: |
felix . winkelmann |
Subject: |
Re: [Chicken-hackers] [PATCH] Mostly fix #1604 |
Date: |
Sat, 18 May 2019 18:15:07 +0200 |
> Finally, I ran into this head scratcher: I tried to replace = with eq? in
> the code and it sped up the code by a *lot*. However, in fixnum
> arithmetic mode, = gets rewritten to C_eqp. The difference in the C
> output is that the code that uses eq? directly gets this completely
> inlined in the same C function as the following subtractions. The code
> that uses = will get the comparisons in a C function and then call a CPS
> function which does the subtractions. Any ideas why this is? It makes
> a massive difference, so I think it's worthwhile to at least understand
> what's going on here.
Can you give an example? What does "in the code" mean? What code?
felix
Re: [Chicken-hackers] [PATCH] Mostly fix #1604, felix . winkelmann, 2019/05/19