similar to: [LLVMdev] MemoryDependenceAnalysis && MemDepResult

Displaying 20 results from an estimated 1100 matches similar to: "[LLVMdev] MemoryDependenceAnalysis && MemDepResult"

2011 Dec 13
1
[LLVMdev] Memory Dependence Analysis
Howdy, I'm working on writing a dependence analyzer (rather like what LoopDependenceAnalysis wants to be, except a bit more general). While this is a problem of many parts, I'm currently focusing on finding pairs of memory references to test for dependence. Consider this contrived C code: double test2(int n, double *restrict A, double *restrict B, bool flag) { if (flag) { A[0] =
2015 Aug 07
2
load instruction erroneously removed by GVN
Hi, I'm having a problem with GVN removing a load instruction that I think is needed. Dump before GVN: *** IR Dump Before Global Value Numbering *** ; Function Attrs: minsize optsize define i16 @TEST__MAIN(i16 %argc.13.par, i16** %argv.14.par) #0 { %buf.17 = alloca [10 x i16], align 1 %_tmp30 = getelementptr inbounds [10 x i16], [10 x i16]* %buf.17, i16 0, i16 0, !dbg !22 call
2010 Sep 23
2
[LLVMdev] Finding all values derived from a function argument
Hello! I am trying to retrieve all instructions from a function's body that are dependent on a specific argument. The strategy I am currently using for that is to follow all uses of the argument and record them. Also, whenever I encounter a store of a dependent value, I try to find loads in the function that are dependent on that store and resume use-tracking from there. For this purpose I am
2009 Jul 23
0
[LLVMdev] [PATCH] PR2218
On Jul 22, 2009, at 1:37 PM, Jakub Staszak wrote: > Hello, > > This patch fixes PR2218. Very nice. Are you sure this fixes PR2218? The example there doesn't have any loads in it. > However, I'm not pretty sure that this optimization should be in > MemCpyOpt. I think that GVN is good place as well. Yes, you're right. My long term goal is to merge the relevant
2010 Jul 18
0
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
Sorry, I misunderstood the question. The difference between a load and a read-only call is that load can be used as the value of the memory location. E.g. DeadStoreElimination pass removes a store that stores a just loaded value back into the same location. To do this it checks if the stored value is the value of load. Read-only call cannot be used like this. This being said, I don't know if
2010 Jul 17
0
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
Since isLoad == false means we're looking at a store, what this does is making the store *p depend on the load *p. This is correct -- you can't move store before load, otherwise load will start returning a different value. Eugene On Fri, Jul 16, 2010 at 5:43 PM, Marc de Kruijf <dekruijf at cs.wisc.edu> wrote: > Hello, > > I'm taking a really good look at the
2010 Jul 18
2
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
Yes, I'm not arguing that there is a dependence, just that it's not a clobber dependence. The case of a load is already considered earlier in that function and with isLoad == false it returns MemDepResult::getDef(). My question is: why should a read-only call (which yields AliasAnalysis::Ref and is handled in this code fragment) be any different from e.g. a load. Isn't a read-only
2010 Jul 16
2
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
Hello, I'm taking a really good look at the MemoryDependenceAnalysis pass, but I'm slightly confused about one little thing. I think it's a bug but I'm not confident enough to submit a bug report. Is there a reason why read-only calls are considered to "clobber" pointers in the non-load case (which is what gets returned due to the fall-through in the switch -- see
2013 Jan 18
0
[LLVMdev] llvm getDependency() for ICMP instructions is UNKNOWN
Hello everyone ! I am trying to get the dependencies for the variables of ICMP instructions. Do you know if I can use an already existing method? I tried to use getDependency() method of class MemoryDependenceAnalysis. Does it work only for particular instruction types? Its definition is MemDepResult MemoryDependenceAnalysis::getDependency ( Instruction * QueryInst ) When I running my pass
2009 Sep 02
0
[LLVMdev] [PATCH] PR2218
On Sep 2, 2009, at 1:07 AM, Jakub Staszak wrote: > Hello, > > I fixed my patch as you asked. Sorry for the delay, I'd been working > on my SSU patch (http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-August/025347.html > ) > > I hope that everything is fine now. Hey Jakub, Thanks for working on this again, one more round :) Please merge the three testcases into one
2009 Jul 25
2
[LLVMdev] [PATCH] PR2218
Hello, Sorry for my stupid mistakes. I hope that everything is fine now. This patch fixes PR2218. There are no loads in example, however "instcombine" changes memcpy() into store/load. Regards, Jakub Staszak -------------- next part -------------- A non-text attachment was scrubbed... Name: pr2218-2.patch Type: application/octet-stream Size: 6525 bytes Desc: not available URL:
2009 Sep 02
1
[LLVMdev] [PATCH] PR2218
On Sep 2, 2009, at 3:15 PM, Chris Lattner wrote: > Please merge the three testcases into one file. We added a new > FileCheck tool which allows you to check for the exact sequence of > instructions expected, which also allows the tests to be merged into > one file. > > +/// MemCpyOpt::pointerIsParameter - returns true iff pointer is a > parameter of > +/// C call
2011 Dec 12
1
[LLVMdev] problem with runOnLoop
Thank you for your reply Yes, I change them, so what should I do for another loops? On Mon, Dec 12, 2011 at 7:54 PM, neda 8664 <neda8664 at gmail.com> wrote: > Thank you for your reply > > Yes, I change them, so what should I do for another loops? > > On Mon, Dec 12, 2011 at 7:42 PM, John Criswell <criswell at illinois.edu>wrote: > >> On 12/12/11 9:59 AM,
2011 Dec 12
0
[LLVMdev] problem with runOnLoop
On 12/12/11 10:25 AM, neda 8664 wrote: > > Thank you for your reply > > Yes, I change them, so what should I do for another loops? I don't really know what you should do since I don't know what your code does. All I know is that it's changing the function's control-flow graph. If you're not modifying the structure of the loops in the function, then you can
2009 Apr 25
1
[LLVMdev] MemoryDependenceAnalysis
On Apr 25, 2009, at 5:05 PM, Chris Lattner wrote: > > On Apr 13, 2009, at 12:01 PM, Anthony Danalis wrote: > >> I'm attaching the .bc file. Note that my analysis pass is invoked >> after "-O1" and that's why the IR I included in the original email >> is optimized. > > Hi Anthony, > > Sorry for the delay, things have been crazy lately. >
2009 Apr 13
0
[LLVMdev] MemoryDependenceAnalysis
On Mon, Apr 13, 2009 at 9:06 AM, Anthony Danalis <adanalis at eecs.utk.edu> wrote: > How can I use MemoryDependenceAnalysis (or any other analysis for that > matter) to gather that the instructions > j = N/2  (store i32 %11, i32* %j, align 4) > and > N = N+7  (store i32 %12, i32* %n, align 4) > are the ones that define the parameters "j" and "N"
2009 Apr 13
1
[LLVMdev] MemoryDependenceAnalysis
On Apr 13, 2009, at 3:32 PM, Eli Friedman wrote: > On Mon, Apr 13, 2009 at 9:06 AM, Anthony Danalis <adanalis at eecs.utk.edu > > wrote: >> How can I use MemoryDependenceAnalysis (or any other analysis for >> that >> matter) to gather that the instructions >> j = N/2 (store i32 %11, i32* %j, align 4) >> and >> N = N+7 (store i32 %12, i32* %n,
2009 Apr 25
0
[LLVMdev] MemoryDependenceAnalysis
On Apr 13, 2009, at 12:01 PM, Anthony Danalis wrote: > I'm attaching the .bc file. Note that my analysis pass is invoked > after "-O1" and that's why the IR I included in the original email > is optimized. Hi Anthony, Sorry for the delay, things have been crazy lately. The MemDep API assumes that you will call getDependency() first, and then only call
2008 Oct 08
1
Error in spdep: system is computationally singular
Hi all, I am trying to run an autologistic model using the function errorsarlm from spdep package. **I built an XY matrix extracting the two colums from matriz** coords1<-matriz[matriz$casos1==1, c(4,5)] coords1<-as.matrix(coords1) **I identify neighbours of region points** nb20<-dnearneigh(coords1,0,20,longlat=TRUE) ** I build a neighbours list with spatial weights**
2011 Dec 12
4
[LLVMdev] problem with runOnLoop
hi all, I want access to all basic blocks of function in a loop, so I used the following code: *bool parallel::runOnLoop(Loop *L, LPPassManager &LPM) { for (Function::iterator bi= func->begin(); bi != func->end(); bi++){ // } }* First loop run without problem, but for second loop I get the following error: *0 libLLVM-2.9.so 0x0137d530 1 libLLVM-2.9.so 0x0137fa6c 2