||You can iterate over the statements contained within a superblock, add new statements, remove statements, etc.
I am successfully instrumenting code with Valgrind and I don’t really need super blocks (as yet). I was just curious about the Valgrind implementation. Traditionally, given: Inst-1 Inst-2 Cond branch Inst-4 Inst-5 All five instructions would be in the same super block, but Valgrind appears to create two basic blocks with Inst-1 to Cond branch in one ant Inst-4 and Inst-5 in a separate IRSB. So it appears to me as if these are basic blocks, not super blocks - what am I missing? Thanks, Mark -----Original Message----- From: Derrick McKee [mailto:derrick.mc...@gmail.com] Sent: Monday, June 29, 2020 12:36 PM To: Mark Roberts Cc: valgrind-users@lists.sourceforge.net Subject: Re: [Valgrind-users] valgrind IR and super blocks You can iterate over the statements contained within a superblock, add new statements, remove statements, etc. Which super block gets translated next will likely depend on the computation done by the super block itself, which is what you are seeing with the branch termination. What are you trying to do? On Mon, Jun 29, 2020 at 3:02 PM Mark Roberts <mar...@cs.washington.edu> wrote: > > I am confused by Valgrind's use of the IRSB data structure. The notes > say these are super blocks, but every case I've seen they terminate > with a conditional branch. What is that magic I'm missing in order to > operate on a traditional super block? > > Thank you > Mark Roberts > > > _______________________________________________ > Valgrind-users mailing list > Valgrind-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/valgrind-users -- Derrick McKee Phone: (703) 957-9362 Email: derrick.mc...@gmail.com _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users