[clang] [CIR] Upstream shift operators for VectorType (PR #139465)

Amr Hesham via cfe-commits cfe-commits at lists.llvm.org
Mon May 12 13:18:43 PDT 2025


================
@@ -1399,8 +1400,10 @@ mlir::LogicalResult CIRToLLVMShiftOpLowering::matchAndRewrite(
   if (op.getIsShiftleft()) {
     rewriter.replaceOpWithNewOp<mlir::LLVM::ShlOp>(op, llvmTy, val, amt);
   } else {
-    assert(!cir::MissingFeatures::vectorType());
-    bool isUnsigned = !cirValTy.isSigned();
+    const bool isUnsigned =
+        cirValTy
+            ? !cirValTy.isSigned()
+            : !mlir::cast<cir::IntType>(cirValVTy.getElementType()).isSigned();
----------------
AmrDeveloper wrote:

I used your suggestion and assigned isUnsigned and getLLVMIntCast in the same branch

https://github.com/llvm/llvm-project/pull/139465


More information about the cfe-commits mailing list