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