diff --git a/llvm-pretty.cabal b/llvm-pretty.cabal
--- a/llvm-pretty.cabal
+++ b/llvm-pretty.cabal
@@ -1,5 +1,5 @@
 Name:                llvm-pretty
-Version:             0.1.0.0
+Version:             0.2.0.0
 License:             BSD3
 License-file:        LICENSE
 Author:              Trevor Elliott
diff --git a/src/Text/LLVM/AST.hs b/src/Text/LLVM/AST.hs
--- a/src/Text/LLVM/AST.hs
+++ b/src/Text/LLVM/AST.hs
@@ -166,8 +166,15 @@
   | StackObjSize  !Int !Int (Maybe Int)
   | NativeIntSize [Int]
   | StackAlign    !Int
+  | Mangling Mangling
     deriving (Show)
 
+data Mangling = ElfMangling
+              | MipsMangling
+              | MachOMangling
+              | WindowsCoffMangling
+                deriving (Show,Eq)
+
 -- | Pretty print a single layout specification.
 ppLayoutSpec :: LayoutSpec -> Doc
 ppLayoutSpec  BigEndian                  = char 'E'
@@ -180,6 +187,7 @@
 ppLayoutSpec (StackObjSize  sz abi pref) = char 's'  <> ppLayoutBody sz abi pref
 ppLayoutSpec (NativeIntSize szs)         = char 'n'  <> colons (map int szs)
 ppLayoutSpec (StackAlign a)              = char 'S'  <> int a
+ppLayoutSpec (Mangling m)                = char 'm'  <> char ':' <> ppMangling m
 
 -- | Pretty-print the common case for data layout specifications.
 ppLayoutBody :: Int -> Int -> Maybe Int -> Doc
@@ -189,6 +197,12 @@
     Nothing -> empty
     Just p  -> char ':' <> int p
 
+ppMangling :: Mangling -> Doc
+ppMangling ElfMangling         = char 'e'
+ppMangling MipsMangling        = char 'm'
+ppMangling MachOMangling       = char 'o'
+ppMangling WindowsCoffMangling = char 'w'
+
 -- | Parse the data layout string.
 parseDataLayout :: MonadPlus m => String -> m DataLayout
 parseDataLayout  = mapM parseLayoutSpec . breaks (== '-')
@@ -215,6 +229,13 @@
          'n' -> do ints <- mapM parseInt body
                    return (NativeIntSize ints)
 
+         'm' -> case tail body of
+                  ["e"] -> return (Mangling ElfMangling)
+                  ["m"] -> return (Mangling MipsMangling)
+                  ["o"] -> return (Mangling MachOMangling)
+                  ["w"] -> return (Mangling WindowsCoffMangling)
+                  _     -> mzero
+
          _   -> mzero
   ]
 
@@ -230,6 +251,7 @@
   parseInt s = case reads s of
     [(i,[])] -> return i
     _        -> mzero
+
 
 -- Inline Assembly -------------------------------------------------------------
 
