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

one in use by the TargetMachine


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5931 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-04-25 05:22:29 +00:00
parent d5bc41a249
commit 2b5f2c1a64

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.
//