Hi all,
I’m investigating on integrating a gc to my llvm project, and when I read this document, one sentence confused me:
However, for a collector which wishes to relocate objects directly reachable from running code, a higher standard is required.
I don’t understand what the move “relocate objects directly reachable from running code” trying to do.
For my information, the concept “relocate” means the gc pointer refereed to a new location of an object, for example:
in Java:
Foo foo = new Foo();
foo = new Foo(); // ---> a relocation happens
So can anyone explain what the “relocate objects directly reachable from running code” trying to do?