Тип доклада: Доклад

IR JIT Framework: база для следующего поколения JIT в PHP

  • Доклад на русском языке
Презентация pdf

В 2020 году команда спикера выпустила PHP-8.0, в котором впервые представили сразу два JIT компилятора (function и tracing JIT). Решения, которые были приняты при разработке тех версий, позволили получить результат за сравнительно небольшое время. Однако эти же решения создают трудности при оптимизации кода, поддержке и т. д.

В PHP-9 они собираются строить JIT на основе IR Framework, разрабатываемого отдельно. PHP JIT будет только генерировать некий IR, а все вопросы, связанные с оптимизацией, распределением регистров и генерацией кода, будут решаться отдельной библиотекой, которая ничего не знает про PHP (это своего рода аналог LLVM, но заточенный под JIT).

Проект доступен на https://github.com/dstogov/ir — про него спикер и будет рассказывать. Разработчики, знающие Java HotSpot C2 или V8 TurboFun, увидят много знакомого.

Спикеры

Приглашенные эксперты

Расписание