[PATCH] D99976: Allow invokable sub-classes of IntrinsicInst

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 23 11:13:42 PDT 2021


reames updated this revision to Diff 340115.
reames added a comment.

Tweak the initial approach to optimize the non-intrinsic dispatch and involve fewer checked casts.  I'm hoping this reduces the compile time impact.

One behavior change in this patch: unknown intrinsics (e.g. "llvm.unrecognized_name") now get passed to visitIntrinsic whereas there didn't previously.   I think this is probably the right behavior anyways, and it simplifies the code a bit.

If this doesn't work, I'll look at optimize the intrinsic dispatch path, but that's a bit more involved.


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

https://reviews.llvm.org/D99976

Files:
  llvm/include/llvm/IR/InstVisitor.h
  llvm/include/llvm/IR/IntrinsicInst.h
  llvm/lib/Analysis/TypeMetadataUtils.cpp
  llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
  llvm/lib/CodeGen/ShadowStackGCLowering.cpp
  llvm/lib/CodeGen/StackProtector.cpp
  llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
  llvm/lib/Target/AArch64/AArch64FastISel.cpp
  llvm/lib/Target/Mips/MipsFastISel.cpp
  llvm/lib/Target/X86/X86FastISel.cpp
  llvm/lib/Transforms/InstCombine/InstCombineInternal.h
  llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D99976.340115.patch
Type: text/x-patch
Size: 16330 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210423/550e43a3/attachment-0001.bin>


More information about the llvm-commits mailing list