From 1324289d24a1c86c9e12c590218db42814ab0225 Mon Sep 17 00:00:00 2001
From: Frits van Bommel
Date: Sun, 5 Dec 2010 20:54:38 +0000
Subject: [PATCH] Clarify some of the differences between indexing with
getelementptr and indexing with insertvalue/extractvalue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120957 91177308-0d34-0410-b5e6-96231b3b80d8
---
docs/LangRef.html | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 68d65f1a972..76fa06f49c2 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -4131,6 +4131,14 @@ Instruction
array type. The operands are constant indices to
specify which value to extract in a similar manner as indices in a
'getelementptr' instruction.
+ The major differences to getelementptr indexing are:
+
+ - Since the value being indexed is not a pointer, the first index is
+ omitted and assumed to be zero.
+ - At least one index must be specified.
+ - Not only struct indices but also array indices must be in
+ bounds.
+
Semantics:
The result is the value at the position in the aggregate specified by the
@@ -4165,7 +4173,7 @@ Instruction
array type. The second operand is a first-class
value to insert. The following operands are constant indices indicating
the position at which to insert the value in a similar manner as indices in a
- 'getelementptr' instruction. The
+ 'extractvalue' instruction. The
value to insert must have the same type as the value identified by the
indices.