"Генерация высококачественного кода для программ, написа" - читать интересную книгу автора (Хислей Филипп Н.) | присваиваний. Не должен генерироваться код. |
* --------------------------- */ void dead_code( a, b ) int a; char *b; { int idead_store; idead_store = a; if( 0 ) printf( "%s\n", b ); } /* Конец dead_code */ /* -------------------------- * | Функция: unnecessary_loop | | Цикл в следующей функции ненужен, так как | | значение присваивания постоянно. В идеале | | цикл должен быть удален. | * -------------------------- */ void unnecessary_loop() { int x; x = 0; k5 = x + j5; } /* Конец unnecessary_loop */ /* -------------------------- * | Функция: loop_jamming | | Два цикла в этой функции имеют одинаковые | | заголовки и могут быть слиты в один. | * -------------------------- */ void loop_jamming( x ) int x; { for( i = 0; i " 5; i++ ) k5 = x + j5 * i; for( i = 0; i " 5; i++ ) i5 = x * k5 * i; } /* Конец loop_jamming */ /* --------------------------- * | Функция: loop_unrolling | | Цикл в этой функции должен быть заменен | | тремя присваиваниями с использованием | | константной индексации массива или машинно- | | зависимыми командами для инициализации | | блока памяти. | |
|
|