Техника оптимизации под линуха

трансформация условных переходов, до которых процессор не может "дотянуться"


Условный или безусловный переход, указывающий на выход из функции, всеми тремя компиляторами заменяется на непосредственный выход из функции, при условии, что код эпилог достаточно мал и накладные расходы на его дублирование невелики:

f(int a, int b)

{

       while(a--)

       {

              if (a == b) break; // условный переход на return a;

       }

       return a;

}



Содержание раздела