оптимизатор

Тема в разделе "LANGS.C", создана пользователем xyz, 26 дек 2011.

  1. xyz

    xyz New Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2008
    Сообщения:
    28
    подскажите пожалуйста, может быть кто располагает информацией или знает где прочитать готовую информацию... интересует алгоритм, по которому компилятор мелкософт (я рассматриваю 2008 студию) с включеным режимом Minimize size генерирует асм код. как отдает предпочтение группировке одинаковых вызовов апи, адрес функции которой он может занести в регистр esi, edi... как определяет, какая переменная используется чаще всего и ее значение можно юзать в регистре... как эти регистры выбираются и в каком приоритете... я не удивлюсь, что быть может принцип работы хорошо где-то расписан, я увы не нашел.
     
  2. paralvic

    paralvic Пархоменко Александр Викторович

    Публикаций:
    0
    Регистрация:
    20 ноя 2010
    Сообщения:
    294
    Адрес:
    Нижний Новгород
    Опция: Компилятор-> Создавать ассемблерный файл. годная для ваших целей. Получается не настолько минимально ;)
     
  3. MMIX

    MMIX New Member

    Публикаций:
    0
    Регистрация:
    9 дек 2011
    Сообщения:
    385
    xyz

    Да уж, микрософт раскроет оптимизирующие алгоритмы своих компиляторов, ага. :)

    paralvic
    А она как сделает, .asm или .lst ?
     
  4. zxcv

    zxcv New Member

    Публикаций:
    0
    Регистрация:
    30 дек 2011
    Сообщения:
    257
    графы, шаблоны. есть открытые компиляторы с оптимизаторами разной мощности (в том числе и мс - lcc. в доке к опимизатору lcc описан принцип, а том числе и распределение регистров). openwatcom, например, иногда бьет msc по плотности и имеет даже доку по апи оптимизатора.
     
  5. SilentSnowfall

    SilentSnowfall New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2011
    Сообщения:
    27
    Dragon Book. Смысл изучать конкретный оптимизатор, лучше классику матчасти почитать.
     
  6. xyz

    xyz New Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2008
    Сообщения:
    28
    тему создавал до того как начал делать компилятор свой. компилятор уже давно сделал :) впринципе основы почитал в Dragon Book, правда про оптимизатор на уровне кода там ничего нет :) но и пофигу, свой придумал алгоритм

    zxcv
    спасибо... гляну