------- Comment #12 from ubizjak at gmail dot com  2008-11-14 07:40 -------
(In reply to comment #8)
> Let me know if I need to provide anything else to debug this. Again, this test
> case passes completely if I delete the second line of t027_test.h.

The problem is, that %mm0 register is accessed in check2601(), as can be seen
from t027_y.s assembler dump. This access blocks stack registers in
check2601va(), so the check fails at this point.

My patch disables all access to MMX registers, so V1DImode should be handled by
generic moves.

However, IIRC darwin doesn't use MMX registers to pass function args/return
values. From t027_y.s dump that you provided, it is evident that check2601()
returns its structure with only v1di member in %mm0. Is this OK?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38099

Reply via email to