Boost logo

Boost Users :

From: Rainer Deyke (rainerd_at_[hidden])
Date: 2008-08-29 01:42:04


Johan Råde wrote:
> I see three options for dealing with the endianness issue:
> 1. make all archives big-endian
> 2. make all archives little-endian
> 3. use the native format when saving, and put an endianness flag in the
> archive.
>
> 1 is inefficient when moving data between little-endian platforms
> 2 is inefficient when moving data between big-endian platforms
> So 3 should be most efficient. Is there an easy way of storing an
> endianness-flag in an archive?

I don't think performance should be the overriding concern, especially
since byte-shuffling is very fast. The problem with option 3 is that it
introduces a potential source of bugs that only manifests when moving
between platforms with different endianness. I'd prefer option 1,
precisely because it requires shuffling on the most common platforms so
any bugs in the shuffling code are sure to be caught early.

-- 
Rainer Deyke - rainerd_at_[hidden]

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net