Gabriel Ivăncescu : jscript: Implement a Garbage Collector to deal with circular references.
Module: wine Branch: master Commit: e8ee6ddae8077873c4a06530fd793a1c8c942428 URL: https://gitlab.winehq.org/wine/wine/-/commit/e8ee6ddae8077873c4a06530fd793a1... Author: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> Date: Thu Dec 8 17:02:50 2022 +0200 jscript: Implement a Garbage Collector to deal with circular references. Implement a basic GC based on the mark-and-sweep algorithm, without requiring manually specifying "roots", which vastly simplifies the code. Signed-off-by: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> --- dlls/jscript/dispex.c | 324 ++++++++++++++++++++++++++++++++++++++++++++++ dlls/jscript/engine.c | 28 ++++ dlls/jscript/enumerator.c | 11 +- dlls/jscript/function.c | 88 +++++++++++-- dlls/jscript/jscript.c | 3 + dlls/jscript/jscript.h | 20 ++- dlls/jscript/jsregexp.c | 17 ++- dlls/jscript/set.c | 37 +++++- dlls/jscript/tests/run.c | 18 +++ 9 files changed, 532 insertions(+), 14 deletions(-)
participants (1)
-
Alexandre Julliard