[llvm-commits] CVS: llvm/lib/Target/TargetData.cpp

Reid Spencer reid at x10sys.com
Fri Jan 26 00:12:04 PST 2007



Changes in directory llvm/lib/Target:

TargetData.cpp updated: 1.82 -> 1.83
---
Log message:

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


---
Diffs of the changes:  (+3 -21)

 TargetData.cpp |   24 +++---------------------
 1 files changed, 3 insertions(+), 21 deletions(-)


Index: llvm/lib/Target/TargetData.cpp
diff -u llvm/lib/Target/TargetData.cpp:1.82 llvm/lib/Target/TargetData.cpp:1.83
--- llvm/lib/Target/TargetData.cpp:1.82	Wed Jan 24 01:03:39 2007
+++ llvm/lib/Target/TargetData.cpp	Fri Jan 26 02:11:39 2007
@@ -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






More information about the llvm-commits mailing list