title: Portable branch prediction hints
body: <p>Is there any portable way of doing branch prediction hints? Consider the following example:</p>
  
  <pre><code>  if (unlikely_condition) {
      /* ..A.. */
    } else {
      /* ..B.. */
    }
  </code></pre>
  
  <p>Is this any different than doing:</p>
  
  <pre><code>  if (!unlikely_condition) {
      /* ..B.. */
    } else {
      /* ..A.. */
    }
  </code></pre>
  
  <p>Or is the only way to use compiler specific hints? (e.g. __builtin_expect on GCC)</p>
  
  <p>Will compilers treat the <code>if</code> conditions any differently based on the ordering of the conditions?</p>