[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#35321: [PATCH] * src/bytecode.c (exec_byte_code) Unroll Blist3 and B
From: |
Alex Gramiak |
Subject: |
bug#35321: [PATCH] * src/bytecode.c (exec_byte_code) Unroll Blist3 and Blist4 |
Date: |
Fri, 19 Apr 2019 15:31:01 -0600 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Alex Gramiak <agrambot@gmail.com>
>> Cc: 35321@debbugs.gnu.org
>> Date: Fri, 19 Apr 2019 14:30:03 -0600
>>
>> > Does this produce any tangible performance gains?
>>
>> It seems to be within error. I was just in the byte compiler recently
>> and saw that Blist3/4 don't use list3/4 like Blist2 uses list2. If
>> you're worried about touching older code for little gain, then I guess
>> it's safer to leave it alone.
>
> Is there any reason other than performance to make the change?
There's no functional difference, so the only remaining aspects are
readability and similarity with the other BlistX cases. I suppose it
loses on the readability front, and it's not much of an issue to be
dissimilar to Blist2. Perhaps it's best to leave this alone after all.
> Also, are Blist3/4 used frequently enough to justify the change?
They're used any time (list x y z) and (list w x y z) are byte-compiled,
so I imagine they're used quite a bit.