This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH] Updated RDOS support
----- Original Message -----
From: "Alan Modra" <email@example.com>
Why should $LARGE_DATA_ADDR affect $OTHER_BSS_SECTIONS? Hmm, I see
LARGE_SECTIONS=yes adds .lbss to OTHER_BSS_SECTIONS. That's not very
nice as quite a few targets use OTHER_BSS_SECTIONS for other purposes.
Your patch makes this even more confusing. Also, since you seem to
want a separate large segment, do you really want to lay out your
large sections as .lbss, .lrodata, .ldata? Wouldn't .lrodata, .ldata,
.lbss make more sense?
Yes, absolutely. If the lbss area is large it will also increase executable
size for no reason.
But, shouldn't this be the order regardless of LARGE_DATA_ADDR setting? This
seems like a bug.
Also, there isn't much point in adding support for -Tldata-segment
here without the rest of the support, so that needs adding or simply
omit use of SEGMENT_START().
I think that if the large segment is separated by some TBs of virtual
the executable file would become enormous without a new section. But
I might be wrong here.
I'll look into the additional support reqúired for -Tldata-segment.
I committed your fix for RODATA_ADDR. Thanks!
There is also a problem with SEPARATE_CODE. First to achieve reasonable
separation it is not enough to increase address by page-size. There needs to
at least on guard-page for effective separation. I would suggest the
1. Page align
2. Add at least one page more