This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [h8300] increase dwarf address size


On 05/10/2012 09:55 PM, DJ Delorie wrote:
That's the default. It doesn't work because pointers are still 16 bits.

Something's still not right then. The H8/300 has 16 bit pointers and a 64k address space and all the processors in the family still support that mode.

The problem is when a single object is more than 64k for the models that have 16 bit pointers. No, they won't work on hardware, but we can't even *compile* them because of the dwarf limitation, which means all the other models can't support such large objects.

I.e. the 2-byte dwarf addresses for H8/300 prevent us from supporting
C++ on the larger H8/300SX processors.
Right, so ISTM the way to fix this is to not build the C++ runtime for "normal" mode, rather than hack up the dwarf address size.

Now I know there's currently no way to do that, but that seems to me to be the correct fix. Unfortunately it's going to probably look a whole lot like multilib exceptions... Ewwww.

Jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]