================
@@ -17741,6 +17741,53 @@ void AArch64TargetLowering::getTgtMemIntrinsic(
     Infos.push_back(Info);
     return;
   }
+  case Intrinsic::aarch64_stshh_atomic_store: {
+    const auto *OrderC = dyn_cast<ConstantInt>(I.getArgOperand(2));
+    const auto *SizeC = dyn_cast<ConstantInt>(I.getArgOperand(4));
+    if (!OrderC || !SizeC)
+      return;
+
+    unsigned SizeBits = SizeC->getZExtValue();
+    switch (SizeBits) {
+    case 8:
+    case 16:
+    case 32:
+    case 64:
+      break;
+    default:
+      return;
----------------
CarolineConcatto wrote:

Why return is not broken when the size is wrong

https://github.com/llvm/llvm-project/pull/181386
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to