summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-11-07 09:35:34 +0000
committerChris Lattner <sabre@nondot.org>2009-11-07 09:35:34 +0000
commite82bdc4809240ab59977b9950288174b2f2dd852 (patch)
treeb4060f4e83c931aae54651d9b65823fb445422ec /docs
parent2e07494170d5f56805b7a6c1b70808fc2a157052 (diff)
downloadllvm-e82bdc4809240ab59977b9950288174b2f2dd852.tar.gz
llvm-e82bdc4809240ab59977b9950288174b2f2dd852.tar.bz2
llvm-e82bdc4809240ab59977b9950288174b2f2dd852.tar.xz
add the ability for TargetData to return information about legal integer
datatypes on a given CPU. This is intended to allow instcombine and other transformations to avoid converting big sequences of operations to an inconvenient width, and will help clean up after SRoA. See also "Adding legal integer sizes to TargetData" on Feb 1, 2009 on llvmdev, and PR3451. Comments welcome. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86370 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/LangRef.html7
1 files changed, 7 insertions, 0 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 7032a19814..eea1f03060 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -1215,6 +1215,13 @@ target datalayout = "<i>layout specification</i>"
<dt><tt>s<i>size</i>:<i>abi</i>:<i>pref</i></tt></dt>
<dd>This specifies the alignment for a stack object of a given bit
<i>size</i>.</dd>
+
+ <dt><tt>n<i>size1</i>:<i>size2</i>:<i>size3</i>...</tt></dt>
+ <dd>This specifies a set of native integer widths for the target CPU
+ in bits. For example, it might contain "n32" for 32-bit PowerPC,
+ "n32:64" for PowerPC 64, or "n8:16:32:64" for X86-64. Elements of
+ this set are considered to support most general arithmetic
+ operations efficiently.</dd>
</dl>
<p>When constructing the data layout for a given target, LLVM starts with a