Skip to content

Commit 9b87004

Browse files
committed
fixing bug in parallel with reverse order
1 parent 4dbe384 commit 9b87004

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/bloqade/qasm2/rewrite/uop_to_parallel.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ class SimpleMergePolicy(MergePolicyABC):
5858
group_has_merged: Dict[int, bool] = field(default_factory=dict)
5959
"""Mapping from group number to whether the group has been merged"""
6060

61+
def __post_init__(self):
62+
for group_number in range(len(self.merge_groups)):
63+
self.group_has_merged[group_number] = False
64+
6165
@staticmethod
6266
def same_id_checker(ssa1: ir.SSAValue, ssa2: ir.SSAValue):
6367
if ssa1 is ssa2:
@@ -154,7 +158,7 @@ def __call__(self, node: ir.Statement) -> RewriteResult:
154158
self.group_has_merged[group_number] = result.has_done_something
155159
return result
156160

157-
if self.group_has_merged[group_number]:
161+
if self.group_has_merged.setdefault(group_number, False):
158162
node.delete()
159163

160164
return RewriteResult(has_done_something=self.group_has_merged[group_number])

0 commit comments

Comments
 (0)