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

Side by Side Diff: src/IceDefs.h

Issue 874353006: Write out global initializers and data rel directly to ELF file. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: misc stuff Created 5 years, 10 months 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
OLDNEW
1 //===- subzero/src/IceDefs.h - Common Subzero declaraions -------*- C++ -*-===// 1 //===- subzero/src/IceDefs.h - Common Subzero declaraions -------*- 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 // This file declares various useful types and classes that have 10 // This file declares various useful types and classes that have
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 typedef llvm::ilist<Inst> InstList; 100 typedef llvm::ilist<Inst> InstList;
101 // Ideally PhiList would be llvm::ilist<InstPhi>, and similar for 101 // Ideally PhiList would be llvm::ilist<InstPhi>, and similar for
102 // AssignList, but this runs into issues with SFINAE. 102 // AssignList, but this runs into issues with SFINAE.
103 typedef InstList PhiList; 103 typedef InstList PhiList;
104 typedef InstList AssignList; 104 typedef InstList AssignList;
105 // VarList and NodeList are arena-allocated from the Cfg's allocator. 105 // VarList and NodeList are arena-allocated from the Cfg's allocator.
106 typedef std::vector<Variable *, CfgLocalAllocator<Variable *>> VarList; 106 typedef std::vector<Variable *, CfgLocalAllocator<Variable *>> VarList;
107 typedef std::vector<CfgNode *, CfgLocalAllocator<CfgNode *>> NodeList; 107 typedef std::vector<CfgNode *, CfgLocalAllocator<CfgNode *>> NodeList;
108 typedef std::vector<Constant *> ConstantList; 108 typedef std::vector<Constant *> ConstantList;
109 109
110 typedef std::vector<VariableDeclaration *> VariableDeclarationList;
111
110 // SizeT is for holding small-ish limits like number of source 112 // SizeT is for holding small-ish limits like number of source
111 // operands in an instruction. It is used instead of size_t (which 113 // operands in an instruction. It is used instead of size_t (which
112 // may be 64-bits wide) when we want to save space. 114 // may be 64-bits wide) when we want to save space.
113 typedef uint32_t SizeT; 115 typedef uint32_t SizeT;
114 116
115 // InstNumberT is for holding an instruction number. Instruction 117 // InstNumberT is for holding an instruction number. Instruction
116 // numbers are used for representing Variable live ranges. 118 // numbers are used for representing Variable live ranges.
117 typedef int32_t InstNumberT; 119 typedef int32_t InstNumberT;
118 120
119 // A LiveBeginEndMapEntry maps a Variable::Number value to an 121 // A LiveBeginEndMapEntry maps a Variable::Number value to an
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 return llvm::make_range(Container.rbegin(), Container.rend()); 179 return llvm::make_range(Container.rbegin(), Container.rend());
178 } 180 }
179 template <typename T> 181 template <typename T>
180 llvm::iterator_range<typename T::reverse_iterator> reverse_range(T &Container) { 182 llvm::iterator_range<typename T::reverse_iterator> reverse_range(T &Container) {
181 return llvm::make_range(Container.rbegin(), Container.rend()); 183 return llvm::make_range(Container.rbegin(), Container.rend());
182 } 184 }
183 185
184 } // end of namespace Ice 186 } // end of namespace Ice
185 187
186 #endif // SUBZERO_SRC_ICEDEFS_H 188 #endif // SUBZERO_SRC_ICEDEFS_H
OLDNEW
« no previous file with comments | « src/IceConverter.cpp ('k') | src/IceELFObjectWriter.h » ('j') | src/IceELFObjectWriter.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698