Task #5095
closed
[parser][cfg] Оптимизация представления ветвлений - многовариантные узлы switch
Added by Sergey Smolov over 10 years ago.
Updated about 10 years ago.
Description
В IG конструкции вида switch\case разворачиваются в многоэтажные if\then\else конструкции.
При построении CFG нужно строить на их основе многовариантные узлы switch (с количеством дочерних узлов, возможно, большим 2).
- Status changed from New to Open
Логика процесса оптимизации должна быть реализована в отдельном компоненте, являющемся наследником класса Backend. Компонент должен быть зарегистрирован в VHDL\Verilog-парсерах.
Реализована заглушка компонента parser.basis.backend.SwitchOptimizer
- Subject changed from [parser][vhdl] Оптимизация представления ветвлений - многовариантные узлы switch to [vhdl][parser][cfg] Оптимизация представления ветвлений - многовариантные узлы switch
- Subject changed from [vhdl][parser][cfg] Оптимизация представления ветвлений - многовариантные узлы switch to [parser][cfg] Оптимизация представления ветвлений - многовариантные узлы switch
Слиянию подлежат те switch-узлы, условия в которых имеют вид "(expr = c_1 || ... || expr = c_2)".
c_1 ... c_n - попарно неравные числовые константы
- Status changed from Open to Resolved
- % Done changed from 0 to 100
- Published in build set to r918
Реализован компонент ru.ispras.retrascope.parser.basis.backend.CfgSwitchBackend, решающий поставленную задачу
- Status changed from Resolved to Closed
Also available in: Atom
PDF