[Issue 4400] D2 GC doesn't allocate with 16 bytes alignment

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Jun 28 09:52:07 PDT 2010


http://d.puremagic.com/issues/show_bug.cgi?id=4400



--- Comment #2 from bearophile_hugs at eml.cc 2010-06-28 09:52:04 PDT ---
I have not found the thread where this was announced, you can ask to other
people about this. I remember a "recent" change in the D GC to ensure the 16
byte alignment of the dynamic arrays and structs.

The 16 bytes alignment was introduced because instructions like the SSE2 movapd
need 16 byte alignment:
http://en.wikipedia.org/wiki/MOVAPD

I have recently used it here:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=112670

And some other SSE* instructions work with 8 byte alignment too, but they are
slower (future CPUs can remove such alignment requirements, some of it has
being removed already, so in that future the GC can go back giving 8 bytes
aligned memory).

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list