dancing-gopher

  • ХабрахабрФото Компилятор Go: язык описания правил SSA оптимизаций

    Компилятор Go: язык описания правил SSA оптимизаций

    В компиляторе gc для описания Static Single Assignment (SSA) правил оптимизаций используется специальный Лисп-подобный предметно-ориентированный язык (DSL). Предлагаю разобрать основные элементы этого языка, его особенности и ограничения.В качестве упражнения, добавим в Go компилятор генерацию инструкции, которую он раньше не генерировал, оптимизируя выражение a*b+c. Это первая статья из серии про внутренности Go SSA compiler backend, поэтому помимо обзора самого DSL описания…

    Читать далее »


Кнопка «Наверх»