This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Hex6x .c6xabi.exidx extraction from library with linker command file specification

I'm attempting to split out a library into a separate b0* file with other sections (.text, etc).  I'm doing this by creating separate sections to keep common code together, while separating non-common code for two libraries. 

Problem:

.c6xabi.exidx will not split out.  Whilst,  .c6xabi.extab, does split properly.   Why does the exidx (exception table indices) not split, but the table (un-wind code entries) itself will? 

Linker error:

"../finallnk.cmd", line 72: warning #10068-D: no matching section

relevant portion of my Linker Command File

.c6xabi.exidx  

.split_me_exidx { -l=myLibrary.lib(.c6xabi.exidx) }

.c6xabi.extab 

.split_me_extab { -l=myLibrary.lib(.c6xabi.extab) }

 

Generated map file

 

.c6xabi.exidx   (this demonstrates it didn't work )

* 0       e00625b0 00000930

            e00625b0 00000008         (.c6xabi.exidx.vecs:app_pe64Pe.oe64Pe)

            e00625b8 00000050        myLibrary.lib : Module.obj (.c6xabi.exidx:.text)

            e0062608 00000110                         : Executive.obj (.c6xabi.exidx:.text)

...

.split_me_extab         (this worked!)

* 0 e0063034 000003b4

e0063034 00000054                 myLibrary.lib : Executive.obj (.c6xabi.extab:_ZN7myLibrary9ExecutiveC1ER10CEventFlagiPNS0_13ExtensibilityE)


Any ideas? 

 

Thanks

  • Thank you for bringing this issue to our attention.  I can reproduce your results.  I cannot explain why the exidx sections are handled differently than the extab sections.  I filed SDSCM00050824 in the SDOWP system to have this investigated.  Feel free to follow it with the SDOWP link below in my signature.

    Thanks and regards,

    -George

  • Thanks, George! 

          Is there a fast work-around?  I am trying a few things:

    1. Specify module and filename in splitting them out

    .myLibrary_exidx { -l=myLibrary.lib<Module.obj>(.c6xabi.exidx) }

    but this says the same error as posted above ("no matching section").

     

    Thanks in advance for you help

     

     

     

  • Suresh Chandresekar said:
    Is there a fast work-around?

    I don't think so.  I tried several variations as well.  None of them worked.  Sorry!

    -George