[llvm-dev] LLD : __start_ and __end_ symbols for orphan sections

Moshtaghi, Alireza via llvm-dev llvm-dev at lists.llvm.org
Tue Jun 2 00:00:24 PDT 2020


You are right it creates them but sets the protected flag (STV_PROTECTED) which seems to be the cause of my problem.
How can I tell it to set the flag as STV_DEFAULT?

Thanks
A

On 5/28/20, 11:30 PM, "Fangrui Song" <maskray at google.com> wrote:

    NetApp Security WARNING: This is an external email. Do not click links or open attachments unless you recognize the sender and know the content is safe.




    On 2020-05-28, Moshtaghi, Alireza via llvm-dev wrote:
    >lld does not seem to create the __start and __end symbols for orphan sections.
    >I would like to keep my linker script as generic as possible so how can I tell lld to create these symbols without having to add them in the linker script?
    >
    >Thanks
    >A

    It works for me.

    SECTIONS {
       data : { *(data) }
    }

    .section data,"aw"
    .quad __start_orphan
    .quad __stop_orphan

    .section orphan,"aw"
    .quad __start_data
    .quad __stop_data


    Can you give an example __start_ or __end_ symbols are not defined for orphan sections?



More information about the llvm-dev mailing list