If you look at the bottom of those _array functions you will find a regular loop doing the cleanup for anything missed by the inline asm. If I remember correctly, for gdc it is this loop doing the whole operation as the asm is versioned out.
I think it is something different. LDC has standard D inline asm.
