search for: phitransaddr

Displaying 10 results from an estimated 10 matches for "phitransaddr".

2017 Jan 16
2
Wrong code bug after GVN/PRE?
...r just a bug in PRE, or a bug in memdep. If i was a betting man, i'd bet on PRE and it's inter-iteration pre attempts. Staring at this case for a second, my money is on the following happening. 1. PRE starts by asking if the value of step[i] where i == 0 is fully available in all preds 2. PHITransaddr get it as part of memdep, and inside of those preds (which are in loop 1, not loop2), using it's magical powers, gives an answer about step[i] (note, not step[0]) instead. This answer may even be valid in the loop. The problem may even be related to the fact that the loops both iterate the s...
2013 Jan 16
1
[LLVMdev] llvm print-memdeps segfault
...REALLY want to taste LLVM bitcode first-hand, you can force output with the `-f' option. 0 opt 0x08eaf9a8 1 opt 0x08eaff24 2 0xb7753400 __kernel_sigreturn + 0 3 opt 0x08c00c19 llvm::MemoryDependenceAnalysis::getNonLocalPointerDepFromBB(llvm::PHITransAddr const&, llvm::AliasAnalysis::Location const&, bool, llvm::BasicBlock*, llvm::SmallVectorImpl<llvm::NonLocalDepResult>&, llvm::DenseMap<llvm::BasicBlock*, llvm::Value*, llvm::DenseMapInfo<llvm::BasicBlock*> >&, bool) + 3673 4 opt 0x08c019aa llvm::MemoryDe...
2015 May 04
2
[LLVMdev] Semantics of an Inbounds GetElementPtr
...son of that pointer against null, must result in that pointer comparison coming up with non-null. IE In the above, you would follow through all getPointerOperand->uses, and if they are icmps against null and post-dominated by the inbounds GEP block, replace them with false :) You need to use phitransaddr to translate the pointers backwards, to get that %2 is%mem. In this case, it will work, and is easy, because the predecessor is the thing you post-dominate. The path walking to get a correct translation is tricky in some cases. IE // If the GEP is inbounds, and this is address space 0, we know...
2015 May 04
2
[LLVMdev] Semantics of an Inbounds GetElementPtr
On Mon, May 4, 2015 at 9:40 AM, Nicholas White <n.j.white at gmail.com> wrote: > Thanks - that makes sense. It's interesting that at -O3 the optimizer > can't reduce the below though - I'll dig into it a bit and see if I > can make a patch that fixes it: I'm unsure what you expect to happen below. It's not quite the same testcase. GVN will PRE the loads, so you
2017 Jan 13
2
Wrong code bug after GVN/PRE?
Yeah, there's a lot of things this could be. On the memdep side: Note that memdep is not actually properly updated in all cases by most passes that claim to not invalidate it (they don't invalidate dependent pointers, only pointers they directly touch). There's already a bug filed about this. So far we've only seen missed-opt, not wrong code from this. But it should be possible
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] =
2010 Oct 01
2
[LLVMdev] CMake "sudo make install" & headers
...lysis/LoopInfo.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/LoopPass.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/MemoryBuiltins.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/MemoryDependenceAnalysis.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/PHITransAddr.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/Passes.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/PointerTracking.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/PostDominators.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/ProfileInfo.h -- Installi...
2010 Oct 01
0
[LLVMdev] CMake "sudo make install" & headers
On Thu, Sep 30, 2010 at 3:08 PM, Samuel Williams <space.ship.traveller at gmail.com> wrote: > Hi, > > I might just be doing something stupid, but when I do > > $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release .. > $ sudo make install > > I don't get the expected headers in >        /usr/local/llvm-2.8/include/llvm > > It is
2010 Sep 30
6
[LLVMdev] CMake "sudo make install" & headers
Hi, I might just be doing something stupid, but when I do $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release .. $ sudo make install I don't get the expected headers in /usr/local/llvm-2.8/include/llvm It is simply an empty directory. What am I doing wrong? This is on Mac OS X, CMake 2.8+ Kind regards, Samuel
2015 Jul 29
1
[LLVMdev] Error when i am using command make -j4 command in cygwin to compile safecode
...p for Release+Asserts build llvm[3]: Compiling UnifyFunctionExitNodes.cpp for Release+Asserts build llvm[3]: Compiling Utils.cpp for Release+Asserts build llvm[2]: Compiling NoAliasAnalysis.cpp for Release+Asserts build llvm[3]: Compiling ValueMapper.cpp for Release+Asserts build llvm[2]: Compiling PHITransAddr.cpp for Release+Asserts build llvm[2]: Compiling PostDominators.cpp for Release+Asserts build llvm[3]: Building Release+Asserts Archive Library libLLVMTransformUtils.a make[3]: Leaving directory '/home/NIKHILREDDY/WORK/LLVM_OBJ/lib/Transforms/Utils' make[3]: Entering directory '/home/NI...