search for: hyperedge

Displaying 8 results from an estimated 8 matches for "hyperedge".

2016 Jun 08
2
Intended behavior of CGSCC pass manager.
...ptually, reference graph should also include variable nodes. With > variable nodes introduced, the quadratic behavior mentioned can be avoided. > Yeah, this is what I was trying to get at with the statement "In the current LazyCallGraph, this would require adding some sort of notion of hyperedge." But you are right: from an implementation perspective of a call graph data structure that is trying to model the "ref graph" of LazyCallGraph, it is cleaner to have nodes that are not functions than to introduce a notion of hyperedge. > > > > >> >> >&g...
2016 Jun 09
2
Intended behavior of CGSCC pass manager.
...ble nodes. With >>> variable nodes introduced, the quadratic behavior mentioned can be avoided. >>> >> >> Yeah, this is what I was trying to get at with the statement "In the >> current LazyCallGraph, this would require adding some sort of notion of >> hyperedge." >> But you are right: from an implementation perspective of a call graph >> data structure that is trying to model the "ref graph" of LazyCallGraph, it >> is cleaner to have nodes that are not functions than to introduce a notion >> of hyperedge. >> &g...
2016 Jun 16
5
Intended behavior of CGSCC pass manager.
...uadratic behavior mentioned can be >>>>> avoided. >>>>> >>>> >>>> Yeah, this is what I was trying to get at with the statement "In the >>>> current LazyCallGraph, this would require adding some sort of notion of >>>> hyperedge." >>>> But you are right: from an implementation perspective of a call graph >>>> data structure that is trying to model the "ref graph" of LazyCallGraph, it >>>> is cleaner to have nodes that are not functions than to introduce a notion >>&g...
2016 Jun 08
12
Intended behavior of CGSCC pass manager.
...hine. This will also open the door to avoiding the potentially quadratic size of the ref graph, since e.g. in the example I gave above, we can mark the `funcs` array itself as already having been visited during the walk. In the current LazyCallGraph, this would require adding some sort of notion of hyperedge. Since this is such a high priority (due to blocking PGO inlining), I will probably try my hand at implementing the CGSCC pass manager sometime soon unless somebody beats me to it. (I'll probably try the "open-coded SCC visit" approach). Another possibility is implementing the new C...
2016 Jun 08
0
Intended behavior of CGSCC pass manager.
...open the door to avoiding the potentially quadratic > size of the ref graph, since e.g. in the example I gave above, we > can mark the `funcs` array itself as already having been visited > during the walk. In the current LazyCallGraph, this would require > adding some sort of notion of hyperedge. FWIW, I see no purpose in abstracting one algorithm, especially if that makes things algorithmically harder. Also, the LazyCallGraph abstraction and the iterator abstraction seem like separate issues. Iterator abstractions are often useful because you can use them in generic algorithms, etc. &gt...
2016 Jun 08
3
Intended behavior of CGSCC pass manager.
...;> This will also open the door to avoiding the potentially quadratic size of the ref graph, since e.g. in the example I gave above, we can mark the `funcs` array itself as already having been visited during the walk. In the current LazyCallGraph, this would require adding some sort of notion of hyperedge. >> >> FWIW, I see no purpose in abstracting one algorithm, especially if that makes things algorithmically harder. Also, the LazyCallGraph abstraction and the iterator abstraction seem like separate issues. Iterator abstractions are often useful because you can use them in generic algo...
2016 Jun 08
2
Intended behavior of CGSCC pass manager.
...> This will also open the door to avoiding the potentially quadratic size of the ref graph, since e.g. in the example I gave above, we can mark the `funcs` array itself as already having been visited during the walk. In the current LazyCallGraph, this would require adding some sort of notion of hyperedge. > FWIW, I see no purpose in abstracting one algorithm, especially if that makes things algorithmically harder. Also, the LazyCallGraph abstraction and the iterator abstraction seem like separate issues. Iterator abstractions are often useful because you can use them in generic algorithms, etc....
2016 Jun 08
2
Intended behavior of CGSCC pass manager.
...the ref graph, since e.g. in the example I gave above, we can mark > the > >>>> `funcs` array itself as already having been visited during the walk. > In the > >>>> current LazyCallGraph, this would require adding some sort of notion > of > >>>> hyperedge. > >>> > >>> FWIW, I see no purpose in abstracting one algorithm, especially if that > >>> makes things algorithmically harder. Also, the LazyCallGraph > abstraction and > >>> the iterator abstraction seem like separate issues. Iterator > abstra...