]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Add a new kind of IR stmt: "instruction marks" (IRStmt_IMark), so as
authorJulian Seward <jseward@acm.org>
Wed, 16 Mar 2005 18:19:10 +0000 (18:19 +0000)
committerJulian Seward <jseward@acm.org>
Wed, 16 Mar 2005 18:19:10 +0000 (18:19 +0000)
commitbe1682ca4d672341f14780f8d520c503d6bf0408
tree95d0ad30608e4607c6a72040570e86f8c0d78c98
parent5c88820bf50776aeca9ec453738e5b4e16e27552
Add a new kind of IR stmt: "instruction marks" (IRStmt_IMark), so as
to support profiling.  It is the responsibility of front ends (toIR.c)
to generate these.  For each instruction, the first IR stmt emitted
should be an IMark, stating the guest address and length of the guest
instruction represented by the IR that follows.  All IR stmts
following the IMark but before the next IMark are then assumed to
'belong to' the guest insn described by the first IMark.  IMarks do
not denote executable code and can be ignored at any point in the
proceedings; they are an optional addition which help
profiling-annotators to navigate the IR stmt stream.

This commit adds IR level infrastructure for IMarks and IMark
generation in the x86 front end.  The amd64 and ppc32 front end are
not yet done.

git-svn-id: svn://svn.valgrind.org/vex/trunk@1046
VEX/priv/guest-x86/toIR.c
VEX/priv/host-x86/isel.c
VEX/priv/ir/irdefs.c
VEX/priv/ir/iropt.c
VEX/pub/libvex_ir.h