are there any platforms where gcc doesn't support 8-byte ints? Can a front end depend on this?
The rtl expander can open-code long long using a datatype with half the size if no patterns are defined in the md file. There are some processors where code using all long long operations would not fit into the addressable program memory, but you probably wouldn't want fortran for these anyway. More serious is the matter of having exactly 8 bytes. long long is docuemnted to be at least 64 bits, but there is no guarantee that it is exactly 64 bits. E.g. if the target is word-addressed with 36 bit units, you'll get a 72 bit long long (2 units). Currently, only the c4x has a BITS_PER_UNIT other than 8, and even the c4x definition is a reltively harmless 32, but there is no guarantee that gcc won't aquire again some more interesting definitions. Also, right now on the c4x, you have to watch out not to confuse a byte with an addressable unit.