From 0a28d18cd47433eff31a12d9d721000f2d52489b Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 29 Jul 2009 16:00:30 +0000 Subject: [PATCH] Add one-past-the-end language to the inbounds keyword. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77460 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/LangRef.html | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/LangRef.html b/docs/LangRef.html index 2589771915f..33fc7d4ff6c 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -3998,10 +3998,13 @@ entry:

If the inbounds keyword is present, the result value of the - getelementptr is undefined if the base pointer is not pointing - into an allocated object, or if any of the addresses formed by successive - addition of the offsets implied by the indices to the base address is - outside of the allocated object into which the base pointer points.

+ getelementptr is undefined if the base pointer is not an + in bounds address of an allocated object, or if any of the addresses + formed by successive addition of the offsets implied by the indices to + the base address are not an in bounds address of that allocated + object. + The in bounds addresses for an allocated object are all the addresses + that point into the object, plus the address one past the end.

If the inbounds keyword is not present, the offsets are added to the base address with silently-wrapping two's complement arithmetic, and