When I write x86_64 assembly blocks, I saw that the compiler is generating book-keeping code to preserve values of XMM8 to XMM15. So I tend to use them but sometimes we really need all XMM 16 registers. The problem is that the book-keeping code is a fixed cost that could be avoided and sometimes it invalidates our optimizations.
Is there any way to avoid preserving those registers? Any calling convention to do this?