Search Results for

    Show / Hide Table of Contents

    Struct ValueUses

    A mapping that describes where values are used.

    Inherited Members
    ValueType.Equals(object)
    ValueType.GetHashCode()
    ValueType.ToString()
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Flame.Compiler.Analysis
    Assembly: Flame.Compiler.dll
    Syntax
    public struct ValueUses

    Methods

    | Edit this page View Source

    GetFlowUses(ValueTag)

    Gets the set of basic block tags for all basic blocks containing flows that use tag.

    Declaration
    public ImmutableHashSet<BasicBlockTag> GetFlowUses(ValueTag tag)
    Parameters
    Type Name Description
    ValueTag tag

    The tag to examine.

    Returns
    Type Description
    ImmutableHashSet<BasicBlockTag>

    A set of basic block tags for all basic blocks containing flows that use tag.

    | Edit this page View Source

    GetInstructionUses(ValueTag)

    Gets the set of all values that are defined by instructions that take tag as an argument.

    Declaration
    public ImmutableHashSet<ValueTag> GetInstructionUses(ValueTag tag)
    Parameters
    Type Name Description
    ValueTag tag

    The tag to examine.

    Returns
    Type Description
    ImmutableHashSet<ValueTag>

    A set of all value tags of instructions that use tag.

    | Edit this page View Source

    GetUseCount(ValueTag)

    Gets the number of distinct instructions and block flows that use a particular tag.

    Declaration
    public int GetUseCount(ValueTag tag)
    Parameters
    Type Name Description
    ValueTag tag

    The tag to find a use count for.

    Returns
    Type Description
    int

    The number of distinct instructions and block flows that use tag.

    | Edit this page View Source

    IsUsedOutsideOf(ValueTag, BasicBlock)

    Tests if a value is used outside of a particular block.

    Declaration
    public bool IsUsedOutsideOf(ValueTag value, BasicBlock block)
    Parameters
    Type Name Description
    ValueTag value

    The value to examine.

    BasicBlock block

    A basic block.

    Returns
    Type Description
    bool

    true if value is used in some block other than block; otherwise, false.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX