Skip to content

Commit 535dd3f

Browse files
* Addressing review comment
- simply constructor - remove redundant code Signed-off-by: Pradnya Khalate <pkhalate@nvidia.com>
1 parent eca0d82 commit 535dd3f

File tree

1 file changed

+7
-25
lines changed

1 file changed

+7
-25
lines changed

lib/Optimizer/CodeGen/ConvertToQIRAPI.cpp

Lines changed: 7 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -148,16 +148,14 @@ struct QIRAPITypeConverter : public TypeConverter {
148148
return cudaq::cc::ArrayType::get(newEleTy);
149149
});
150150
addConversion([&](cudaq::cc::StructType ty) -> Type {
151+
if (ty.getOpaque())
152+
return ty;
151153
SmallVector<Type> members;
152154
for (auto memTy : ty.getMembers())
153155
members.push_back(convertType(memTy));
154-
if (ty.getName())
155-
return cudaq::cc::StructType::get(ty.getContext(), ty.getName(),
156-
members, ty.getBitSize(),
157-
ty.getAlignment(), ty.getPacked());
158-
return cudaq::cc::StructType::get(ty.getContext(), members,
159-
ty.getBitSize(), ty.getAlignment(),
160-
ty.getPacked());
156+
return cudaq::cc::StructType::get(ty.getContext(), ty.getName(), members,
157+
/*opaque=*/false, ty.getPacked(),
158+
ty.getBitSize(), ty.getAlignment());
161159
});
162160
}
163161

@@ -1733,24 +1731,6 @@ struct OpInterfacePattern : public OpConversionPattern<OP> {
17331731
matchAndRewrite(OP op, typename Base::OpAdaptor adaptor,
17341732
ConversionPatternRewriter &rewriter) const override {
17351733
auto newResultTy = getTypeConverter()->convertType(op.getType());
1736-
1737-
// Check if result type changed
1738-
bool resultChanged = (newResultTy != op.getType());
1739-
1740-
// Check if any operand types changed
1741-
bool operandsChanged = false;
1742-
for (auto [oldOp, newOp] :
1743-
llvm::zip(op->getOperands(), adaptor.getOperands())) {
1744-
if (oldOp.getType() != newOp.getType()) {
1745-
operandsChanged = true;
1746-
break;
1747-
}
1748-
}
1749-
1750-
// Only convert if something actually changed
1751-
if (!resultChanged && !operandsChanged)
1752-
return failure();
1753-
17541734
rewriter.replaceOpWithNewOp<OP>(op, newResultTy, adaptor.getOperands(),
17551735
op->getAttrs());
17561736
return success();
@@ -1799,6 +1779,8 @@ struct StoreOpPattern : public OpConversionPattern<cudaq::cc::StoreOp> {
17991779
}
18001780
};
18011781

1782+
// Not an OpInterfacePattern: LogOutputOp has no result type, so op.getType()
1783+
// is not available. Same zero-result pattern as StoreOpPattern above.
18021784
struct LogOutputOpPattern : public OpConversionPattern<cudaq::cc::LogOutputOp> {
18031785
using OpConversionPattern::OpConversionPattern;
18041786

0 commit comments

Comments
 (0)