title: How does the assembly TEST instruction work with these jump instructions?
body: <p>Using AT&amp;T assembly syntax, I'm trying to understand how <code>testl</code> is used in assembly code. Specifically:</p>
  
  <pre><code>testl  %edx, %edx
  jle    .L3
  </code></pre>
  
  <p>I know <code>testl</code> does a bitwise <code>and</code> of the same value to set the condition flags, but how can I interpret 'jump if less than or equal to' if it isn't comparing two values?</p>