Helper class for SSA formation on virtual registers defined in multiple blocks.
Declared in <llvm/CodeGen/MachineSSAUpdater.h>
class MachineSSAUpdater;
This is used when code duplication or another unstructured transformation wants to rewrite a set of uses of one vreg with uses of a set of vregs.
| Name | Description |
|---|---|
MachineSSAUpdater [constructor] | Constructors |
~MachineSSAUpdater [destructor] | Destroy the MachineSSA updater. |
operator= [deleted] | Deleted copy assignment; MachineSSAUpdater cannot be copy-assigned. |
AddAvailableValue | Indicate that a rewritten value is available at the end of the specified block with the specified value. |
GetValueAtEndOfBlock | Construct SSA form, materializing a value that is live at the end of the specified block. |
GetValueInMiddleOfBlock | Construct SSA form, materializing a value live in the middle of a block. |
HasValueForBlock | Return true if the MachineSSAUpdater already has a value for the specified block. |
Initialize | Reset this object to get ready for a new set of SSA updates. |
RewriteUse | Rewrite a use of the symbolic value. |
| Name | Description |
|---|---|
llvm::SSAUpdaterTraits | Traits used by SSAUpdaterImpl to adapt an SSA updater implementation. |