From 856228f42ec623283359e3f8fdce62055d530f10 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! llvm-svn: 33294 --- llvm/include/llvm/Target/TargetData.h | 32 ++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/llvm/include/llvm/Target/TargetData.h b/llvm/include/llvm/Target/TargetData.h index 9b5aa99bde65..aaae41c17c69 100644 --- a/llvm/include/llvm/Target/TargetData.h +++ b/llvm/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);