From 2b5f2c1a648895d4075f0f35c8a37bd485b9eab0 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 25 Apr 2003 05:22:29 +0000 Subject: [PATCH] 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 --- tools/llc/llc.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp index fe1b89ff2d3..29daef75515 100644 --- a/tools/llc/llc.cpp +++ b/tools/llc/llc.cpp @@ -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 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. // -- 2.34.1