Displaying 20 results from an estimated 2000 matches similar to: "High memory use and LVI/Correlated Value Propagation"
2016 Jan 14
5
High memory use and LVI/Correlated Value Propagation
On 01/13/2016 04:28 PM, Daniel Berlin via llvm-dev wrote:
>
>
> On Wed, Jan 13, 2016 at 4:23 PM, Joerg Sonnenberger via llvm-dev
> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>
> On Wed, Jan 13, 2016 at 03:38:24PM -0800, Philip Reames wrote:
> > I don't think that arbitrary limiting the complexity of the
> search
2016 Jan 14
2
High memory use and LVI/Correlated Value Propagation
----- Original Message -----
> From: "Daniel Berlin via llvm-dev" <llvm-dev at lists.llvm.org>
> To: "Joerg Sonnenberger" <joerg at britannica.bec.de>, "llvm-dev"
> <llvm-dev at lists.llvm.org>
> Sent: Thursday, January 14, 2016 10:38:10 AM
> Subject: Re: [llvm-dev] High memory use and LVI/Correlated Value
> Propagation
> On
2016 Jan 14
3
High memory use and LVI/Correlated Value Propagation
On Wed, Jan 13, 2016 at 03:38:24PM -0800, Philip Reames wrote:
> I don't think that arbitrary limiting the complexity of the search is the
> right approach. There are numerous ways the LVI infrastructure could be
> made more memory efficient. Fixing the existing code to be memory efficient
> is the right approach. Only once there's no more low hanging fruit should
> we
2016 Jan 14
3
High memory use and LVI/Correlated Value Propagation
On Wed, Jan 13, 2016 at 04:28:03PM -0800, Daniel Berlin wrote:
> On Wed, Jan 13, 2016 at 4:23 PM, Joerg Sonnenberger via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
> > On Wed, Jan 13, 2016 at 03:38:24PM -0800, Philip Reames wrote:
> > > I don't think that arbitrary limiting the complexity of the search is the
> > > right approach. There are
2019 Dec 01
4
ConstantRange modelling precision?
Hello.
This question has come up in https://reviews.llvm.org/D70043
There, i'm teaching ConstantRange how no-wrap flags affect
the range of `mul` instruction, with end goal of exploiting
this in LVI/CVP.
There are certain combinations of ranges and no-wrap flags
that result in always-overflowing `mul`. For example,
`mul nuw nsw i4 [2,0), [4,0)` always overflows:
2016 Sep 27
4
Inferring nsw/nuw flags for increment/decrement based on relational comparisons
On 2016-09-27 02:28, Philip Reames wrote:
> On 09/20/2016 12:05 PM, Matti Niemenmaa via llvm-dev wrote:
>> I posted some questions related to implementing inference of nsw/nuw
>> flags based on known icmp results to Bug 30428 (
>> https://llvm.org/bugs/show_bug.cgi?id=30428 ) and it was recommended
>> that I engage a wider audience by coming here. The minimal context is
2011 Mar 14
2
[LLVMdev] How to integrate an analysis into LVI?
Hi guys,
I have an analysis that is able to answer questions like this: given an
integer variable, what is the interval of values that this variable can
assume during the program's execution?
I want to integrate this analysis into LLVM and it seems LVI (Lazy Value
Info) is the best place to do this kind of stuff. Can someone give some
hints about what I have to do to integrate my analysis
2011 Mar 18
0
[LLVMdev] How to integrate an analysis into LVI?
Hi guys,
I am trying to figure out how to use your Lazy Value Info pass, but I am
having some questions. First, it seems that the implementation contains
infra-structure to deal with range intervals, but the main interface only
gives the client information about which values are constants. Is this true?
Second, reading the code I see that the ranges are being computed, but I
could not tell if
2015 Apr 16
3
[LLVMdev] LazyValueInfo.getPredicateAt
Hi,
Is it intentional that LazyValueInfo.getPredicateAt doesn't solve for
the value and only takes assumptions into account?
getPredicateAt gets lattice value from cache using getValueAt call:
LVILatticeVal LazyValueInfoCache::getValueAt(Value *V, Instruction *CxtI) {
...
LVILatticeVal Result;
mergeAssumeBlockValueConstantRange(V, Result, CxtI);
...
return Result;
}
Other
2016 Sep 20
2
Inferring nsw/nuw flags for increment/decrement based on relational comparisons
Hi everyone,
I posted some questions related to implementing inference of nsw/nuw
flags based on known icmp results to Bug 30428 (
https://llvm.org/bugs/show_bug.cgi?id=30428 ) and it was recommended
that I engage a wider audience by coming here. The minimal context is
the following, please see the bug report for more detail:
> 1. If (X s< Y), then both X + 1 and Y - 1 are nsw.
> 2.
2017 Aug 07
2
vrp
I am primarily interested in phi nodes and their induction variables, in
ValueTracking file there is an analysis of them, but if the upper bound is
inf, it is not working?
2017-08-07 11:41 GMT+02:00 Anastasiya Ruzhanskaya <
anastasiya.ruzhanskaya at frtk.ru>:
> So, it is not supported to determine by this instruction : %cmp = icmp slt
> i32 %i.03, 99,
> that %i.03 = phi i32 [ 0,
2017 Jul 24
2
LazyValueInfo vs ScalarEvolution
Thanks, maybe we could use ScalarEvolution in LazyValueInfo if it is
available?
On Mon, Jul 24, 2017 at 1:44 PM, John Regehr via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Since they are different static analyses there's no reason to expect them
> to agree, but they should both be conservative. In other words, if you like
> you can compute the intersection of the two
2017 Aug 07
2
vrp
On Mon, Aug 7, 2017 at 2:14 AM, Anastasiya Ruzhanskaya via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> I am trying to print it like this (maybe here is smth wrong?)
>
>
> LazyValueInfo &LV = getAnalysis<LazyValueInfoWrapperPass>().getLVI();
> DominatorTree &DT =
> getAnalysis<DominatorTreeWrapperPass>().getDomTree();
> LV.printLVI(F,
2019 Dec 26
2
Calling LowerSwitchPass causing crash in llvm 9
Hi,
I am trying to call LowerSwitchPass directly in my custom pass in this way:
FunctionPass *lower = createLowerSwitchPass();
lower->runOnFunction(*f);
But it will crash when running lower->runOnFunction(*f) in llvm-9.
I was using this method in llvm-8 and it worked fine. It seems the crash
happens at the first line of the LowerSwitch::runOnFunction(Function &F) in
the newer
2019 Dec 27
2
Calling LowerSwitchPass causing crash in llvm 9
There is no “switch” instruction in the target object code. It usually gets compiled into a switch table with instructions to load from it. Afaik
Zhang
> 在 2019年12月26日,17:49,n3v3rm03 via llvm-dev <llvm-dev at lists.llvm.org> 写道:
>
> Sorry I found an early thread discussing this question. I guess I shouldn't create lower switch pass like this.
> However, I have another
2017 Feb 06
2
Adding Extended-SSA to LLVM
On Sun, Feb 5, 2017 at 3:41 PM, Nuno Lopes <nunoplopes at sapo.pt> wrote:
> Thanks for the answers! The plan makes sense to me.
>
> Regarding phis, what about diamonds, e.g.:
>
>
> define i32 @f(i32 %x) {
> br .., label %bb0, label %bb1
> bb0:
> %cmp = icmp sge i32 %x, 0 ; x > 0
> br i1 %cmp, label %bb2, label %bb3
> bb1:
> %x2 = add nsw
2016 Jul 06
4
Should analyses be able to hold AssertingVH to IR? (related to PR28400)
While building test-suite with the new PM, I ran into problems with
AssertingVH being triggered which is obvious in retrospect:
https://llvm.org/bugs/show_bug.cgi?id=28400
Both cases I ran into revolve around LVI which holds AssertingVH.
Essentially, what happens is this:
1. LVI holds an AssertingVH pointing at a BasicBlock
2. Some other pass ends up deleting that BB (e.g. SimplifyCFG)
3. BOOM
2017 Jul 24
2
LazyValueInfo vs ScalarEvolution
On Mon, Jul 24, 2017 at 2:29 PM, John Regehr via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> On 7/24/17 3:16 PM, Hongbin Zheng via llvm-dev wrote:
>
>> Thanks, maybe we could use ScalarEvolution in LazyValueInfo if it is
>> available?
>>
>
> This should be fairly easy to try, if you want to propose a patch and run
> some experiments. The question is
2016 Jul 01
2
Path condition propagation
The current gvn equality propagation is not powerful enough to get this
because it doesn't try to infer values in predicates based on other
predicates, so it never realizes a>b -> a !=b in a useful way.
It otherwise would get this
On Thu, Jun 30, 2016, 7:41 PM Sean Silva <chisophugis at gmail.com> wrote:
> On Thu, Jun 30, 2016 at 6:45 PM, Daniel Berlin via llvm-dev <
2016 Aug 05
2
Reasoning about results of min and max with a constant
Looks like LVI actually does have cases for max and min; would it be better to allow ValueTracking to use range analysis instead?
- CL
> On Aug 1, 2016, at 8:44 PM, Philip Reames <listmail at philipreames.com> wrote:
>
>> On 07/29/2016 07:08 PM, Carlos Liam via llvm-dev wrote:
>> Hi all,
>>
>> Say we have this IR:
>>
>> %1 = icmp slt i16 %x, 0