Portable branch подсказки предсказания

Есть ли переносимый способ выполнения подсказки предсказания ветвления? Рассмотрим следующий пример:

  if (unlikely_condition) {
    /* ..A.. */
  } else {
    /* ..B.. */
  }

Это чем-то отличается от выполнения:

  if (!unlikely_condition) {
    /* ..B.. */
  } else {
    /* ..A.. */
  }

Или это единственный способ использовать специфические подсказки компилятора? (например { // сделай что-нибудь }

Мне нужен простой пример того, как сделать следующее в встроенной сборке, x86, Visual Studio

for (int i=1; i<N; ++i)
{
// do something
}
1
задан aCuria 13 September 2010 в 17:46
поделиться