I just updated to NASM 2.15 and am still fighting with the changes. I found a bug and want to share it with you before it is fixed. I already submitted a bug report.
%macro Convert 2-3.nolist
%[%3]CVTDQ2PD %1, %2
%endmacro
NASM will no generate any code if the last parameter is empty.
Convert XMM0, XMM1
Expected code: CVTDQ2PD XMM0, XMM1
Generated code: empty
Convert XMM0, XMM1, {}
Expected code: CVTDQ2PD XMM0, XMM1
Generated code: empty
Convert XMM0, XMM1, V
Expected code: VCVTDQ2PD XMM0, XMM1
Generated code: VCVTDQ2PD XMM0, XMM1