comparison gen/typinf.cpp @ 1533:d1652c8fb4f6

Get rid of USE_METADATA
author Benjamin Kramer <benny.kra@gmail.com>
date Sat, 11 Jul 2009 14:19:21 +0200
parents ad7f2f1862d6
children 7fcb72d518f6
comparison
equal deleted inserted replaced
1532:c88b16d4a13c 1533:d1652c8fb4f6
301 irg->value = new llvm::GlobalVariable(*gIR->module, irg->type.get(), true, 301 irg->value = new llvm::GlobalVariable(*gIR->module, irg->type.get(), true,
302 TYPEINFO_LINKAGE_TYPE, NULL, mangle); 302 TYPEINFO_LINKAGE_TYPE, NULL, mangle);
303 303
304 tid->ir.irGlobal = irg; 304 tid->ir.irGlobal = irg;
305 305
306 #ifdef USE_METADATA
307 // Add some metadata for use by optimization passes. 306 // Add some metadata for use by optimization passes.
308 std::string metaname = std::string(TD_PREFIX) + mangle; 307 std::string metaname = std::string(TD_PREFIX) + mangle;
309 LLGlobalVariable* meta = gIR->module->getGlobalVariable(metaname); 308 LLGlobalVariable* meta = gIR->module->getGlobalVariable(metaname);
310 // Don't generate metadata for non-concrete types 309 // Don't generate metadata for non-concrete types
311 // (such as tuple types, slice types, typeof(expr), etc.) 310 // (such as tuple types, slice types, typeof(expr), etc.)
319 llvm::MDNode* metadata = llvm::MDNode::get(mdVals, TD_NumFields); 318 llvm::MDNode* metadata = llvm::MDNode::get(mdVals, TD_NumFields);
320 // Insert it into the module 319 // Insert it into the module
321 new llvm::GlobalVariable(*gIR->module, metadata->getType(), true, 320 new llvm::GlobalVariable(*gIR->module, metadata->getType(), true,
322 METADATA_LINKAGE_TYPE, metadata, metaname); 321 METADATA_LINKAGE_TYPE, metadata, metaname);
323 } 322 }
324 #endif
325 323
326 DtoDeclareTypeInfo(tid); 324 DtoDeclareTypeInfo(tid);
327 } 325 }
328 326
329 void DtoDeclareTypeInfo(TypeInfoDeclaration* tid) 327 void DtoDeclareTypeInfo(TypeInfoDeclaration* tid)