||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:[email protected]]
Sent: Monday, June 29, 2020 12:36 PM
To: Mark Roberts
Cc: [email protected]
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 <[email protected]>
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
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/valgrind-users



--
Derrick McKee
Phone: (703) 957-9362
Email: [email protected]


_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to