Hacker News new | ask | show | jobs
by int0x80 1294 days ago
There is __attribute__((aligned)) that some compilers provide (e.g. gcc, clang) but it's non-standard.
2 comments

Thank you for the respone.

Can we write like this? Klass ssc __attribute__((64));

This could convey more info than padding.

Further, I wish, gcc could have provided an attribute that explicitly forces for the cache line alignment than just generic alignment. Generic scalar type alignment is not same as the cache line alignment.

Example: Klass sc __attribute__((start_at_cache_line));

alignas(std::hardware_destructive_interference_size) is the portable solution.
Thank you for sharing this. I was not aware of this. But now agree, it is indeed portable solution.
alignas() has been standard for a decade now.