Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 //===- subzero/src/IceDefs.h - Common Subzero declarations ------*- C++ -*-===// | 1 //===- subzero/src/IceDefs.h - Common Subzero declarations ------*- 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 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 137 } | 137 } |
| 138 | 138 |
| 139 #define ENABLE_MAKE_UNIQUE friend struct ::Ice::Internal::MakeUniqueEnabler | 139 #define ENABLE_MAKE_UNIQUE friend struct ::Ice::Internal::MakeUniqueEnabler |
| 140 | 140 |
| 141 typedef std::string IceString; | 141 typedef std::string IceString; |
| 142 typedef llvm::ilist<Inst> InstList; | 142 typedef llvm::ilist<Inst> InstList; |
| 143 // Ideally PhiList would be llvm::ilist<InstPhi>, and similar for | 143 // Ideally PhiList would be llvm::ilist<InstPhi>, and similar for |
| 144 // AssignList, but this runs into issues with SFINAE. | 144 // AssignList, but this runs into issues with SFINAE. |
| 145 typedef InstList PhiList; | 145 typedef InstList PhiList; |
| 146 typedef InstList AssignList; | 146 typedef InstList AssignList; |
| 147 // VarList and NodeList are arena-allocated from the Cfg's allocator. | 147 // VarList and NodeList are arena-allocated from the Cfg's allocator. |
|
Jim Stichnoth
2015/08/20 20:11:11
In conjunction with my comment below, you can prob
Karl
2015/08/20 20:24:19
Done.
| |
| 148 typedef std::vector<Operand *, CfgLocalAllocator<Operand *>> OperandList; | |
| 148 typedef std::vector<Variable *, CfgLocalAllocator<Variable *>> VarList; | 149 typedef std::vector<Variable *, CfgLocalAllocator<Variable *>> VarList; |
| 149 typedef std::vector<CfgNode *, CfgLocalAllocator<CfgNode *>> NodeList; | 150 typedef std::vector<CfgNode *, CfgLocalAllocator<CfgNode *>> NodeList; |
| 150 typedef std::vector<Constant *> ConstantList; | 151 typedef std::vector<Constant *> ConstantList; |
|
Jim Stichnoth
2015/08/20 20:11:11
Maybe move ConstantList below the blank line. It'
Karl
2015/08/20 20:24:19
Done.
| |
| 151 | 152 |
| 153 typedef std::vector<FunctionDeclaration *> FunctionDeclarationList; | |
| 152 typedef std::vector<VariableDeclaration *> VariableDeclarationList; | 154 typedef std::vector<VariableDeclaration *> VariableDeclarationList; |
| 153 | 155 |
| 154 /// SizeT is for holding small-ish limits like number of source | 156 /// SizeT is for holding small-ish limits like number of source |
| 155 /// operands in an instruction. It is used instead of size_t (which | 157 /// operands in an instruction. It is used instead of size_t (which |
| 156 /// may be 64-bits wide) when we want to save space. | 158 /// may be 64-bits wide) when we want to save space. |
| 157 typedef uint32_t SizeT; | 159 typedef uint32_t SizeT; |
| 158 | 160 |
| 159 /// InstNumberT is for holding an instruction number. Instruction | 161 /// InstNumberT is for holding an instruction number. Instruction |
| 160 /// numbers are used for representing Variable live ranges. | 162 /// numbers are used for representing Variable live ranges. |
| 161 typedef int32_t InstNumberT; | 163 typedef int32_t InstNumberT; |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 271 llvm::iterator_range<typename T::reverse_iterator> reverse_range(T &Container) { | 273 llvm::iterator_range<typename T::reverse_iterator> reverse_range(T &Container) { |
| 272 return llvm::make_range(Container.rbegin(), Container.rend()); | 274 return llvm::make_range(Container.rbegin(), Container.rend()); |
| 273 } | 275 } |
| 274 | 276 |
| 275 /// Options for pooling and randomization of immediates. | 277 /// Options for pooling and randomization of immediates. |
| 276 enum RandomizeAndPoolImmediatesEnum { RPI_None, RPI_Randomize, RPI_Pool }; | 278 enum RandomizeAndPoolImmediatesEnum { RPI_None, RPI_Randomize, RPI_Pool }; |
| 277 | 279 |
| 278 } // end of namespace Ice | 280 } // end of namespace Ice |
| 279 | 281 |
| 280 #endif // SUBZERO_SRC_ICEDEFS_H | 282 #endif // SUBZERO_SRC_ICEDEFS_H |
| OLD | NEW |