OLD | NEW |
1 //===- subzero/src/IceGlobalContext.h - Global context defs -----*- C++ -*-===// | 1 //===- subzero/src/IceGlobalContext.h - Global context defs -----*- 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 aspects of the compilation that persist across | 10 // This file declares aspects of the compilation that persist across |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
168 Constant *getConstantInt1(int8_t ConstantInt1); | 168 Constant *getConstantInt1(int8_t ConstantInt1); |
169 Constant *getConstantInt8(int8_t ConstantInt8); | 169 Constant *getConstantInt8(int8_t ConstantInt8); |
170 Constant *getConstantInt16(int16_t ConstantInt16); | 170 Constant *getConstantInt16(int16_t ConstantInt16); |
171 Constant *getConstantInt32(int32_t ConstantInt32); | 171 Constant *getConstantInt32(int32_t ConstantInt32); |
172 Constant *getConstantInt64(int64_t ConstantInt64); | 172 Constant *getConstantInt64(int64_t ConstantInt64); |
173 Constant *getConstantFloat(float Value); | 173 Constant *getConstantFloat(float Value); |
174 Constant *getConstantDouble(double Value); | 174 Constant *getConstantDouble(double Value); |
175 // Returns a symbolic constant. | 175 // Returns a symbolic constant. |
176 Constant *getConstantSym(RelocOffsetT Offset, const IceString &Name, | 176 Constant *getConstantSym(RelocOffsetT Offset, const IceString &Name, |
177 bool SuppressMangling); | 177 bool SuppressMangling); |
| 178 Constant *getConstantExternSym(const IceString &Name); |
178 // Returns an undef. | 179 // Returns an undef. |
179 Constant *getConstantUndef(Type Ty); | 180 Constant *getConstantUndef(Type Ty); |
180 // Returns a zero value. | 181 // Returns a zero value. |
181 Constant *getConstantZero(Type Ty); | 182 Constant *getConstantZero(Type Ty); |
182 // getConstantPool() returns a copy of the constant pool for | 183 // getConstantPool() returns a copy of the constant pool for |
183 // constants of a given type. | 184 // constants of a given type. |
184 ConstantList getConstantPool(Type Ty); | 185 ConstantList getConstantPool(Type Ty); |
| 186 // Returns a copy of the list of external symbols. |
| 187 ConstantList getConstantExternSyms(); |
185 | 188 |
186 const ClFlags &getFlags() const { return Flags; } | 189 const ClFlags &getFlags() const { return Flags; } |
187 | 190 |
188 bool isIRGenerationDisabled() const { | 191 bool isIRGenerationDisabled() const { |
189 return ALLOW_DISABLE_IR_GEN ? getFlags().DisableIRGeneration : false; | 192 return ALLOW_DISABLE_IR_GEN ? getFlags().DisableIRGeneration : false; |
190 } | 193 } |
191 | 194 |
192 // Allocate data of type T using the global allocator. | 195 // Allocate data of type T using the global allocator. |
193 template <typename T> T *allocate() { return getAllocator()->Allocate<T>(); } | 196 template <typename T> T *allocate() { return getAllocator()->Allocate<T>(); } |
194 | 197 |
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 explicit OstreamLocker(GlobalContext *Ctx) : Ctx(Ctx) { Ctx->lockStr(); } | 442 explicit OstreamLocker(GlobalContext *Ctx) : Ctx(Ctx) { Ctx->lockStr(); } |
440 ~OstreamLocker() { Ctx->unlockStr(); } | 443 ~OstreamLocker() { Ctx->unlockStr(); } |
441 | 444 |
442 private: | 445 private: |
443 GlobalContext *const Ctx; | 446 GlobalContext *const Ctx; |
444 }; | 447 }; |
445 | 448 |
446 } // end of namespace Ice | 449 } // end of namespace Ice |
447 | 450 |
448 #endif // SUBZERO_SRC_ICEGLOBALCONTEXT_H | 451 #endif // SUBZERO_SRC_ICEGLOBALCONTEXT_H |
OLD | NEW |