[PATCH] Use ScalarEvolution to create tight bounds on the parameters

Johannes Doerfert doerfert at cs.uni-saarland.de
Tue Feb 17 13:28:05 PST 2015


ScalarEvolution can deduce this due to the range metadata attached to
the load of p. Hence, this replaces my range metadata patch.

Furthermore, ScalarEvolution will also use other sources, e.g., zext
information to give us bounds without any additional code on our side.

On 02/17, Tobias Grosser wrote:
> On 12.02.2015 16:49, Sebastian Pop wrote:
> >On Thu, Feb 12, 2015 at 2:03 AM, Johannes Doerfert
> ><doerfert at cs.uni-saarland.de> wrote:
> >>Index: test/ScopInfo/ranged_parameter.ll
> >>===================================================================
> >>--- /dev/null
> >>+++ test/ScopInfo/ranged_parameter.ll
> >>@@ -0,0 +1,38 @@
> >>+; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> >>+;
> >>+; CHECK: Context:
> >>+; CHECK:   [p_0] -> {  : p_0 >= 0 and p_0 <= 255 }
> >>+;
> >>+;    void jd(int *A, int *p /* in [0,256) */) {
> >
> >I don't see A statically defined, so we don't know its size, and so I wonder
> >what information do we look at to compute that *p is in [0,256)?
> 
> Hi Johannes,
> 
> I would be interested in an answer to this question as well.
> 
> Tobias

-- 

Johannes Doerfert
Researcher / PhD Student

Compiler Design Lab (Prof. Hack)
Saarland University, Computer Science
Building E1.3, Room 4.31

Tel. +49 (0)681 302-57521 : doerfert at cs.uni-saarland.de
Fax. +49 (0)681 302-3065  : http://www.cdl.uni-saarland.de/people/doerfert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 213 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150217/c7975a82/attachment.sig>


More information about the llvm-commits mailing list