On Fri, 16 Aug 2019 at 12:37, <tony.ngu...@bt.com> wrote: > > Hi Phillippe, > > On 8/16/19 7:58 PM, Philippe Mathieu-Daudé wrote: > >On 8/16/19 8:28 AM, tony.ngu...@bt.com wrote: > >> For each device declared with DEVICE_NATIVE_ENDIAN, find the set of > >> targets from the set of target/hw/*/device.o. > >> > >> If the set of targets are all little or all big endian, re-declare > >> the device endianness as DEVICE_LITTLE_ENDIAN or DEVICE_BIG_ENDIAN > >> respectively. > > > >If only little endian targets use a device, that doesn't mean the device > >is designed in little endian... > > > >Then if a big endian target plan to use this device, it will require > >more work and you might have introduced regressions... > > > >I'm not sure this is a safe move. > > > >> This *naive* deduction may result in genuinely native endian devices > >> being incorrectly declared as little or big endian, but should not > >> introduce regressions for current targets. > > > > Roger. Evidently too naive. TBH, most devices I've never heard of...
OTOH it's worth noting that it's quite likely that most of the implementations of these DEVICE_NATIVE_ENDIAN devices picked it in an equally naive way, by just copying some other device's code... thanks -- PMM