|
LLVM 24.0.0git
|
Describes a matched VOPD pair. More...
#include "Target/AMDGPU/GCNVOPDUtils.h"
Public Member Functions | |
| MachineInstr * | getMIX () const |
| MachineInstr * | getMIY () const |
Public Attributes | |
| MachineInstr * | InOrder [2] |
| The component instructions in program order. | |
| unsigned | XIdx |
Which entry in InOrder is the X component. | |
| bool | IsVOPD3 |
| SmallVector< VOPDLiteralFixup, 2 > | LiteralFixups |
| Immediates which have to be moved into scalar registers before the pair can be built. | |
| bool | Commute [2] = {false, false} |
Entries in InOrder which only pair once commuted. | |
Describes a matched VOPD pair.
Definition at line 44 of file GCNVOPDUtils.h.
|
inline |
Definition at line 58 of file GCNVOPDUtils.h.
|
inline |
Definition at line 59 of file GCNVOPDUtils.h.
| bool llvm::VOPDMatchInfo::Commute[2] = {false, false} |
Entries in InOrder which only pair once commuted.
The match was checked with them commuted, but they are left unchanged until the pair is built.
Definition at line 56 of file GCNVOPDUtils.h.
| MachineInstr* llvm::VOPDMatchInfo::InOrder[2] |
The component instructions in program order.
Definition at line 46 of file GCNVOPDUtils.h.
| bool llvm::VOPDMatchInfo::IsVOPD3 |
Definition at line 49 of file GCNVOPDUtils.h.
| SmallVector<VOPDLiteralFixup, 2> llvm::VOPDMatchInfo::LiteralFixups |
Immediates which have to be moved into scalar registers before the pair can be built.
They all have the same 32-bit value, so one register serves the whole pair. Only a VOPD3 pair can need this.
Definition at line 53 of file GCNVOPDUtils.h.
| unsigned llvm::VOPDMatchInfo::XIdx |
Which entry in InOrder is the X component.
Definition at line 48 of file GCNVOPDUtils.h.