Updated StringMap to use llvm::AlignOf to compute the alignment of map
authorTed Kremenek <kremenek@apple.com>
Wed, 17 Oct 2007 21:13:50 +0000 (21:13 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 17 Oct 2007 21:13:50 +0000 (21:13 +0000)
entries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43089 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/StringMap.h

index 2dff04c504517ee80aa7794beea8316339560e17..7be418dcaab002ac5b12e2e7aadd3af7e5bab483 100644 (file)
@@ -141,15 +141,9 @@ public:
     // in.  Allocate a new item with space for the string at the end and a null
     // terminator.
     unsigned AllocSize = sizeof(StringMapEntry)+KeyLength+1;
-    
-#ifdef __GNUC__
-    unsigned Alignment = __alignof__(StringMapEntry);
-#else
-    // FIXME: ugly.
-    unsigned Alignment = 8;
-#endif
-    StringMapEntry *NewItem = 
-      static_cast<StringMapEntry*>(Allocator.Allocate(AllocSize, Alignment));
+
+    StringMapEntry *NewItem = static_cast<StringMapEntry*>(
+        Allocator.Allocate(AllocSize, AlignOf<StringMapEntry>::Alignment));
     
     // Default construct the value.
     new (NewItem) StringMapEntry(KeyLength);