Add support for the new "target data" information in .ll files.  This provides
a better encoding of the targets data layout, rather than trying to guess it
from the endianness and pointersize like before.

Update the generated files.

llvm-svn: 31031
diff --git a/llvm/lib/AsmParser/llvmAsmParser.y.cvs b/llvm/lib/AsmParser/llvmAsmParser.y.cvs
index e57ca4c..2842f27 100644
--- a/llvm/lib/AsmParser/llvmAsmParser.y.cvs
+++ b/llvm/lib/AsmParser/llvmAsmParser.y.cvs
@@ -1068,6 +1068,7 @@
 %token DEPLIBS CALL TAIL ASM_TOK MODULE SIDEEFFECT
 %token CC_TOK CCC_TOK CSRETCC_TOK FASTCC_TOK COLDCC_TOK
 %token X86_STDCALLCC_TOK X86_FASTCALLCC_TOK
+%token DATA
 %type <UIntVal> OptCallingConv
 
 // Basic Block Terminating Operators
@@ -1873,6 +1874,11 @@
     free($3);
     CHECK_FOR_ERROR
   };
+  | DATA '=' STRINGCONSTANT {
+    CurModule.CurrentModule->setDataLayout($3);
+    free($3);
+    CHECK_FOR_ERROR
+  };
 
 LibrariesDefinition : '[' LibList ']';