[PATCH] D106013: [Verifier] Require same signature for intrinsic calls

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 15 11:50:40 PDT 2021


nikic added a comment.

Okay, this doesn't looks as simple as I thought. Taking the first call:

  %call21 = call signext i8 bitcast (i8* (i8*, i8*, ...)* @llvm.objc.msgSend to i8 (i8*, i8*)*)(i8* %call137, i8* %tmp19)

What I missed before is that this actually changes the return type from `i8*` to `i8`. That's nasty. I could adjust for that using a ptrtoint + trunc, but that doesn't make this a straightforward test adjustment anymore. I'm not sure what's up with these `@llvm.objc.msgSend` intrinsics -- clang only uses the normal `@objc_msgSend` function.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D106013/new/

https://reviews.llvm.org/D106013



More information about the llvm-commits mailing list