summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2009-05-08 17:49:48 +0000
committerDuncan Sands <baldrick@free.fr>2009-05-08 17:49:48 +0000
commit02679554676e0eb758420d7cba6c0ce0364fda7f (patch)
treebbb8250f286903f06b95e50cde2077190aeea381 /llvm/include
parent96afab520b51bd53d1bc0a7bb204bc5c366a2bc7 (diff)
downloadbcm5719-llvm-02679554676e0eb758420d7cba6c0ce0364fda7f.tar.gz
bcm5719-llvm-02679554676e0eb758420d7cba6c0ce0364fda7f.zip
Add some examples to show the difference between
the various notions of type size used in LLVM. llvm-svn: 71230
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Target/TargetData.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/llvm/include/llvm/Target/TargetData.h b/llvm/include/llvm/Target/TargetData.h
index 7e7785bb403..8e5c4c34ea9 100644
--- a/llvm/include/llvm/Target/TargetData.h
+++ b/llvm/include/llvm/Target/TargetData.h
@@ -155,6 +155,23 @@ public:
/// Target pointer size, in bits
unsigned char getPointerSizeInBits() const { return 8*PointerMemSize; }
+ /// Size examples:
+ ///
+ /// Type SizeInBits StoreSizeInBits PaddedSizeInBits[*]
+ /// ---- ---------- --------------- ----------------
+ /// i1 1 8 8
+ /// i8 8 8 8
+ /// i19 19 24 32
+ /// i32 32 32 32
+ /// i100 100 104 128
+ /// i128 128 128 128
+ /// Float 32 32 32
+ /// Double 64 64 64
+ /// X86_FP80 80 80 96
+ ///
+ /// [*] The padded size depends on the alignment, and thus on the target.
+ /// These values are for x86-32 linux.
+
/// getTypeSizeInBits - Return the number of bits necessary to hold the
/// specified type. For example, returns 36 for i36 and 80 for x86_fp80.
uint64_t getTypeSizeInBits(const Type* Ty) const;
OpenPOWER on IntegriCloud