Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(319)

Side by Side Diff: src/IceCfg.h

Issue 1414343010: Sort allocas, compute frame pointer in Cfg pass (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Code review fixes Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/IceCfg.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceCfg.h - Control flow graph ----------------*- C++ -*-===// 1 //===- subzero/src/IceCfg.h - Control flow graph ----------------*- C++ -*-===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 /// 9 ///
10 /// \file 10 /// \file
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 /// predecessor and successor edges, in the form of CfgNode::InEdges[] and 178 /// predecessor and successor edges, in the form of CfgNode::InEdges[] and
179 /// CfgNode::OutEdges[]. 179 /// CfgNode::OutEdges[].
180 void computeInOutEdges(); 180 void computeInOutEdges();
181 void renumberInstructions(); 181 void renumberInstructions();
182 void placePhiLoads(); 182 void placePhiLoads();
183 void placePhiStores(); 183 void placePhiStores();
184 void deletePhis(); 184 void deletePhis();
185 void advancedPhiLowering(); 185 void advancedPhiLowering();
186 void reorderNodes(); 186 void reorderNodes();
187 void shuffleNodes(); 187 void shuffleNodes();
188 void sortAllocas(CfgVector<Inst *> &Allocas, InstList &Insts,
189 bool IsKnownFrameOffset);
190 /// Merge all the fixed-size allocas in the entry block.
191 void processAllocas();
188 void doAddressOpt(); 192 void doAddressOpt();
189 void doArgLowering(); 193 void doArgLowering();
190 void doNopInsertion(); 194 void doNopInsertion();
191 void genCode(); 195 void genCode();
192 void genFrame(); 196 void genFrame();
193 void computeLoopNestDepth(); 197 void computeLoopNestDepth();
194 void livenessLightweight(); 198 void livenessLightweight();
195 void liveness(LivenessMode Mode); 199 void liveness(LivenessMode Mode);
196 bool validateLiveness() const; 200 bool validateLiveness() const;
197 void contractEmptyNodes(); 201 void contractEmptyNodes();
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 292
289 public: 293 public:
290 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); } 294 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); }
291 }; 295 };
292 296
293 template <> Variable *Cfg::makeVariable<Variable>(Type Ty); 297 template <> Variable *Cfg::makeVariable<Variable>(Type Ty);
294 298
295 } // end of namespace Ice 299 } // end of namespace Ice
296 300
297 #endif // SUBZERO_SRC_ICECFG_H 301 #endif // SUBZERO_SRC_ICECFG_H
OLDNEW
« no previous file with comments | « no previous file | src/IceCfg.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698