dead_code_removing #25

Merged
Alexander_KS merged 4 commits from dead_code_removing into master 2024-02-02 17:32:49 +00:00
Collaborator
  • добавлено удаление недостижимого кода, попутно с этим был обнаружен и исправлен баг в подстановщике (есть опасение, что он начнёт работать ощутимо дольше)
  • исправлен баг с тем, что инструкции условного перехода считались мёртвыми и из-за этого переменные, участвующие в условии, не становились живыми
  • добавлена возможность удаления операторов вызова функций и процедур

При удалении функций и процедур используются isPure и FuncParams.isArg[In|Out]. Я заметил, что isPure не учитывает оператор write, а также помечает isPure = false если в функции подключён модуль, но никак не используется, поэтому в этих случаях удаление вызовов процедур даёт результаты, отличные от ожидаемых.

- добавлено удаление недостижимого кода, попутно с этим был обнаружен и исправлен баг в подстановщике (есть опасение, что он начнёт работать ощутимо дольше) - исправлен баг с тем, что инструкции условного перехода считались мёртвыми и из-за этого переменные, участвующие в условии, не становились живыми - добавлена возможность удаления операторов вызова функций и процедур При удалении функций и процедур используются `isPure` и `FuncParams.isArg[In|Out]`. Я заметил, что `isPure` не учитывает оператор `write`, а также помечает `isPure = false` если в функции подключён модуль, но никак не используется, поэтому в этих случаях удаление вызовов процедур даёт результаты, отличные от ожидаемых.
xnpster added 4 commits 2024-02-02 13:03:38 +00:00
Author
Collaborator

Также пришлось добавить функционал для изменения ГПУ (удаления вершин из графа)

Также пришлось добавить функционал для изменения ГПУ (удаления вершин из графа)
Alexander_KS merged commit 6b02c756c8 into master 2024-02-02 17:32:49 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Alexander_KS/SAPFOR#25