Hi,
I am running into a few issues that arise when C++ Exceptions are enabled in my project.
Thanks,
-itay
I will address only number 3. First, the EXIDX section absolutely must be one contiguous table. Second, the relocation R_C6000_PREL31 should never overflow; the fact that it does is the subject of defect report SDSCM00042923. See that defect report for potential workarounds.
Itay ChamielI have noticed that the .vecs section is modified at runtime (during the pre-main initialization)
That's surprising. Exactly what function does this?
You should probably make a new post with issue number 2 in the BIOS forum.
Hi Archaeologist,
Thanks!
I'm sorry, that was a typo; it's SDSCM00042923.
The defect report raises more questions that it answers. The workaround suggested is: "Allocate .c6xabi.exidx and .c6xabi.extab and all text sections within 2^31 bytes of each other, or just ignore the warnings."
But, that's exactly how I'm already allocating my sections. The problem seems to be with .vecs, which is not a text section. (Or is it?) Also, from the last part of the sentence I can understand that this warning is entirely meaningless. So, should I simply ignore it?
Thanks.
That defect report is still being analyzed; a conclusion has not been reached. I believe it should be safe to ignore the warnings, but there is some suggestion that exception handling could fail in the presence of such warnings (yet to be proven).
There should not be any references (by addressing mode or relocations) in .vecs to EXIDX or EXTAB sections, or vice versa. Hmm... I hadn't noticed before that that's exactly what your quoted error message says. May I see your linker map file (--map_file), or at least those parts relevant to .vecs, EXIDX, and EXTAB?
How are you creating .vecs?
There's a sample project attached to my first post.
Archaeologist You should probably make a new post with issue number 2 in the BIOS forum.
Done, see http://e2e.ti.com/support/embedded/bios/f/355/t/177495.aspx .
I also asked about issue number 1 in the CCS forum, see http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/177466.aspx .
ArchaeologistThere should not be any references (by addressing mode or relocations) in .vecs to EXIDX or EXTAB sections, or vice versa.
Upon further reflection, I don't see any reason why it would be a problem to have an entry in EXIDX for .vecs, so I must retract this statement.
As I said, the defect is still being analyzed, but it should be safe to ignore the warning when it refers to .vecs.
Archaeologist,are there any new information that belongs to the relocation overflow problem?RegardsJo
This bug is still marked open, so no, there is no new information.
As far as I can see this bug from version 7.3.2 no longer occurs in all versions since 7.3.4 (I haven't checked 7.3.3). For some reason in SDOWP it's marked as fixed in 7.3.5. Oddly enough, in the DefectHistory.txt file as of 7.3.7 this is still listed as a known issue.
Can someone clarify the situation and fix the discrepancies?