-
-
Notifications
You must be signed in to change notification settings - Fork 31k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gh-87092: reduce redundancy and repetition in compiler's optimization stage #96713
Conversation
…ion. Add no_empty_basic_blocks assertion and replace one eliminate_empty_basic_blocks with it
…cks part because that's the responsibility of eliminate_empty_basic_blocks
🤖 New build scheduled with the buildbot fleet by @iritkatriel for commit 42a7525 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
…ks with linenos too.
🤖 New build scheduled with the buildbot fleet by @iritkatriel for commit d06fd46 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
@markshannon buildbots all pass with this. Any further comments? |
🤖 New build scheduled with the buildbot fleet by @iritkatriel for commit cf6d362 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple of questions
eliminate_empty_basic_blocks
by an assertion that there are no empty blockseliminate_empty_basic_blocks
logicclean_basic_block
-->remove_redundant_nops
for claritynormalize_basic_block
-->check_cfg
and reduce it to only check (not remove empty blocks).extend_block
-->inline_small_exit_blocks
. Make it inline blocks with linenos too (as it used to until bde06e1).IS_UNCONDITIONAL_JUMP_OPCODE
macro in a couple of places instead of checking precise opcodes