Re:GCC Non-bugs
by jakobegger on Monday March 02, 2015 @03:42AM
(#9130944)
Yes. Use memcpy if you need to do this! This is especially important when you're on a platform that requires aligned pointers. For example, the following code will crash on ARM
Using memcpy works on any platform with 4 byte floats:
[ Parent
| on HN ]
But the union won't crash either (the compiler will keep it aligned), the conversion compiles to no-op, and doesn't waste memory.
Embedded targets are always memory-constrained. If they aren't, you are wasting money on hardware.
Re:GCC Non-bugs
by jakobegger on Monday March 02, 2015 @01:03PM
(#9133263)
I was thinking about the case when you get unaligned data (eg you are reading from a file or from the network). Then you need to copy the data anyway.