From c49e1eb8cc5fc1effebf1863acd78889fad0aa32 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 17 Jan 2007 07:28:48 +0000 Subject: [PATCH] make doxygen comment much better. Patch by B. Scott Michel! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33294 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Target/TargetData.h | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/include/llvm/Target/TargetData.h b/include/llvm/Target/TargetData.h index 9b5aa99bde6..aaae41c17c6 100644 --- a/include/llvm/Target/TargetData.h +++ b/include/llvm/Target/TargetData.h @@ -81,8 +81,38 @@ public: ~TargetData(); // Not virtual, do not subclass this class - /// init - Specify configuration if not available at ctor time. + /// Parse a target data layout string and initialize TargetData members. /// + /// Parse a target data layout string, initializing the various TargetData + /// members along the way. A TargetData specification string looks like + /// "E-p:64:64-d:64-f:32-l:64-i:32-s:16-b:8-B:8" and specifies the + /// target's endianess, the alignments of various data types and + /// the size of pointers. The "-" is used as a separator and ":" + /// separates a token from its argument. Alignment is indicated in bits + /// and internally converted to the appropriate number of bytes. + /// + /// Valid tokens: + ///
+ /// E specifies big endian architecture (1234) [default]
+ /// e specifies little endian architecture (4321)
+ /// p:[ptr size]:[ptr align] specifies pointer size and alignment + /// [default = 64:64]
+ /// d:[align] specifies double floating point alignment + /// [default = 64]
+ /// f:[align] specifies single floating point alignment + /// [default = 32]
+ /// l:[align] specifies long integer alignment + /// [default = 64]
+ /// i:[align] specifies integer alignment + /// [default = 32]
+ /// s:[align] specifies short integer alignment + /// [default = 16]
+ /// b:[align] specifies byte data type alignment + /// [default = 8]
+ /// B:[align] specifies boolean data type alignment + /// [default = 8]
+ /// + /// All other token types are silently ignored. void init(const std::string &TargetDescription);