For PR761:
The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33530 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/TargetData.cpp b/lib/Target/TargetData.cpp
index e950e56..77bb01e 100644
--- a/lib/Target/TargetData.cpp
+++ b/lib/Target/TargetData.cpp
@@ -189,8 +189,8 @@
     }
   }
 
-  // Unless explicitly specified, the alignments for longs and doubles is capped by 
-  // pointer size.
+  // Unless explicitly specified, the alignments for longs and doubles is 
+  // capped by pointer size.
   if (LongABIAlignment == 0)
 	  LongABIAlignment = LongPrefAlignment = PointerMemSize;
   if (DoubleABIAlignment == 0)
@@ -198,25 +198,7 @@
 }
 
 TargetData::TargetData(const Module *M) {
-  LittleEndian       = M->getEndianness() != Module::BigEndian;
-  PointerMemSize     = M->getPointerSize() != Module::Pointer64 ? 4 : 8;
-  PointerABIAlignment = PointerMemSize;
-  DoubleABIAlignment  = PointerMemSize;
-  FloatABIAlignment   = 4;
-  LongABIAlignment    = PointerMemSize;
-  IntABIAlignment     = 4;
-  ShortABIAlignment   = 2;
-  ByteABIAlignment    = 1;
-  BoolABIAlignment    = 1;
-  BoolPrefAlignment = BoolABIAlignment;
-  BytePrefAlignment = ByteABIAlignment;
-  ShortPrefAlignment = ShortABIAlignment;
-  IntPrefAlignment = IntABIAlignment;
-  LongPrefAlignment = LongABIAlignment;
-  FloatPrefAlignment = FloatABIAlignment;
-  DoublePrefAlignment = DoubleABIAlignment;
-  PointerPrefAlignment = PointerABIAlignment;
-  AggMinPrefAlignment = 0;
+  init(M->getDataLayout());
 }
 
 /// Layouts - The lazy cache of structure layout information maintained by