Make sure to add a targetdata instance to the passmanager, and make it match the

one in use by the TargetMachine

llvm-svn: 5931
This commit is contained in:
Chris Lattner 2003-04-25 05:22:29 +00:00
parent ba90675054
commit 21a7218c5f
1 changed files with 5 additions and 0 deletions

View File

@ -173,6 +173,7 @@ main(int argc, char **argv)
assert(target.get() && "Could not allocate target machine!");
TargetMachine &Target = *target.get();
const TargetData &TD = Target.getTargetData();
// Load the module to be compiled...
std::auto_ptr<Module> M(ParseBytecodeFile(InputFilename));
@ -185,6 +186,10 @@ main(int argc, char **argv)
// Build up all of the passes that we want to do to the module...
PassManager Passes;
Passes.add(new TargetData("llc", TD.isLittleEndian(), TD.getSubWordDataSize(),
TD.getIntegerRegSize(), TD.getPointerSize(),
TD.getPointerAlignment()));
// Create a new optimization pass for each one specified on the command line
// Deal specially with tracing passes, which must be run differently than opt.
//