From 48f6a3175a195ff58b23fd0c82f3890a2d5d7366 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Thu, 18 Feb 2010 18:22:18 +0000 Subject: [PATCH] Clarify that the rules about object hopping kick in when a pointer is deferenced, rather than when the pointer value is computed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96596 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/AdvancedGetElementPtr.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/AdvancedGetElementPtr.html b/docs/AdvancedGetElementPtr.html index 1e48bb33dbf..b5efe735538 100644 --- a/docs/AdvancedGetElementPtr.html +++ b/docs/AdvancedGetElementPtr.html @@ -44,10 +44,10 @@ where it doesn't do this. With GEP you can avoid this problem.

Also, GEP carries additional pointer aliasing rules. It's invalid to take a - GEP from one object and address into a different separately allocated - object. IR producers (front-ends) must follow this rule, and consumers - (optimizers, specifically alias analysis) benefit from being able to rely - on it.

+ GEP from one object, address into a different separately allocated + object, and deference it. IR producers (front-ends) must follow this rule, + and consumers (optimizers, specifically alias analysis) benefit from being + able to rely on it.

And, GEP is more concise in common cases.