Hi, Didier Kryn wrote: > Another concern is that a software which does run only on one single > endianness proves to be buggy and loosely written. High level software > such as Firefox should be independant of such considerations, exactly as > it should not rely on internal details of the implementation of > libraries, the libc in the first place. In this respect, the revival of > Linux on BE arches -- together with libcs alternative to glibc -- would > be a big service to the Linux ecosystem.
That's the theory. Practice is different. E.g. if you use GNUstep, an OpenStep/Cocoa reimplementation which has multiplatform in by design, your life is happy. Most endianness problems are solved inside, so if you write an application in it, it will be cross-platform, except if you wrote some low-level code code with graphics, network byte swapping or such. You could still have issues, as certain code (e.g. shifts, swaps, casts, signed/unsigned issues) works in one endiannes and not the other or vice-versa. something like a browser, however, is a mess. It handles a lot of stuff wuite low-level, graphics layers, GL, sound, countless image and video codec libraries. Plus JS script support for your specific CPU. Just look at TenFourFox and the various bug reports and patches Cameron proposed to mozilla which sometimes got accepted, sometimes ignored. Most noticeably SKIA noit being interested in BE at all, as well as issues with Cairo. I am working on the ArcticFox browser and try to import most of these fixes ftom TenFourFox to make them available on a browser not limited to Mac. But it is a pain and a pity to know "upstream" is diverging more and more. Currently, ArcticFox has only minor issues compared on PPC to itself built on Intel or ARM. Help appreciated. For me, the only real endiannes is Big-Endian, as were many classic CPUs, Motorola 68k, classic MIPS, PPC, SPARC, HP-PA. I hoped Risc-V would be... and think that PPC-le is betrayal like MIPS-le. Like a BE VAX would have been betrayal! But this is personal. Cheers, Riccardo