llvm::cloneNoAliasScopes

Duplicate the listed noalias declaration scopes.

Synopsis

Declared in <llvm/Transforms/Utils/Cloning.h>

void
cloneNoAliasScopes(
    ArrayRef<MDNode*> NoAliasDeclScopes,
    DenseMap<MDNode*, MDNode*>& ClonedScopes,
    StringRef Ext,
    LLVMContext& Context);

Description

Duplicate the specified list of noalias decl scopes. The 'Ext' string is added as an extension to the name. Afterwards, the ClonedScopes contains the mapping of the original scope MDNode onto the cloned scope. Be aware that the cloned scopes are still part of the original scope domain.

Parameters

NameDescription
NoAliasDeclScopesNoalias scopes to duplicate.
ClonedScopesFilled with a mapping from original scopes to clones.
ExtSuffix appended to the duplicated scope names.
ContextLLVM context used to create the cloned metadata nodes.