2 years ago

#9854

test-img

111qqz

why gcc5 on a x86-64 system get 32-byte aligned when using new operator?

Under gcc4.9, the address obtained from the new operator is only 16-byte aligned, but under gcc5.1, it is 32-byte aligned.

I initially thought it was related to aligned new, but aligned new is only available when std=c++17 flag is used and compiled under gcc7.

The alignment rules of new should be controlled in Libstdc++, so I went to look at the code of libstdc++ , but did not find any changes related to gcc5

So my question is, why gcc5 can have 32 byte alignment, is there any report related to this?

c++

g++

simd

memory-alignment

0 Answers

Your Answer

Accepted video resources