Details
Details
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
I wonder if we should be checking for __NO_STRICT_ALIGNMENT (and defining it for architectures other than x86)
Comment Actions
Hmm. I didn't know that existed.
I think it is the right goal, but I don't think we should aim for it in this patch. Not least, I'm not easily set up to test the various other cases covered by that define currently.
Comment Actions
Note that the architecture must be truly totally alignment-agnostic for __NO_STRICT_ALIGNMENT to work. If aarch64 still has restrictions on some instructions (such as ldm/stm) the compiler may generate those for accessing network data in unaligned packet headers (I ran into this on arm32, where ipv6 address accesses got optimized into ldm instructions to load all 16 bytes at once).