similar to: [LLVMdev] get TopDown DSGraph

Displaying 20 results from an estimated 100 matches similar to: "[LLVMdev] get TopDown DSGraph"

2002 Nov 21
1
[LLVMdev] get TopDown DSGraph
Thanks, Chris. Actually I got the following graph from my program: digraph DataStructures { label="Function fini"; edge [arrowtail="dot"]; size="10,7.5"; rotate="90"; Node0x100ae1c40 [shape=record,shape=Mrecord,label="{ %struct.a: HIMR\n|{<g0>|<g1>|<g2>}}"]; Node0x100ae1c40:g1 -> Node0x100ae1e00;
2002 Nov 21
0
[LLVMdev] get TopDown DSGraph
> I was wondering if this is the right way to get TopDown DSGraph? > TDDataStructures &TD = getAnalysis<TDDataStructures>(); > F is some function > DSGraph &dsg = TD.getDSGraph(F); Yes, that's the right way. > I found out the DSGraph I got using this method is actually bottom up > DSGraph, can you let me know why? Why do you think it's a BU graph? -Chris
2008 Apr 23
2
[LLVMdev] how to dump DSA graph in gdb?
On Wed, Apr 23, 2008 at 11:59 PM, John Criswell <criswell at cs.uiuc.edu> wrote: > Dear Tianwei, > > You can use the -analyze option to the opt tool to tell the DSA passes > to store their results in files. When you use the -analyze option, the > DSA passes will create a separate file for each function (and possible > one file to hold the globals graph). For this reason,
2008 Apr 23
0
[LLVMdev] how to dump DSA graph in gdb?
Tianwei wrote: > On Wed, Apr 23, 2008 at 11:59 PM, John Criswell <criswell at cs.uiuc.edu<mailto:criswell at cs.uiuc.edu>> wrote: > Dear Tianwei, > > You can use the -analyze option to the opt tool to tell the DSA passes > to store their results in files. When you use the -analyze option, the > DSA passes will create a separate file for each function (and possible
2016 Feb 04
2
llc gives Segmentation fault at instruction selection [was Re: Instruction selection gives "LLVM ERROR: Cannot select"]
Hello, Tim, Thank you for your advice. Indeed, the problem with "LLVM ERROR: Cannot select" was a false predicate that should have been true. I solved the problem by simply making the C++ function implementing the TableGen predicate used in my store instruction (very similar to the selectIntAddrMSA predicate from the Mips back end) return true instead of false. But
2002 Nov 03
2
[LLVMdev] getAnalysis()
I'm having trouble with using getAnalysis() to access the results of one pass from within another. I require the pass to be previously executed as follows: void MyPass::getAnalysisUsage(AnalysisUsage &Info) const { Info.addRequired<TDDataStructures>(); } Then I try to use it as follows: bool MyPass::doInitialization(Module &M) { TDDataStructures &dsgraph =
2008 Apr 23
2
[LLVMdev] how to dump DSA graph in gdb?
Hi, all: Recently I am debugging the DSA and want to learn how it work, and now I am checking the local datastructure analysis. I use the following command to print the graph: (gdb) p g.dump() digraph DataStructures { label="Function addG"; Node0xe1f3a0 [shape=record,shape=Mrecord,label="{ i32: MRE\n|{<g0>}}"]; Node0xe1f4d0
2015 May 15
2
[LLVMdev] DSA / poolalloc: incorrect callgraph for indirect call
Hello, I am trying to apply DSA (from the poolalloc project - I'm on LLVM 3.2) on the following C program and found that the generated callgraph over-approximates the callees for the simple indirect call. #include <stdio.h> __attribute__((noinline)) static int f1(int arg1, int arg2) { return arg1 + arg2; } __attribute__((noinline)) static int run_func(int (*fptr)(int, int), int
2008 Apr 23
0
[LLVMdev] how to dump DSA graph in gdb?
Dear Tianwei, You can use the -analyze option to the opt tool to tell the DSA passes to store their results in files. When you use the -analyze option, the DSA passes will create a separate file for each function (and possible one file to hold the globals graph). For this reason, I recommend running opt in a special empty directory because DSA will generate *a lot* of files. Second, to
2011 Aug 11
0
[LLVMdev] incorrect DSCallGraph for simple indirect call with vtable nearby
On Wed, Aug 10, 2011 at 1:39 PM, Ben Liblit <liblit at cs.wisc.edu> wrote: > The first of those two calls is a vtable dispatch; the ideal answer would be > Base::virt() const and Derived::virt() const, without red() and blue(). >  Still, vtable lookups are complex, so I could imagine an over-approximation > here. > > The second of those two calls is just a non-deterministic
2011 Aug 10
2
[LLVMdev] incorrect DSCallGraph for simple indirect call with vtable nearby
John Criswell wrote: > 1) I'll try out your example C++ code below and see if I can get the > same results that you do. However, I'm at a conference right now (Usenix > Security), so I don't know exactly when I'll get to it. Excellent. Thanks, John! > 2) DSA can get pessimistic results when dealing with external code (as > Andrew described). It is designed for
2011 Aug 11
2
[LLVMdev] incorrect DSCallGraph for simple indirect call with vtable nearby
Will Dietz wrote: > This is actually the expected behavior for EQTD :). Expected by you, maybe. :-D > If you switch to TD you'll get better alias-analysis information, and > in this example the correct result. OK, I have switched to TDDataStructures as well, and I am also seeing much better (for my purposes) results in simple tests. I'll keep poking at this some more and
2007 Jul 10
1
[LLVMdev] A question about LLVM and pool allocation
HI guys. I'm trying to build the poolalloc on llvm-2.0 but there exist some errors. Can you tell me which version of llvm is known to make the poolalloc build and install successful? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070710/4ab5e155/attachment.html>
2014 Nov 03
2
[LLVMdev] Virtual register def doesn't dominate all uses
Hi Quentin, >> Yes, the dags in view-isel-dags and view-legalize-types-dags are correct (the add operations are here and are their results are used) and the dags are the same. > > And what about view-sched-dags? The DAG looks like I described below (*) > This one should give you what has been selected. So if this is not correct, you have indeed a problem in the selection
2015 Dec 28
3
Interpreting DSCallGraph results
Any suggestions for how to interpret DSCallGraph's output for the following? I'm trying to use DSCallGraph to get a conservative estimate of a whole-program SCC call graph. I wanted to see how it handles real call-graph cycles involving functions both internal and external to the module. So I made a test program with the following actual call graph, using the standard library's
2008 Aug 11
1
Unexpected parameter problem using rsaga.geoprocessor() {RSAGA}
Hello, I discovered SAGA, an interesting free GIS, a few days ago and now, I would like to use it from within R 2.6.2 using the RSAGA package. I read the documentation for this package and thought that I understood it correctly for trying to call some of the SAGA modules. For getting the information on the usage of and arguments required by the SAGA command line "Import Binary Raw
2006 Nov 16
6
Gantt chart problem after upgrade to R 2.4.0
I am having a problem with a gantt chart since moving to R2.4.0. from 2.3.1 I made some adaptations to the code from http://addictedtor.free.fr/graphiques/RGraphGallery.php?graph=74 and successful produced a simple gantt chart. However when I upgraded to 2.4.0 it no longer works as desired. See http://ca.geocities.com/jrkrideau/R/gantproblem.pdf for the two charts. The charts were produced
2002 Nov 03
0
[LLVMdev] getAnalysis()
On Sun, 3 Nov 2002, Scott Mikula wrote: > I'm having trouble with using getAnalysis() to access the results of one > pass from within another. I require the pass to be previously executed > as follows: > > void MyPass::getAnalysisUsage(AnalysisUsage &Info) const { > Info.addRequired<TDDataStructures>(); > } Is that the only line you have? There may be
2002 Nov 03
1
[LLVMdev] getAnalysis()
Chris Lattner wrote: > On Sun, 3 Nov 2002, Scott Mikula wrote: > > I'm having trouble with using getAnalysis() to access the results of one > > pass from within another. I require the pass to be previously executed > > as follows: > > > > void MyPass::getAnalysisUsage(AnalysisUsage &Info) const { > >
2016 Sep 12
2
scheduler options documentation?
I see that there are several options to influence instruction scheduling, but there doesn't seem to be a lot of information about what they do, for example: -misched-topdown -misched-bottomup The description in MachineScheduler.cpp says: "Force top-down list scheduling" and "Force bottom-up list scheduling" Which isn't too helpful - where might I want to use these?