Clean up and first steps of adding support for the base profile
This PR is moving all the code used by all profiles from the two QirGenerator classes to an abstract class.
Adding support for ADAPTIVE_CREGSIZE option which is generating profile compatible QIR with assuring the registers size of the integers representing them. This is not yet working on the hardware, so I have not added that to the changelog.
I will add the changes for the base profile in a second PR.
It might be easier to review the commits, they are structures to keep the renaming and changes in the QIR files separated from the code changes.
Description
Clean up and first steps of adding support for the base profile
This PR is moving all the code used by all profiles from the two QirGenerator classes to an abstract class.
Adding support for
ADAPTIVE_CREGSIZE
option which is generating profile compatible QIR with assuring the registers size of the integers representing them. This is not yet working on the hardware, so I have not added that to the changelog.I will add the changes for the base profile in a second PR.
It might be easier to review the commits, they are structures to keep the renaming and changes in the QIR files separated from the code changes.
Related issues
Solves https://github.com/CQCL/pytket-qir/issues/168
Checklist