<div dir="ltr">Hi,<div><br></div><div>I have the following situation:</div><div><br></div><div>A PowerPC (T2080) big endian CPU with an AMD E8860 (little endian) PCIe graphics card.</div><div>I have modified the radeonsi gallium driver to allow execution on big endian (there was a </div><div>union with bitfields and an uint32_t index where the index was out of range because</div><div>the bitfields assumed little endian; patch is in the moderator queue).</div><div>When I use an OpenCL program that fills a 1024 buffer of floats with values from 1..1024,</div><div>the floats are mangled when I retrieve the buffer.</div><div>Some values I can recover by byteswapping (as expected with mixed endianness), others are</div><div>mangled somehow.</div><div><br></div><div>My question is, does the radeonsi gallium driver process result buffers somewhere in the code?</div><div>Pointers are more than welcome. I'm guessing the values are processed/mangled some way,</div><div>and I would love to make this work correctly.</div><div><br></div><div>Bas Vermeulen</div></div>