Intel x86_64 assembly compare signed double precision floats
<p>I've got a problem according to subject.</p>

<p>In xmm0 register I have a value, e.g. <code>-512.000000</code><br>
And in xmm4: <code>0.000000</code>.</p>

<p>I try to compare the first value with zero and I cannot really achieve this.</p>

<pre><code>comisd xmm0, xmm4
</code></pre>

<p><code>COMISD</code> instruction sets flags in a strange way, and only <code>jnz</code> after that works properly in my code.</p>

<p>How can I do this comparison? </p>