ΒΆbool isIntrinsicReturningPointerAliasingArgumentWithoutCapturing(
    const llvm::CallBase* Call,
    bool MustPreserveNullness)

Description

{launder,strip}.invariant.group returns pointer that aliases its argument, and it only captures pointer by returning it. These intrinsics are not marked as nocapture, because returning is considered as capture. The arguments are not marked as returned neither, because it would make it useless. If \p MustPreserveNullness is true, the intrinsic must preserve the nullness of the pointer.

Declared at: llvm/include/llvm/Analysis/ValueTracking.h:336

Parameters

const llvm::CallBase* Call
bool MustPreserveNullness