/** * This module tells the garbage collector about the static data and bss segments, * so the GC can scan them for roots. It does not deal with thread local static data. * * Copyright: Copyright Digital Mars 2000 - 2012. * License: Distributed under the * $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0). * (See accompanying file LICENSE) * Authors: Walter Bright, Sean Kelly * Source: $(DRUNTIMESRC rt/_memory.d) */module rt.memory;import core.memory;import rt.sections;void initStaticDataGC(){ foreach (ref sg; SectionGroup) { foreach (rng; sg.gcRanges) GC.addRange(rng.ptr, rng.length); }}
/**
* This module tells the garbage collector about the static data and bss segments,
* so the GC can scan them for roots. It does not deal with thread local static data.
*
* Copyright: Copyright Digital Mars 2000 - 2012.
* License: Distributed under the
* $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0).
* (See accompanying file LICENSE)
* Authors: Walter Bright, Sean Kelly
* Source: $(DRUNTIMESRC rt/_memory.d)
*/
module rt.memory;
import core.memory;
import rt.sections;
void initStaticDataGC()
{
foreach (ref sg; SectionGroup)
{
foreach (rng; sg.gcRanges)
GC.addRange(rng.ptr, rng.length);
}
}