bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#69706: 30.0.50; sort.c, unnecessary GC marking


From: Mattias Engdegård
Subject: bug#69706: 30.0.50; sort.c, unnecessary GC marking
Date: Sun, 10 Mar 2024 12:16:42 +0100

>> sort.c uses record_unwind_protect_mark to let GC mark some objects in
>> its merge_state structure, while GC marks the specpdl stack.
>> 
>> This is
>> 
>> - unnecessary because all the objects that are currrently extra
>>  protected by merge_markmem, are already seen by the GC, because these
>>  are the objects being sorted, which are protected in the usual way
>>  (marking the control stack, ...)

Thank you Gerd, but I don't think we can guarantee that those objects are 
present anywhere else -- the original vector is being mutated by the algorithm, 
after all.

In addition, I have Grand Plans (well, some kind of plans) for an improvement 
to the sorting code that will likely require record_unwind_protect_mark or an 
equivalent facility. A new bug will be opened about that.






reply via email to

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