[llvm-dev] [llv-dev] How to understand the move "relocate objects directly reachable from running code" trying to do?

Yafei Liu via llvm-dev
2019-10-18T09:13:49Z

Hi all,

I'm investigating on integrating a gc to my llvm project, and when I read
this
document <http://llvm.org/docs/Statepoints.html>, 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?
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20191018/86d92821/attachment.html>