Skip to content
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

Create init stage default plugin #10687

Closed
Tracked by #8661
mtreinish opened this issue Aug 22, 2023 · 0 comments · Fixed by #10689
Closed
Tracked by #8661

Create init stage default plugin #10687

mtreinish opened this issue Aug 22, 2023 · 0 comments · Fixed by #10689
Labels
mod: transpiler Issues and PRs related to Transpiler type: feature request New feature or request

Comments

@mtreinish
Copy link
Member

mtreinish commented Aug 22, 2023

Create a new transpiler init stage built-in default plugin that contains the construction code for the init stage used in the preset passmanagers

@mtreinish mtreinish changed the title Migrate init stage Create init stage default plugin Aug 22, 2023
@mtreinish mtreinish added type: feature request New feature or request mod: transpiler Issues and PRs related to Transpiler labels Aug 22, 2023
mtreinish added a commit to mtreinish/qiskit-core that referenced this issue Aug 22, 2023
This commit updates the preset pass manager construction to only use
plugins for the init stage. To accomplish this the previously hard
coded built-in pass manager used for each optimization level are
refactored to be in a plugin named "default". One thing that is changed
in this PR is that the use of `generate_control_flow_options_check()`
is moved to the `pre_init` stage. The reason for this is because the way
the init stage was being constructed in the preset pass managers was to
do initial checking of any methods, and this was unconditionally being
run. This is a more logical fit for pre_init stage because it should run
before any specified plugin.

Fixes: Qiskit#10687
Fixes: Qiskit#8661
github-merge-queue bot pushed a commit that referenced this issue Aug 22, 2023
This commit updates the preset pass manager construction to only use
plugins for the init stage. To accomplish this the previously hard
coded built-in pass manager used for each optimization level are
refactored to be in a plugin named "default". One thing that is changed
in this PR is that the use of `generate_control_flow_options_check()`
is moved to the `pre_init` stage. The reason for this is because the way
the init stage was being constructed in the preset pass managers was to
do initial checking of any methods, and this was unconditionally being
run. This is a more logical fit for pre_init stage because it should run
before any specified plugin.

Fixes: #10687
Fixes: #8661
SamD-1998 pushed a commit to SamD-1998/qiskit-terra that referenced this issue Sep 7, 2023
This commit updates the preset pass manager construction to only use
plugins for the init stage. To accomplish this the previously hard
coded built-in pass manager used for each optimization level are
refactored to be in a plugin named "default". One thing that is changed
in this PR is that the use of `generate_control_flow_options_check()`
is moved to the `pre_init` stage. The reason for this is because the way
the init stage was being constructed in the preset pass managers was to
do initial checking of any methods, and this was unconditionally being
run. This is a more logical fit for pre_init stage because it should run
before any specified plugin.

Fixes: Qiskit#10687
Fixes: Qiskit#8661
@mtreinish mtreinish changed the title Create init stage default plugin Create init stage default plugin Sep 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mod: transpiler Issues and PRs related to Transpiler type: feature request New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant