Displaying 20 results from an estimated 297 matches for "dataflows".
Did you mean:
dataflow
2013 Apr 16
2
[LLVMdev] Traditional Dataflow Algorithm
Is there a traditional dataflow algorithm buried in LLVM somewhere? I
need to be able to do some very late transformations (after regalloc)
and we aren't in SSA anymore. I will need a dataflow analysis to ensure
correctness.
At one point I thought I remembered seeing a generic fixed-point
dataflow analysis engine but now I can't find it. Does it still exist
or did it ever exist? If
2009 Sep 06
2
[LLVMdev] Graphviz and LLVM-TV
...llPtrSet<const Value*, 16> SmallValueSet;
SmallValueSet DFSet;
const User* U = ...;
for (idf_ext_iterator<const User*, SmallValueSet> I=idf_ext_begin(U,
DFSet), E=idf_ext_end(U, DFSet); I != E; ++I) {
..
}
There is no common root for the dataflow graph from which you can
enumerate all dataflows, but you could take
each instruction in a function that you're interested in, and output a
dataflow graph rooted at that instruction,
unless that instruction was part of some other dataflow graph already.
Perhaps something like:
SmallValueSet PrintedSet;
for (Function::arg_iterator I=F.arg_be...
2009 Sep 06
3
[LLVMdev] Graphviz and LLVM-TV
...> }
>>
>>
>>
> I don't understand why I'd need a depth-first iterator.
It was just an example to show something that uses the GraphTraits from
DataFlow.h.
>
>
>> There is no common root for the dataflow graph from which you can
>> enumerate all dataflows, but you could take
>> each instruction in a function that you're interested in, and output a
>> dataflow graph rooted at that instruction,
>> unless that instruction was part of some other dataflow graph already.
>>
>>
> from this I'm getting that you su...
2013 Apr 16
0
[LLVMdev] Traditional Dataflow Algorithm
On 4/16/13 11:30 AM, dag at cray.com wrote:
> Is there a traditional dataflow algorithm buried in LLVM somewhere? I
> need to be able to do some very late transformations (after regalloc)
> and we aren't in SSA anymore. I will need a dataflow analysis to ensure
> correctness.
>
> At one point I thought I remembered seeing a generic fixed-point
> dataflow analysis engine
2009 Sep 06
0
[LLVMdev] Graphviz and LLVM-TV
...ator<const User*, SmallValueSet> I=idf_ext_begin(U,
> DFSet), E=idf_ext_end(U, DFSet); I != E; ++I) {
> ..
> }
>
>
>
I don't understand why I'd need a depth-first iterator.
> There is no common root for the dataflow graph from which you can
> enumerate all dataflows, but you could take
> each instruction in a function that you're interested in, and output a
> dataflow graph rooted at that instruction,
> unless that instruction was part of some other dataflow graph already.
>
>
from this I'm getting that you suggest finding all "r...
2017 Jul 05
3
Dataflow analysis regression in 3.7
Hi all,
I just found an optimization regression regarding simple
dataflow/constprop analysis:
https://godbolt.org/g/Uz8P7t
This code
```
int dataflow(int b) {
int a;
if (b==4)
a = 3*b; // fully optimized when changed to a = 3;
else
a = 5;
if (a == 4)
return 0;
else
return 1;
}
```
is no longer optimized to just a "return 1". The regression happened in
LLVM
2009 Sep 07
0
[LLVMdev] Graphviz and LLVM-TV
...t understand why I'd need a depth-first iterator.
>>
>
> It was just an example to show something that uses the GraphTraits from
> DataFlow.h.
>
>
>>
>>> There is no common root for the dataflow graph from which you can
>>> enumerate all dataflows, but you could take
>>> each instruction in a function that you're interested in, and output a
>>> dataflow graph rooted at that instruction,
>>> unless that instruction was part of some other dataflow graph already.
>>>
>>>
>>>
&g...
2005 Jul 05
1
[LLVMdev] Writing a dataflow analysis
Hi
I have just taken a look at the LLVM-compiler and i am trying to write a pass
which analyses the dataflow and sideeffects.
So far i have written my own pass which works and i can traverse the blocks,
functions and instructions. Currently i am using the "runOnFunction" function
and iterate over the functions and blocks. But this seems to be not optimal
since the instructions
2016 Jan 21
2
Could I do some control-flow and dataflow analysis cross files and functions via IR
As mentioned in the title, I want to do some control-flow and dataflow
analysis. I can only find the assignment statement in a function, but the
assigned variable is just a parameter of this function.
For example,
****************************************
int foo(struct A* a, int b, ...){
...
a->Int_field = b;
...
return 0;
}
*****************************************
in the code
2016 Mar 01
2
How to do some dataflow analysis via IR on a large project?
I am learning to do some basic dataflow analysis on C code projects,
such as Apache httpd. Now I am a newbie of LLVM IR, and there are some
problems in doing that.
In the official User Manual of how to write a LLVM PASS, they only
show the way to generate IR of a single ".c" source file. But in fact
there are so many examples that the usage and definition of a function
are not in the
2017 Jul 06
2
Dataflow analysis regression in 3.7
On Thu, Jul 6, 2017 at 7:00 AM, Davide Italiano <davide at freebsd.org> wrote:
> On Wed, Jul 5, 2017 at 3:59 PM, Johan Engelen via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
> > Hi all,
> > I just found an optimization regression regarding simple
> > dataflow/constprop analysis:
> > https://godbolt.org/g/Uz8P7t
> >
> > This code
>
2013 Apr 18
2
[LLVMdev] Traditional Dataflow Algorithm
On Apr 16, 2013, at 10:27 AM, John Criswell <criswell at illinois.edu> wrote:
> On 4/16/13 11:30 AM, dag at cray.com wrote:
>> Is there a traditional dataflow algorithm buried in LLVM somewhere? I
>> need to be able to do some very late transformations (after regalloc)
>> and we aren't in SSA anymore. I will need a dataflow analysis to ensure
>> correctness.
2009 Aug 13
1
[LLVMdev] Graphviz and LLVM-TV
Hi Ioannis,
On Thu, 2009-08-13 at 19:31 +0100, Ioannis Nousias wrote:
> Thanks Tobi for the tip.
>
> however I also need the Data-Flow-Graph of each basic block/functions.
> As I said, I need a view of how the instructions 'link' to each other
> (via registers or memory aliasing or whatnot)
I believe that there is not yet a DOT printer for this kind of
information.
2009 Sep 06
0
[LLVMdev] Graphviz and LLVM-TV
I've tried to write a DFGPrinter based on the CFGPrinter, as you
suggested, but encountered problems.
The GraphWriter expects
GraphTraits<GraphType>::nodes_begin()/nodes_end(). The way this is
implemented in CFG.h, a function is a graph of basic blocks. A
GraphTraits<Function*> inherits from GraphTraits<BasicBlock*>, and
implements those nodes_begin()/nodes_end()
2017 Jun 16
2
How does sanitizers in compiler-rt work?
Can anybody give me any pointer on how compiler-rt, especially the
sanitizers work? Do they operate on IR as any other LLVM pass? Or are they
integral part of the frontend itself? I couldn't spot any documentation on
the internals of compiler-rt project? What happens (sequence of actions)
when I pass -fsanitizer=dataflow to clang?
Precisely, I intend to alter the behaviour of DFSan to suit my
2016 Mar 01
0
How to do some dataflow analysis via IR on a large project?
Dear Shulin,
Sounds like you'll need an inter-procedural analysis across different
source files. One
option I can think of is to manually update the Makefiles, make compiler
emit bitcode
files, merge them with llvm-link and run it through your optimization pass
as a big bitcode
file. This somehow could involve huge amount of tedious work for a huge
project like
Apache, and may be error-prone.
2019 Nov 08
2
Register Dataflow Analysis on X86
I came across this thread from a couple years ago:
http://lists.llvm.org/pipermail/llvm-dev/2017-November/119346.html
Has there been any progress on RDF for X86? Or is there some other preferred alternative for performing reachability analysis after register allocation?
Thanks,
Scott Constable
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2016 May 25
1
Live interval analysis on LLVM IR (not on Machine instructions)
Hello.
Thank you very much for the research paper. I will try to make use of the algorithms
it presents.
I just want to add that I found a 3rd party project doing dataflow analysis for LLVM
IR at https://github.com/rohitjha/cse231-proj2. As written at
http://cseweb.ucsd.edu/~r1jha/#five , the project's description is:
"Dataflow Analysis Framework for LLVM
This is an
2011 Jun 30
2
[LLVMdev] Generating DFG or CDFG from C code
Hi All,
I am new to LLVM. I want to generate a Dataflow graph or Control Dataflow graph from C code using LLVM. I have no idea how to do it in LLVM. I tried to use analysis and transform passes such as "-dot-cfg" but it doesn't give what I want. I want to generate a node for each operation in C code.
Thanks in advance.JM.
-------------- next part --------------
An HTML attachment
2011 Jul 01
2
[LLVMdev] Generating DFG or CDFG from C code
On Jun 30, 2011, at 10:05 PM, janarbek wrote:
>
> Hi All,
> I am reposting my question again since i think my question was not clear enough.
> I am wondering is it possible to generate Control Data Flow Graph from C using LLVM? or is it possible to get web-like structure of C code using llvm /
>
> Thanks in advance,
> Any comment suggestion would be appreciated.
>
>