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

Side by Side Diff: src/IceCfg.h

Issue 1411583007: Combine allocas (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix a typo. 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') | src/IceCfg.cpp » ('J')
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, 188
189 bool IsKnownFrameOffset); 189 enum AllocaBaseVariableType { StackPointer, FramePointer, UserPointer };
Jim Stichnoth 2015/11/11 17:47:16 Consider adding some common prefix to each enum va
sehr 2015/11/11 22:14:10 Done.
190 void sortAndCombineAllocas(CfgVector<Inst *> &Allocas,
191 uint32_t CombinedAlignment, InstList &Insts,
192 AllocaBaseVariableType BaseVariableType);
190 /// Merge all the fixed-size allocas in the entry block. 193 /// Merge all the fixed-size allocas in the entry block.
191 void processAllocas(); 194 void processAllocas();
192 void doAddressOpt(); 195 void doAddressOpt();
193 void doArgLowering(); 196 void doArgLowering();
194 void doNopInsertion(); 197 void doNopInsertion();
195 void genCode(); 198 void genCode();
196 void genFrame(); 199 void genFrame();
197 void computeLoopNestDepth(); 200 void computeLoopNestDepth();
198 void livenessLightweight(); 201 void livenessLightweight();
199 void liveness(LivenessMode Mode); 202 void liveness(LivenessMode Mode);
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 295
293 public: 296 public:
294 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); } 297 static void TlsInit() { ICE_TLS_INIT_FIELD(CurrentCfg); }
295 }; 298 };
296 299
297 template <> Variable *Cfg::makeVariable<Variable>(Type Ty); 300 template <> Variable *Cfg::makeVariable<Variable>(Type Ty);
298 301
299 } // end of namespace Ice 302 } // end of namespace Ice
300 303
301 #endif // SUBZERO_SRC_ICECFG_H 304 #endif // SUBZERO_SRC_ICECFG_H
OLDNEW
« no previous file with comments | « no previous file | src/IceCfg.cpp » ('j') | src/IceCfg.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698