================
@@ -692,9 +692,7 @@ mlir::LogicalResult 
CIRToLLVMConstantOpLowering::matchAndRewrite(
     // during a pass as long as they don't live past the end of the pass.
     attr = op.getValue();
   } else if (mlir::isa<cir::BoolType>(op.getType())) {
-    int value = (op.getValue() ==
-                 cir::BoolAttr::get(getContext(),
-                                    cir::BoolType::get(getContext()), true));
+    int value = (op.getValue() == cir::BoolAttr::get(getContext(), true));
----------------
xlauko wrote:

This entire function might be more nicer in terms of cast to attributes 
directly, not dispatch based on types.

Also nobody guarantees, that if attribute has `cir::BoolType` it is actually 
`cir::BoolAttr`,
so the previous code might have returned false even in cases that attribute 
hold "true" value.

I will look into it in next PR.

https://github.com/llvm/llvm-project/pull/136366
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to