emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Excessive use of `eassert`


From: Stefan Monnier
Subject: Re: Excessive use of `eassert`
Date: Sun, 21 Jan 2024 10:54:24 -0500
User-agent: Gnus/5.13 (Gnus v5.13)

> I looked into this a bit and installed the attached patches which should
> speed things slightly even with a default build.

Nice.

> The main goal was to speed up debugging builds, though.

I still get:

    (gdb) x/12i init_window
       0xbbabc <init_window>:       push   %ebx
       0xbbabd <init_window+1>:     sub    $0x18,%esp
       0xbbac0 <init_window+4>:     call   0x235b0 <__x86.get_pc_thunk.bx>
       0xbbac5 <init_window+9>:     add    $0x34652f,%ebx
       0xbbacb <init_window+15>:    lea    0xc(%esp),%eax
       0xbbacf <init_window+19>:    lea    0x383d4c(%ebx),%edx
       0xbbad5 <init_window+25>:    call   0xa2d57 <make_lisp_symbol>
       0xbbada <init_window+30>:    mov    0xc(%esp),%eax
       0xbbade <init_window+34>:    mov    %eax,0x334230(%ebx)
       0xbbae4 <init_window+40>:    add    $0x18,%esp
       0xbbae7 <init_window+43>:    pop    %ebx
       0xbbae8 <init_window+44>:    ret
    (gdb)

whereas with my patch this goes down to:

    (gdb) x/4i init_window
       0xb1715 <init_window>:       call   0x2ff9e <__x86.get_pc_thunk.ax>
       0xb171a <init_window+5>:     add    $0x31c8da,%eax
       0xb171f <init_window+10>:    movl   $0x0,0xe9d0(%eax)
       0xb1729 <init_window+20>:    ret
    (gdb)

🙁


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]