unsigned char DoubleAl = 8, unsigned char FloatAl = 4,
unsigned char LongAl = 8, unsigned char IntAl = 4,
unsigned char ShortAl = 2, unsigned char ByteAl = 1);
+
+ // This constructor is used for targets that support arbitrary TargetData
+ // layouts, like the C backend. It initializes the TargetData to match that
+ // of the specified module.
+ TargetMachine(const std::string &name, IntrinsicLowering *IL,
+ const Module &M);
public:
virtual ~TargetMachine();
IntAl, ShortAl, ByteAl) {
IL = il ? il : new DefaultIntrinsicLowering();
}
+TargetMachine::TargetMachine(const std::string &name, IntrinsicLowering *il,
+ const Module &M)
+ : Name(name), DataLayout(name, &M) {
+ IL = il ? il : new DefaultIntrinsicLowering();
+}
TargetMachine::~TargetMachine() {
delete IL;