Try to turn a call to @llvm.objectsize into an integer value.

Synopsis

Declared in <llvm/Analysis/MemoryBuiltins.h>

Value*
lowerObjectSizeCall(
    IntrinsicInst* ObjectSize,
    DataLayout const& DL,
    TargetLibraryInfo const* TLI,
    AAResults* AA,
    bool MustSucceed,
    SmallVectorImpl<Instruction*>* InsertedInstructions = nullptr);

Description

Returns null on failure. If MustSucceed is true, this function will not return null, and may return conservative values governed by the second argument of the call to objectsize.

Return Value

An integer Value for the object size, or nullptr on failure.

Parameters

Name

Description

ObjectSize

Intrinsic call to lower.

DL

Data layout used for type and pointer sizing.

TLI

Target library info used to identify allocation functions.

AA

Optional alias analysis results for more precise evaluation.

MustSucceed

When true, always produce a value, possibly conservative.

InsertedInstructions

Optional list that receives any new instructions.

Created with MrDocs