core/x86/instr.c
/* These next two functions assume that, if an instr_t has a target
   field, the target is kept in the 0th src location. */
These next two functions assume that, if an instr_t has a target
field, the target is kept in the 0th src location.
These next two functions assume that if an instr_t has a target field the target is kept in the 0th src location .
opnd_t
instr_get_target(instr_t *instr)
{
    if ((instr->flags & INSTR_OPERANDS_VALID) == 0)
        instr_decode(get_thread_private_dcontext(), instr);
    CLIENT_ASSERT(instr_is_cti(instr), "instr_get_target called on non-cti");
    CLIENT_ASSERT(instr->num_srcs >= 1, "instr_get_target: instr has no sources");
    return instr->src0;
}
opnd_t instr_get_target ( instr_t * instr ) { if ( ( instr -> flags & INSTR_OPERANDS_VALID ) == 0 ) instr_decode ( get_thread_private_dcontext ( ) , instr ) ; CLIENT_ASSERT ( instr_is_cti ( instr ) , " " ) ; CLIENT_ASSERT ( instr -> num_srcs >= 1 , " " ) ; return instr -> src0 ; }
These next two functions assume that, if an instr_t has a target
field, the target is kept in the 0th src location.
These next two functions assume that if an instr_t has a target field the target is kept in the 0th src location .