search for: llvmslicer

Displaying 14 results from an estimated 14 matches for "llvmslicer".

2012 Feb 13
2
[LLVMdev] Static slicer and other useful stuff
Hello, we, at the Masaryk University, have developed an interprocedural static slicer with other useful stuff. This includes Andersen's points-to analysis, accurate call-graph, modifies relations. The whole code is available in this repository: https://github.com/jirislaby/LLVMSlicer The question I would like to ask is, would you accept this library into the core LLVM if we send patches or is it too off for LLVM's purposes? If the latter is the case, would it be possible to create a page at llvm dot org with stuff like this? thanks, -- js
2013 May 02
2
[LLVMdev] GSoC Proposal: Inter-Procedure Program Slicing in LLVM
...our simple script and improve it later. So I have more time/energy to contribute to the dynamic slicer. I think the slicing pass can be loaded by the opt. There is no need to change the front-end or other passes. I'm not sure whether the link time optimization can be exploited. We borrowed the LLVMSlicer code previously without LTO. Lastly, I'd like to introduce myself briefly. I'm a three-years PhD candidate student from Tsinghua University, China. My research area covers performance analysis, compiler techniques for high performance computing, and parallel computing (MPI/OpenMP). One of...
2012 Feb 20
2
[LLVMdev] Bringing back Andersen-like alias analysis
Hello, I am researching a more efficient approach to subset-based alias analysis in the style of Andersen's algorithm, and I noticed that there used to be an implementation of that for LLVM back in 2.6 (-anders-aa) which was removed because it was "not being actively maintained and had substantial problems". I'd be interested in knowing what was wrong with it (other than
2012 Feb 14
0
[LLVMdev] Static slicer and other useful stuff
...t; we, at the Masaryk University, have developed an interprocedural static > slicer with other useful stuff. This includes Andersen's points-to > analysis, accurate call-graph, modifies relations. > > The whole code is available in this repository: > https://github.com/jirislaby/LLVMSlicer > > The question I would like to ask is, would you accept this library into > the core LLVM if we send patches or is it too off for LLVM's purposes? > If the latter is the case, would it be possible to create a page at llvm > dot org with stuff like this? Before we can discuss...
2012 Nov 17
2
[LLVMdev] Interprocedural slicing using LLVM
...version of LLVM and probably needs some > TLC. It also only backtracks until it hits a load; additional code must > be written to backtrack further to find potentially reaching stores. > > The second option is to use some code written by Jiri Slaby at > https://github.com/jirislaby/LLVMSlicer. I believe his implementation > is a complete static backwards slicer, but I haven't used it myself, so > I don't know it's quality or what version of LLVM it uses. > > I think someone at UW-Madison may have an implementation as well; I'll > contact that person and s...
2012 Jun 27
0
[LLVMdev] Interprocedural slicing using LLVM
...de runs with an older version of LLVM and probably needs some TLC. It also only backtracks until it hits a load; additional code must be written to backtrack further to find potentially reaching stores. The second option is to use some code written by Jiri Slaby at https://github.com/jirislaby/LLVMSlicer. I believe his implementation is a complete static backwards slicer, but I haven't used it myself, so I don't know it's quality or what version of LLVM it uses. I think someone at UW-Madison may have an implementation as well; I'll contact that person and see. -- John T. >...
2012 Nov 20
0
[LLVMdev] Interprocedural slicing using LLVM
John, Thanks for your quick reply. Firstly, I'd like to employ a slicer for our benchmarking work (in one word, reducing the long-time irrelevant computing). I find the giri project and the LLVMSlicer[1]. However, the giri doesn't seem a complete implementation to me. I admit that I have not finished reading document/discussion, e.g. the previous threads in this mailing list. While the latter has no documents/comments, which is of great importance to a beginner. Secondly, I'm not an act...
2013 Apr 27
1
[LLVMdev] GSoC Proposal: Inter-Procedure Program Slicing in LLVM
...John Criswell from UIUC, a subproject of LLVM. The Giri code contains the static backwards intra-procedure slicing passes, and runs with an older version of LLVM. It also only backtracks until it hits a load. Additional code must be written to backtrack further to find potentially reaching stores. LLVMSlicer This implementation is a complete static backwards slicer from Masaryk University. It works on the well dened data and control flow equations in a white paper by F. Tip [4]. However, this code was written for special purpose, thus it's not general enough to be use by others. They implemented th...
2013 May 02
0
[LLVMdev] GSoC Proposal: Inter-Procedure Program Slicing in LLVM
...ve it > later. So I have more time/energy to contribute to the dynamic slicer. > > I think the slicing pass can be loaded by the opt. There is no need to > change the front-end or other passes. I'm not sure whether the link > time optimization can be exploited. We borrowed the LLVMSlicer code > previously without LTO. The problem with loading passes into opt is that you need to have a whole-program bitcode file. In practice, those can be difficult to build. The LLVM instrumentation passes should either be compiled into Clang and run on each compilation unit or linked into...
2012 Jun 26
2
[LLVMdev] Interprocedural slicing using LLVM
Hello, I am curious to know if LLVM offers any passes to do interprocedural slicing, I need to eliminate most of the computations(possibly all, if they don't influence the control flow), but the control flow of the program should be maintained at all cost. I did see an optimization pass to print the CFG of a function without its body to a dot file, but I am interested in generating the
2013 Apr 27
0
[LLVMdev] GSoC Proposal: Inter-Procedure Program Slicing in LLVM
...om UIUC, a subproject of LLVM. The Giri code contains the static backwards intra-procedure slicing passes, and runs with an older version of LLVM. It also only backtracks until it hits a load. Additional code must be written to backtrack further to find potentially reaching stores. - LLVMSlicer This implementation is a complete static backwards slicer from Masaryk University. It works on the well de ned data and control flow equations in a white paper by F. Tip [4]. However, this code was written for special purpose, thus it's not general enough to be use by others. They i...
2012 Feb 14
1
[LLVMdev] Static slicer and other useful stuff
...yk University, have developed an interprocedural static >> slicer with other useful stuff. This includes Andersen's points-to >> analysis, accurate call-graph, modifies relations. >> >> The whole code is available in this repository: >> https://github.com/jirislaby/LLVMSlicer >> >> The question I would like to ask is, would you accept this library into >> the core LLVM if we send patches or is it too off for LLVM's purposes? >> If the latter is the case, would it be possible to create a page at llvm >> dot org with stuff like this? >...
2013 Oct 31
4
[LLVMdev] LLVM BoF at SC13
All, I have arranged for an LLVM BoF at SC13 in Denver: http://sc13.supercomputing.org/schedule/event_detail.php?evid=bof143 If you will be at SC13, have an interesting project based on or within LLVM, and would be willing to come to the BoF and spend 10 minutes or so giving an overview of it, please email me. I am trying to get a collection of people together to talk about vectorization and
2013 Apr 12
3
[LLVMdev] The line number range of a function in source code level
Hi all, I need to know the line number range of a function. The start of the function line number can be found by the definition point, which is stored at the subprogram metadata: DISubprogram::getLineNumber(). However, there is no API (or the metadata in the first place) to know the end of the function. I have to visit all the instructions of the function and maintain the *max*line number of