[llvm-dev] InlineFunction method, call CloneFunctionInto instead of CloneAndPruneFunctionInto?

Kevin Choi via llvm-dev llvm-dev at lists.llvm.org
Thu Aug 4 13:28:46 PDT 2016

Just throwing this out there in hope that someone already knows the answer.
I'm trying to narrow down something that fails post inlining. Anyone know
why InlineFunction switching CloneAndPruneFunctionInto with
CloneFunctionInto is invalid?

The error I get is
Wrong types for attribute: byval inalloca nest noalias nocapture nonnull
readnone readonly signext sret zeroext dereferenceable(1)
void (%"class.A::aaa"*, %struct.bbb*)* @foo_function
LLVM ERROR: Broken function found, compilation aborted!

Post-inlining method dump shows
define internal fastcc zeroext void @foo_function(%"class.A::aaa"*,
%struct.bbb*) #4

Perhaps zeroext isn't compatible with void return type?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160804/9baeeb7c/attachment.html>

More information about the llvm-dev mailing list