[GOLD] How can I add a undefined symbol in target implementation, not by "-u SYM" from command line ?

Jiong WANG wong.kwongyuan@gmail.com
Mon Aug 13 10:51:00 GMT 2012


Hi All,

  How can I predefine a undefined symbol in target implementation?

  actually, I am porting gold for tilegx, and our arch's tls
implementation requires predefiniation of "_tls_get_addr" because the
assembler generate relocation which use this symbol implicitly.

   I know there are interfaces,  "define_in_output_data/segment" to
predefined symbol with value, but there is no interface to predefine
"undefined" symbol ?

   gold linker do support this by command line "-u SYMBOL",  but it's
a compile time decision not link time.

   currently, I managed to support this by the following ugly code:

    options::parse_set(NULL, "_tls_get_addr",
(gold::options::String_set*)&parameters->options().undefined());

   which is bad, so, could anyone give me some suggestion on this?

   thanks very much

---
Regards,
WANG.Jiong



More information about the Binutils mailing list