Mercurial > projects > ldc
comparison gen/toobj.cpp @ 1566:c03d164e96d9
lookupTarget no longer takes a Module.
And we need to get TargetData from the module if the Target
doesn't have it.
author | Benjamin Kramer <benny.kra@gmail.com> |
---|---|
date | Tue, 04 Aug 2009 12:21:59 +0200 |
parents | 1d5c3354b3c2 |
children | 755abafbf25d |
comparison
equal
deleted
inserted
replaced
1565:b1e5f8001904 | 1566:c03d164e96d9 |
---|---|
293 | 293 |
294 // Build up all of the passes that we want to do to the module. | 294 // Build up all of the passes that we want to do to the module. |
295 ExistingModuleProvider Provider(&m); | 295 ExistingModuleProvider Provider(&m); |
296 FunctionPassManager Passes(&Provider); | 296 FunctionPassManager Passes(&Provider); |
297 | 297 |
298 Passes.add(new TargetData(*Target.getTargetData())); | 298 if (const TargetData *TD = Target.getTargetData()) |
299 Passes.add(new TargetData(*TD)); | |
300 else | |
301 Passes.add(new TargetData(&m)); | |
299 | 302 |
300 // Ask the target to add backend passes as necessary. | 303 // Ask the target to add backend passes as necessary. |
301 MachineCodeEmitter *MCE = 0; | 304 MachineCodeEmitter *MCE = 0; |
302 | 305 |
303 // Last argument is enum CodeGenOpt::Level OptLevel | 306 // Last argument is enum CodeGenOpt::Level OptLevel |