reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
  329 class RegionMRT;

References

lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
  342   RegionMRT *RMRT;
  348   void storeLiveOutRegRegion(RegionMRT *Region, unsigned Reg,
  356                         RegionMRT *TopRegion);
  361   void storeLiveOuts(RegionMRT *Region, const MachineRegisterInfo *MRI,
  363                      RegionMRT *TopRegion = nullptr);
  371   void setRegionMRT(RegionMRT *Region) { RMRT = Region; }
  373   RegionMRT *getRegionMRT() { return RMRT; }
  433   void initLiveOut(RegionMRT *Region, const MachineRegisterInfo *MRI,
  439   RegionMRT *Parent;
  454   virtual RegionMRT *getRegionMRT() { return nullptr; }
  464   void setParent(RegionMRT *Region) { Parent = Region; }
  466   RegionMRT *getParent() { return Parent; }
  470                 DenseMap<MachineRegion *, RegionMRT *> &RegionMap);
  472   static RegionMRT *buildMRT(MachineFunction &MF,
  532   RegionMRT *getRegionMRT() override { return this; }
  624                    DenseMap<MachineRegion *, RegionMRT *> &RegionMap) {
  635 RegionMRT *MRT::buildMRT(MachineFunction &MF,
  639   DenseMap<MachineRegion *, RegionMRT *> RegionMap;
  641   RegionMRT *Result = new RegionMRT(TopLevelRegion);
  641   RegionMRT *Result = new RegionMRT(TopLevelRegion);
  667       RegionMRT *NewMRTRegion = new RegionMRT(Region);
  667       RegionMRT *NewMRTRegion = new RegionMRT(Region);
  673         RegionMRT *NewMRTParent = new RegionMRT(Parent);
  673         RegionMRT *NewMRTParent = new RegionMRT(Parent);
  732 void LinearizedRegion::storeLiveOutRegRegion(RegionMRT *Region, unsigned Reg,
  797                                         RegionMRT *TopRegion) {
  812 void LinearizedRegion::storeLiveOuts(RegionMRT *Region,
  816                                      RegionMRT *CurrentTopRegion) {
  819   RegionMRT *TopRegion =
 1061 void LinearizedRegion::initLiveOut(RegionMRT *Region,
 1096   RegionMRT *RMRT;
 1098   void getPHIRegionIndices(RegionMRT *Region, MachineInstr &PHI,
 1131   void rewriteRegionExitPHI(RegionMRT *Region, MachineBasicBlock *LastMerge,
 1134   void rewriteRegionExitPHIs(RegionMRT *Region, MachineBasicBlock *LastMerge,
 1141   bool regionIsSimpleIf(RegionMRT *Region);
 1143   void transformSimpleIfRegion(RegionMRT *Region);
 1151   MachineBasicBlock *createLinearizedExitBlock(RegionMRT *Region);
 1209   LinearizedRegion *initLinearizedRegion(RegionMRT *Region);
 1211   bool structurizeComplexRegion(RegionMRT *Region);
 1213   bool structurizeRegion(RegionMRT *Region);
 1215   bool structurizeRegions(RegionMRT *Region, bool isTopRegion);
 1231   void createLinearizedRegion(RegionMRT *Region, unsigned SelectOut);
 1237   void setRegionMRT(RegionMRT *RegionTree) { RMRT = RegionTree; }
 1239   RegionMRT *getRegionMRT() { return RMRT; }
 1248 bool AMDGPUMachineCFGStructurizer::regionIsSimpleIf(RegionMRT *Region) {
 1274 void AMDGPUMachineCFGStructurizer::transformSimpleIfRegion(RegionMRT *Region) {
 1293 static void fixRegionTerminator(RegionMRT *Region) {
 1330 bool regionIsSequence(RegionMRT *Region) {
 1342 void fixupRegionExits(RegionMRT *Region) {
 1354     RegionMRT *Region, MachineInstr &PHI,
 1633 void AMDGPUMachineCFGStructurizer::rewriteRegionExitPHI(RegionMRT *Region,
 1665 void AMDGPUMachineCFGStructurizer::rewriteRegionExitPHIs(RegionMRT *Region,
 1727 AMDGPUMachineCFGStructurizer::createLinearizedExitBlock(RegionMRT *Region) {
 2570 AMDGPUMachineCFGStructurizer::initLinearizedRegion(RegionMRT *Region) {
 2577 static void removeOldExitPreds(RegionMRT *Region) {
 2614     RegionMRT *Region = Tree->getRegionMRT();
 2624 static bool containsNewBackedge(RegionMRT *Region) {
 2629 bool AMDGPUMachineCFGStructurizer::structurizeComplexRegion(RegionMRT *Region) {
 2769 bool AMDGPUMachineCFGStructurizer::structurizeRegion(RegionMRT *Region) {
 2784 bool AMDGPUMachineCFGStructurizer::structurizeRegions(RegionMRT *Region,
 2814 void AMDGPUMachineCFGStructurizer::createLinearizedRegion(RegionMRT *Region,
 2834     RegionMRT *Region = MRT->getRegionMRT();
 2888   RegionMRT *RTree = MRT::buildMRT(MF, Regions, TII, MRI);