[LLVMdev] [lld] process undefined atoms from shared library only once

Shankar Easwaran
2013-11-19T07:03:30Z

Hi Nick,

--start-group/--end-group functionality with the Gnu flavor currently
works only if the --start-group/--end-group contains archive files.

If they contain dynamic libraries, the undefined atoms from the dynamic
libraries are processed whenever the group is iterated again.

I am trying to find out a way to make the resolver add undefined atoms
from the shared library only *once*, when the SharedLibrary is first
visited as part of the Group.

The only approach that I can think of is having a std::map in the
resolver and using that to process undefined atoms from shared libraries
the first time the shared library is visited. I dont like this approach
as its not clean.

Any alternative approaches to handle this ?

Thanks

Shankar Easwaran

--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the
Linux Foundation