Skip to content

Commit f460bb9

Browse files
committed
Fail if operation is adjoint
1 parent 699a070 commit f460bb9

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

mlir/lib/Conversion/JeffToQC/JeffToQC.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,11 @@ template <typename QCOpType, typename JeffOpType, typename JeffOpAdaptorType>
8585
static LogicalResult
8686
convertOneTargetOneParameter(JeffOpType& op, JeffOpAdaptorType& adaptor,
8787
ConversionPatternRewriter& rewriter) {
88+
if (op.getIsAdjoint()) {
89+
return rewriter.notifyMatchFailure(
90+
op, "Adjoint operations are not yet supported");
91+
}
92+
8893
if (op.getPower() != 1) {
8994
return rewriter.notifyMatchFailure(
9095
op, "Operations with power != 1 are not yet supported");
@@ -229,6 +234,11 @@ struct ConvertJeffGPhaseOpToQC final : OpConversionPattern<jeff::GPhaseOp> {
229234
LogicalResult
230235
matchAndRewrite(jeff::GPhaseOp op, OpAdaptor adaptor,
231236
ConversionPatternRewriter& rewriter) const override {
237+
if (op.getIsAdjoint()) {
238+
return rewriter.notifyMatchFailure(
239+
op, "Adjoint operations are not yet supported");
240+
}
241+
232242
if (op.getPower() != 1) {
233243
return rewriter.notifyMatchFailure(
234244
op, "Operations with power != 1 are not yet supported");
@@ -320,6 +330,11 @@ struct ConvertJeffUOpToQC final : OpConversionPattern<jeff::UOp> {
320330
LogicalResult
321331
matchAndRewrite(jeff::UOp op, OpAdaptor adaptor,
322332
ConversionPatternRewriter& rewriter) const override {
333+
if (op.getIsAdjoint()) {
334+
return rewriter.notifyMatchFailure(
335+
op, "Adjoint operations are not yet supported");
336+
}
337+
323338
if (op.getPower() != 1) {
324339
return rewriter.notifyMatchFailure(
325340
op, "Operations with power != 1 are not yet supported");

0 commit comments

Comments
 (0)