------- Comment #3 from jakub at gcc dot gnu dot org 2009-05-06 09:18 ------- The code generated for SMALL is correct, any caller that passes argument not aligned on 8 byte boundary (you are mistaken that it requires 16 byte alignment, try calling it with c(3) which is 8 byte aligned, but not 16 byte aligned and it will work too) is invalid. All DOUBLE PRECISION variables/arrays must be properly aligned on 8 byte boundaries.
-- jakub at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40037