https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92597
--- Comment #16 from Klaus Leppkes <leppkes at stce dot rwth-aachen.de> --- So after reading a bit more, from my understanding, +g should be used for all integral/floating point/vector types and +m for other (aggregate types) which cannot end up in an register. Still, it might be possible for an aggregate type like struct mycomplex { double v1; double v2; }; to end up in SSE register, right?