@@ -78,54 +78,54 @@ using RegList = SmallVector<unsigned, 4>;
78
78
using SourceMap = DenseMap<unsigned , RegList>;
79
79
using Reg2MIMap = DenseMap<unsigned , MachineInstr *>;
80
80
81
- class MachineCopyPropagation : public MachineFunctionPass {
82
- const TargetRegisterInfo *TRI;
83
- const TargetInstrInfo *TII;
84
- const MachineRegisterInfo *MRI;
81
+ class MachineCopyPropagation : public MachineFunctionPass {
82
+ const TargetRegisterInfo *TRI;
83
+ const TargetInstrInfo *TII;
84
+ const MachineRegisterInfo *MRI;
85
85
86
- public:
87
- static char ID; // Pass identification, replacement for typeid
86
+ public:
87
+ static char ID; // Pass identification, replacement for typeid
88
88
89
- MachineCopyPropagation () : MachineFunctionPass(ID) {
90
- initializeMachineCopyPropagationPass (*PassRegistry::getPassRegistry ());
91
- }
89
+ MachineCopyPropagation () : MachineFunctionPass(ID) {
90
+ initializeMachineCopyPropagationPass (*PassRegistry::getPassRegistry ());
91
+ }
92
92
93
- void getAnalysisUsage (AnalysisUsage &AU) const override {
94
- AU.setPreservesCFG ();
95
- MachineFunctionPass::getAnalysisUsage (AU);
96
- }
93
+ void getAnalysisUsage (AnalysisUsage &AU) const override {
94
+ AU.setPreservesCFG ();
95
+ MachineFunctionPass::getAnalysisUsage (AU);
96
+ }
97
97
98
- bool runOnMachineFunction (MachineFunction &MF) override ;
98
+ bool runOnMachineFunction (MachineFunction &MF) override ;
99
99
100
- MachineFunctionProperties getRequiredProperties () const override {
101
- return MachineFunctionProperties ().set (
102
- MachineFunctionProperties::Property::NoVRegs);
103
- }
100
+ MachineFunctionProperties getRequiredProperties () const override {
101
+ return MachineFunctionProperties ().set (
102
+ MachineFunctionProperties::Property::NoVRegs);
103
+ }
104
104
105
- private:
106
- void ClobberRegister (unsigned Reg);
107
- void ReadRegister (unsigned Reg);
108
- void CopyPropagateBlock (MachineBasicBlock &MBB);
109
- bool eraseIfRedundant (MachineInstr &Copy, unsigned Src, unsigned Def);
110
- void forwardUses (MachineInstr &MI);
111
- bool isForwardableRegClassCopy (const MachineInstr &Copy,
112
- const MachineInstr &UseI, unsigned UseIdx);
113
- bool hasImplicitOverlap (const MachineInstr &MI, const MachineOperand &Use);
105
+ private:
106
+ void ClobberRegister (unsigned Reg);
107
+ void ReadRegister (unsigned Reg);
108
+ void CopyPropagateBlock (MachineBasicBlock &MBB);
109
+ bool eraseIfRedundant (MachineInstr &Copy, unsigned Src, unsigned Def);
110
+ void forwardUses (MachineInstr &MI);
111
+ bool isForwardableRegClassCopy (const MachineInstr &Copy,
112
+ const MachineInstr &UseI, unsigned UseIdx);
113
+ bool hasImplicitOverlap (const MachineInstr &MI, const MachineOperand &Use);
114
114
115
- // / Candidates for deletion.
116
- SmallSetVector<MachineInstr*, 8 > MaybeDeadCopies;
115
+ // / Candidates for deletion.
116
+ SmallSetVector<MachineInstr *, 8 > MaybeDeadCopies;
117
117
118
- // / Def -> available copies map.
119
- Reg2MIMap AvailCopyMap;
118
+ // / Def -> available copies map.
119
+ Reg2MIMap AvailCopyMap;
120
120
121
- // / Def -> copies map.
122
- Reg2MIMap CopyMap;
121
+ // / Def -> copies map.
122
+ Reg2MIMap CopyMap;
123
123
124
- // / Src -> Def map
125
- SourceMap SrcMap;
124
+ // / Src -> Def map
125
+ SourceMap SrcMap;
126
126
127
- bool Changed;
128
- };
127
+ bool Changed;
128
+ };
129
129
130
130
} // end anonymous namespace
131
131
0 commit comments