[llvm] [IR] Reject token and label overload types in intrinsic signature matching (PR #210799)

Yingwei Zheng via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 15 13:33:18 PDT 2026


================
@@ -1098,6 +1098,11 @@ matchIntrinsicType(Type *Ty, ArrayRef<Intrinsic::IITDescriptor> &Infos,
            "Table consistency error");
     OverloadTys.push_back(Ty);
 
+    // Token and label types have no mangling (see getMangledTypeStr), so
+    // they cannot be overload types; reject them with a signature error.
+    if (Ty->isTokenTy() || Ty->isLabelTy())
----------------
dtcxzyw wrote:

`|| Ty->isLabelTy()` should be unreachable. You cannot use `label` in param/ret values.


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


More information about the llvm-commits mailing list