Alignment of `complex double`
Jonathan Wakely
jwakely.gcc@gmail.com
Tue Jan 7 07:42:19 GMT 2025
On Tue, 7 Jan 2025, 03:09 M Chhapgar via Gcc, <gcc@gcc.gnu.org> wrote:
> Hello,
>
> I am learning about memory alignment and noticed that on my x86-64 machine
> with GCC 14, a `complex double` has a size of 16 bytes, but an alignment of
> only 8 bytes. I am curious as to why this is.
Because it's roughly equivalent to:
double arr[2];
This also has size 16 and alignment 8.
Doesn't it run the risk of
> ending up with a `complex double` that straddles cache lines?
>
Yes, but that's not a problem.
More information about the Gcc
mailing list