Hello, I'm currently trying to develop new LLVM Pass that will generate simple data dependencies graph. For now I'm trying to get familiar with DependenceAnalysis. My general idea is to traverse each function (runOnFunction) top to bottom Instruction by Instruction, using DA.depends( I, I2, ...) on every Instructions combination in function to check if they are dependent on any others. Problem is that almost all (if not all) Instructions seems to be dependent on others even if they write/read to/from different memory cells. Also I'm getting Dependence (confused) object, not the FullDependence, should i try to dynamically cast it to FullDependence, or is there a way to determine which Dependence instance i got other way? Please help, I'm not an C++ nor LLVM programmer, but PHP-developer, however i need it done asap. If you can help just a little, give me a hint, i'll be very, very thankful for ANY support. Best Regards Valmico
Take a look to this page: https://sites.google.com/site/parallelizationforllvm/ On Wed, Aug 7, 2013 at 10:52 PM, Valmico <valmico88 at gmail.com> wrote:> Hello, > > I'm currently trying to develop new LLVM Pass that will generate simple > data dependencies graph. For now I'm trying to get familiar with > DependenceAnalysis. > My general idea is to traverse each function (runOnFunction) top to bottom > Instruction by Instruction, using DA.depends( I, I2, ...) on every > Instructions combination in function to check if they are dependent on any > others. > > Problem is that almost all (if not all) Instructions seems to be dependent > on others even if they write/read to/from different memory cells. > Also I'm getting Dependence (confused) object, not the FullDependence, > should i try to dynamically cast it to FullDependence, or is there a way to > determine which Dependence instance i got other way? > > Please help, I'm not an C++ nor LLVM programmer, but PHP-developer, > however i need it done asap. If you can help just a little, give me a hint, > i'll be very, very thankful for ANY support. > > Best Regards > Valmico > ______________________________**_________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/**mailman/listinfo/llvmdev<http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev> >-- Best Regards, Erkan Diken ------------------ -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130808/49e1291d/attachment.html>
Shouldn't Dependence Analysis Pass do most of this work for me? W dniu 2013-08-08 10:00, erkan diken pisze:> Take a look to this page: > https://sites.google.com/site/parallelizationforllvm/ > > > On Wed, Aug 7, 2013 at 10:52 PM, Valmico <valmico88 at gmail.com > <mailto:valmico88 at gmail.com>> wrote: > > Hello, > > I'm currently trying to develop new LLVM Pass that will generate > simple data dependencies graph. For now I'm trying to get familiar > with DependenceAnalysis. > My general idea is to traverse each function (runOnFunction) top > to bottom Instruction by Instruction, using DA.depends( I, I2, > ...) on every Instructions combination in function to check if > they are dependent on any others. > > Problem is that almost all (if not all) Instructions seems to be > dependent on others even if they write/read to/from different > memory cells. > Also I'm getting Dependence (confused) object, not the > FullDependence, should i try to dynamically cast it to > FullDependence, or is there a way to determine which Dependence > instance i got other way? > > Please help, I'm not an C++ nor LLVM programmer, but > PHP-developer, however i need it done asap. If you can help just a > little, give me a hint, i'll be very, very thankful for ANY support. > > Best Regards > Valmico > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu> > http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > > -- > Best Regards, > Erkan Diken > -------------------------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130808/e81dd71a/attachment.html>