Cross-module inlining of functions

Hi all,

I use CloneAndPruneFunctionInto to inline functions from module A into module B. Module A’s functions have calls, but only to intrinsics, not even to other functions in the same module, so I thought that it would be fine. However, running verifyModule on module B, I get multiple errors stating that there are references to functions (intrinsics) that live in a module A:

Referencing function in another module!
%75 = tail call { i64, i1 } @llvm.usub.with.overflow.i64(i64 %73, i64 4)

This surprises me a little bit.

Is there a simple way to “bring over” all the referenced intrinsics?

Félix