[PATCH] D58356: Hexagon: Add ImmArg to intrinsics

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 18 08:46:56 PST 2019


arsenm added a comment.

In D58356#1401300 <https://reviews.llvm.org/D58356#1401300>, @kparzysz wrote:

> I don't really understand the summary, could you elaborate on how the asserting implies the conclusion (the part that follows "This means that...").  Also, what does that part mean on its own?  "Intrinsics are missing that don't use GCCBuiltin...", meaning that you'd expect some intrinsics that don't use GCCBuiltin, but they're not defined?


The assert can't catch all possible cases which may exist, so this may not be complete without someone with knowledge of these intrinsics auditing them.

GCCBuiltin is an annotation on the LLVM IR intrinsic which doesn't really do anything on its own. GCCBuiltin also doesn't support intrinsics that use name mangling (you would need to be able to specify one for each mangling you want to support in the frontend). There has to be a corresponding builtin definition explicitly defined in clang, which also needs to correctly mark the required constant operands. The test coverage for which operands need to be constants is spotty or nonexistent for these, so those are possibly missing in the builtin definition.


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

https://reviews.llvm.org/D58356





More information about the llvm-commits mailing list