summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-04-28 00:31:12 +0000
committerChris Lattner <sabre@nondot.org>2010-04-28 00:31:12 +0000
commit2d4b8ee1d9b49bfb30afb44e0ed7abccaea2093c (patch)
tree14a041c3f26c48bdefd99659ba7a69cd0b0d54cc /docs
parentce99fa9e26027a21a4552d0d39f17853649833a9 (diff)
downloadllvm-2d4b8ee1d9b49bfb30afb44e0ed7abccaea2093c.tar.gz
llvm-2d4b8ee1d9b49bfb30afb44e0ed7abccaea2093c.tar.bz2
llvm-2d4b8ee1d9b49bfb30afb44e0ed7abccaea2093c.tar.xz
further clarify alignment of globals, fix instcombine
to not increase the alignment of globals with an assigned alignment and section. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102476 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/LangRef.html9
1 files changed, 5 insertions, 4 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 05637ab330..02b249b48d 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -855,10 +855,11 @@ define i32 @main() { <i>; i32()* </i>
of 2. If not present, or if the alignment is set to zero, the alignment of
the global is set by the target to whatever it feels convenient. If an
explicit alignment is specified, the global is forced to have exactly that
- alignment. Targets are not allowed to over-align the global in cases where
- it is observable: for example, overaligning a global is observable if it has
- an assigned section and higher alignment could cause holes between
- consequtive globals.</p>
+ alignment. Targets and optimizers are not allowed to over-align the global
+ if the global has an assigned section. In this case, the extra alignment
+ could be observable: for example, code could assume that the globals are
+ densely packed in their section and try to iterate over them as an array,
+ alignment padding would break this iteration.</p>
<p>For example, the following defines a global in a numbered address space with
an initializer, section, and alignment:</p>