Выбор инструкции

Оглавление1 Выбор инструкции1.1 Выбор команд в компиляторе1.2 Макрорасширение1.3 Покрытие графика1.4 Полный текст статьи:2 Выбор инструкции — Википедия Выбор инструкции Выбор […]

Выбор инструкции

  • Выбор команд в компиляторе

    • Выбор команд преобразует промежуточное представление в низкоуровневое IR. 
    • Предшествует планированию команд и распределению регистров. 
    • Выходные данные содержат псевдорегистры и могут быть оптимизированы. 
    • Похож на машинный код, байт-код и язык ассемблера. 
  • Макрорасширение

    • Макрорасширение сопоставляет шаблоны в IR среднего уровня. 
    • При совпадении выполняется макрос, генерирующий целевые инструкции. 
    • Может выполняться в текстовом или графическом представлении IR. 
    • Обычно сочетается с оптимизацией на глазок для повышения эффективности. 
    • Пример подхода – GCC. 
  • Покрытие графика

    • Преобразование IR в граф и покрытие его шаблонами. 
    • Шаблон соответствует части графа и может быть реализован одной командой. 
    • Цель – минимизировать стоимость выбранных шаблонов, обычно количество циклов. 
    • Для древовидных графов используется динамическое программирование, для DAG и полных графов – жадные алгоритмы или комбинаторная оптимизация. 

Полный текст статьи:

Выбор инструкции — Википедия

Оставьте комментарий

Прокрутить вверх