OLD | NEW |
1 //===- subzero/src/IceTargetLoweringX8632.cpp - x86-32 lowering -----------===// | 1 //===- subzero/src/IceTargetLoweringX8632.cpp - x86-32 lowering -----------===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 //===----------------------------------------------------------------------===// | 5 //===----------------------------------------------------------------------===// |
6 // | 6 // |
7 // This file implements the TargetLoweringX8632 class, which | 7 // This file implements the TargetLoweringX8632 class, which |
8 // consists almost entirely of the lowering sequence for each | 8 // consists almost entirely of the lowering sequence for each |
9 // high-level instruction. | 9 // high-level instruction. |
10 // | 10 // |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
222 static const char *AsmTag; | 222 static const char *AsmTag; |
223 static const char *PrintfString; | 223 static const char *PrintfString; |
224 }; | 224 }; |
225 const char *PoolTypeConverter<uint8_t>::TypeName = "i8"; | 225 const char *PoolTypeConverter<uint8_t>::TypeName = "i8"; |
226 const char *PoolTypeConverter<uint8_t>::AsmTag = ".byte"; | 226 const char *PoolTypeConverter<uint8_t>::AsmTag = ".byte"; |
227 const char *PoolTypeConverter<uint8_t>::PrintfString = "0x%x"; | 227 const char *PoolTypeConverter<uint8_t>::PrintfString = "0x%x"; |
228 } // end of anonymous namespace | 228 } // end of anonymous namespace |
229 | 229 |
230 template <typename T> | 230 template <typename T> |
231 void TargetDataX8632::emitConstantPool(GlobalContext *Ctx) { | 231 void TargetDataX8632::emitConstantPool(GlobalContext *Ctx) { |
232 if (!ALLOW_DUMP) | 232 if (!buildAllowsDump()) |
233 return; | 233 return; |
234 Ostream &Str = Ctx->getStrEmit(); | 234 Ostream &Str = Ctx->getStrEmit(); |
235 Type Ty = T::Ty; | 235 Type Ty = T::Ty; |
236 SizeT Align = typeAlignInBytes(Ty); | 236 SizeT Align = typeAlignInBytes(Ty); |
237 ConstantList Pool = Ctx->getConstantPool(Ty); | 237 ConstantList Pool = Ctx->getConstantPool(Ty); |
238 | 238 |
239 Str << "\t.section\t.rodata.cst" << Align << ",\"aM\",@progbits," << Align | 239 Str << "\t.section\t.rodata.cst" << Align << ",\"aM\",@progbits," << Align |
240 << "\n"; | 240 << "\n"; |
241 Str << "\t.align\t" << Align << "\n"; | 241 Str << "\t.align\t" << Align << "\n"; |
242 for (Constant *C : Pool) { | 242 for (Constant *C : Pool) { |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
415 // entries in case the high-level table has extra entries. | 415 // entries in case the high-level table has extra entries. |
416 #define X(tag, size, align, elts, elty, str) \ | 416 #define X(tag, size, align, elts, elty, str) \ |
417 static_assert(_table1_##tag == _table2_##tag, \ | 417 static_assert(_table1_##tag == _table2_##tag, \ |
418 "Inconsistency between ICETYPEX8632_TABLE and ICETYPE_TABLE"); | 418 "Inconsistency between ICETYPEX8632_TABLE and ICETYPE_TABLE"); |
419 ICETYPE_TABLE | 419 ICETYPE_TABLE |
420 #undef X | 420 #undef X |
421 } // end of namespace dummy3 | 421 } // end of namespace dummy3 |
422 } // end of anonymous namespace | 422 } // end of anonymous namespace |
423 | 423 |
424 } // end of namespace Ice | 424 } // end of namespace Ice |
OLD | NEW |