Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 256 /// Deallocate data that was allocated via allocate<T>(). | 256 /// Deallocate data that was allocated via allocate<T>(). |
| 257 template <typename T> void deallocate(T *Object) { | 257 template <typename T> void deallocate(T *Object) { |
| 258 Allocator->Deallocate(Object); | 258 Allocator->Deallocate(Object); |
| 259 } | 259 } |
| 260 | 260 |
| 261 /// Deallocate data that was allocated via allocateArrayOf<T>(). | 261 /// Deallocate data that was allocated via allocateArrayOf<T>(). |
| 262 template <typename T> void deallocateArrayOf(T *Array) { | 262 template <typename T> void deallocateArrayOf(T *Array) { |
| 263 Allocator->Deallocate(Array); | 263 Allocator->Deallocate(Array); |
| 264 } | 264 } |
| 265 | 265 |
| 266 /// Update Phi labels with InEdges. | |
| 267 /// | |
| 268 /// The WASM translater cannot always determine the right incoming edge for a | |
|
Jim Stichnoth
2016/03/29 17:49:57
translator
Eric Holk
2016/03/29 22:58:07
Done.
| |
| 269 /// value. The fixPhiNodes pass fills in the correct information once | |
| 270 /// everything is known. | |
| 271 void fixPhiNodes(); | |
| 272 | |
| 266 private: | 273 private: |
| 267 friend class CfgAllocatorTraits; // for Allocator access. | 274 friend class CfgAllocatorTraits; // for Allocator access. |
| 268 | 275 |
| 269 Cfg(GlobalContext *Ctx, uint32_t SequenceNumber); | 276 Cfg(GlobalContext *Ctx, uint32_t SequenceNumber); |
| 270 | 277 |
| 271 /// Adds a call to the ProfileSummary runtime function as the first | 278 /// Adds a call to the ProfileSummary runtime function as the first |
| 272 /// instruction in this CFG's entry block. | 279 /// instruction in this CFG's entry block. |
| 273 void addCallToProfileSummary(); | 280 void addCallToProfileSummary(); |
| 274 | 281 |
| 275 /// Iterates over the basic blocks in this CFG, adding profiling code to each | 282 /// Iterates over the basic blocks in this CFG, adding profiling code to each |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 332 | 339 |
| 333 public: | 340 public: |
| 334 static void TlsInit() { CfgAllocatorTraits::init(); } | 341 static void TlsInit() { CfgAllocatorTraits::init(); } |
| 335 }; | 342 }; |
| 336 | 343 |
| 337 template <> Variable *Cfg::makeVariable<Variable>(Type Ty); | 344 template <> Variable *Cfg::makeVariable<Variable>(Type Ty); |
| 338 | 345 |
| 339 } // end of namespace Ice | 346 } // end of namespace Ice |
| 340 | 347 |
| 341 #endif // SUBZERO_SRC_ICECFG_H | 348 #endif // SUBZERO_SRC_ICECFG_H |
| OLD | NEW |