-benchmark-mode implies -O3, which implies -optimize-leaf-routines.

The latter transforms routines that don't perform any further
calls and do only simple operations into non-CPS procedures,
which is more efficient. So for example:

(define (foo x) (+ x 1))

(print (list (foo 33) (foo 44))) ; call twice to avoid beta-contraction

produces:

/* foo in k18 in k15 in k12 */
static C_word C_fcall f_22(C_word t1){
C_word tmp;
C_word t2;
return((C_word)C_u_fixnum_plus(t1,C_fix(1)));}


cheers,
felix

On 12/16/05, Daishi Kato <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I just wondered about csc -help,
> why -benchmark-mode does not include -optimize-leaf-routines,
> although I have no idea what it exactly is.
>
> Thanks,
> Daishi
>
>
> _______________________________________________
> Chicken-users mailing list
> [email protected]
> http://lists.nongnu.org/mailman/listinfo/chicken-users
>


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to