Busy making it all compile.
Thinking of removing run-time cache-line alignment, going back to compile-time only.
My feeling is that the use case for run-time is rare (how often will the a compatable CPU have different cache line lengths?) and the costs of supporting this (awkward code) affect everyone, all the time.
OTOH, it just struck me – maybe in the mobile world, we see CPUs across Android platforms varying their cache-line widths? but they’re all ARMs… my guess is they’re all 32 byte cache lines. Going to check now. If so, hmm… well, 64 bit ARMs are coming out. They will end up in phones. Then you have 32-bit Android and 64-bit Android. This will be masked from end users, but how? 32 bit binaries for everyone? fat binaries? automatic selection of correct build?