Michael Eager <[EMAIL PROTECTED]> writes: > Ross Ridge wrote: >> Miceal Eagar writes: >>> I'm working with a target that has 32-bit word addressing, >>> so there is a define of BITS_PER_UNIT = 32. >> >> According to the documentation, this changes the size of a byte to 32 >> bits, instead of the more usual 8 bits. >> >>> This causes a problem: an error saying that there is >>> no emulation for 'DI'. DImode has a precision of 128 bits, >>> which is clearly incorrect. (All the other integer modes >>> were incorrect as well.) >> >> DImode is defined to be 8 bytes long so with a 32-bit byte I'd expect >> it to be 256 bits. Trying use QImode and HImode for 32-bit and 64-bit >> operations respectively. > > Well, can't do that. This is not target dependent. > DImode gets defined, and used, for long long in unwind-dw2.c.
But like Ross says, DImode is 256 bits, so its unwind-dw2.c that needs to change. (FWIW, I remember testing c4x for some pan-target changes after it was slated for removal, and I just disabled the unwinding stuff. Most other things seemed to work fine.) Richard