Displaying 20 results from an estimated 400 matches similar to: "[LLVMdev] Function of CorrelatedValuePropagation pass"
2015 Mar 12
2
[LLVMdev] Google Summer of Code FP Range checks
Hi,
I am interested in applying to LLVM as part Google Summer of Code 2015. I have been going through LLVM code since about 4 months now, and while going though mailing list discussions I found particular interest in the point raised by Arch Robinson in January about the development of a floating point range check pass in LLVM.
I have been in touch with Arch as well as Hal Finkel about this and
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
2016 Jul 01
3
Path condition propagation
On Thu, Jun 30, 2016 at 6:45 PM, Daniel Berlin via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
>
>
> On Thu, Jun 30, 2016 at 6:09 PM, Carlos Liam via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi all,
>>
>> Consider this C code:
>>
>> #include <stdbool.h>
>>
>> bool func(int n1, int n2, bool b) {
>>
2016 Jul 03
2
Path condition propagation
PropagateEquality in gvn.cpp
However, if you are going to do it, remember the goal is to make the code
simpler and easier, not just pile on to the current mess to catch more
cases :)
On Mon, Jul 4, 2016, 7:51 AM Carlos Liam <carlos at aarzee.me> wrote:
> Where would I look to change the equality propagation?
>
>
> - CL
>
> On Jun 30, 2016, at 11:45 PM, Daniel Berlin
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 <
2012 Mar 03
1
[LLVMdev] LLVM Value Tracking Analysis
On Sat, Mar 3, 2012 at 5:26 PM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Xin,
>
>> It seems to me that LLVM does not do too much on value range analysis.
>> i.e. what are the value constraints on a variable at a given point in
>> the program. The closest thing i can find is the ValueTracking API,
>> which can do some simple analysis on the value of a
2016 Jul 03
2
Path condition propagation
It's going to be really hard to do something sane in the current
infrastructure.
Its possible, but it would also be slow. You would have to go looking at
uses of variables compared in predicates in PropagateEquality and if the
uses appear in a comparison that is dominated by the true or false edge of
the existing predicate, see if it tells you something about the dominated
one.
On Mon, Jul
2016 Jul 04
2
Path condition propagation
Sure
On Mon, Jul 4, 2016, 9:40 AM Carlos Liam <carlos at aarzee.me> wrote:
> It looks like there's already something similar in PropagateEquality which
> eg X >= Y == true and replaces X < Y == false, which is somewhat similar -
> could I base an addition off of that?
>
>
> - CL
>
> On Jul 3, 2016, at 7:13 PM, Daniel Berlin <dberlin at dberlin.org>
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.
2011 Feb 25
7
Rspec2 for rails 2.3.8?
Hi experts,
I picked up a copy of the rspec book and wrote some tests in spec/lib
and spec/models for my Rails 2.3.8 code.
I was using rspec 2.5.1, rspec-core 2.5.0, rspec-expectations 2.5.0 et.
al.
But I realised that the rspec-rails version I am using is meant for
Rails3.
Which version of rspec-rails should I use for Rails 2.3.8?
Best,
Radhesh
--
Posted via http://www.ruby-forum.com/.
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
2017 Jul 24
2
LazyValueInfo vs ScalarEvolution
Hi,
Both LazyValueInfo and ScalarEvolution can calculate a constant range for
an LLVM Value.
I found that some times they do not agree, may be I interpreted them
incorrectly
For example in the following IR:
bb85: ; preds = %bb85, %bb73
%tmp86 = phi i32 [ 1, %bb73 ], [ %tmp95, %bb85 ]
%tmp95 = add nsw i32 %tmp86, 1
%tmp96 = icmp slt i32 %tmp95,
2017 Aug 08
6
Not enough storage space error
Hello Andrew & Louis,
Yesterday by around 1:30 PM we had the same issue. Samba AD kicked all
of us out and RSAT did not connect to any domain controllers.
/*Incidentally the RSAT that caused this error was running on Windows 7
Professional 64 Bit edition.*/
When I restarted the samba-ad-dc service, all started working well
again. However, as mentioned again, I could not trace the error
2016 Jul 01
0
Path condition propagation
On Thu, Jun 30, 2016 at 6:09 PM, Carlos Liam via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi all,
>
> Consider this C code:
>
> #include <stdbool.h>
>
> bool func(int n1, int n2, bool b) {
> bool greater = n1 > n2;
> if (greater && b) {
> if (n1 == n2) {
> return false; // unreachable
> }
>
2012 Jul 15
3
Issues with Plus addressing and detail part of subaddress.
Hi all,
So, it's been a while. I'm just ramping back up with Dovecot after a hiatus of a few years.
I've been using it fine, complete with Sieve, for about a year, with little or no issues.
I finally got around to setting up a second account, to start figuring out how I want to do some plus address filtering.
In a nutshell, I want to put mail for foo+bar in foo's 'bar'
2016 Jul 01
3
Path condition propagation
Hi all,
Consider this C code:
#include <stdbool.h>
bool func(int n1, int n2, bool b) {
bool greater = n1 > n2;
if (greater && b) {
if (n1 == n2) {
return false; // unreachable
}
}
return true;
}
The line marked unreachable cannot be reached, however currently LLVM does not optimize it out. I believe this is because LLVM does not
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
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 22
2
[LLVMdev] LLVM optimization passes crash when running on second thread
Hello,
I am trying to modify my LLVM-based compiler to perform an initial, no-optimization compilation synchronously on startup and then perform an asynchronous, optimized recompilation in the background, and I am getting in one of the optimization passes.
- I am using the official release of LLVM 2.8
- I have compiled LLVM with threading enabled; I am running llvm::llvm_start_multithreaded() on
2019 Dec 20
3
What's the go-to method to call other transform passes in LLVM9?
Hi:
In my in-house transform passes I needs to properly lower Switch/Invoke and PhiNodes, prior to LLVM9 I just call createLowerSwitchPass() and run it. However in LLVM9 doing this would assert out with error message:
Assertion failed: (Resolver && "Pass has not been inserted into a PassManager object!"), function getAnalysis, file