[chbot] Compiler Opt

Bevin Brett bevin_brett at hotmail.com
Fri Jul 2 04:10:53 BST 2021

> it looks like the conversion functions that generate the YCbCr 4:2:0 data from the ARGB8888 ready for the hardware engine have bits optimised away!

In such code, you often see unions or pointer casting.  Unless told otherwise by volatile, the compiler is allowed to assume the alternatives in the union are in completely different memory locations just like in a struct, and that writes through one pointer type will not affect reads through the other.

How many lines of code are these conversion functions?   Can you create a small example that shows the problem?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ourshack.com/pipermail/chchrobotics/attachments/20210702/b594d39c/attachment.html>

More information about the Chchrobotics mailing list