core/x86/instr.c
/* sets the src opnd at position pos in instr */
sets the src opnd at position pos in instr
sets the src opnd at position pos in instr
void
instr_set_src(instr_t *instr, uint pos, opnd_t opnd)
{
    CLIENT_ASSERT(pos >= 0 && pos < instr->num_srcs, "instr_set_src: ordinal invalid");
    if (pos == 0)
        instr->src0 = opnd;
    else
        instr->srcs[pos-1] = opnd;
    instr_being_modified(instr, false);
    instr_set_operands_valid(instr, true);
}
void instr_set_src ( instr_t * instr , uint pos , opnd_t opnd ) { CLIENT_ASSERT ( pos >= 0 && pos < instr -> num_srcs , " " ) ; if ( pos == 0 ) instr -> src0 = opnd ; else instr -> srcs [ pos - 1 ] = opnd ; instr_being_modified ( instr , false ) ; instr_set_operands_valid ( instr , true ) ; }
sets the src opnd at position pos in instr
sets the src opnd at position pos in instr
/* remember that src0 is static, rest are dynamic */ /* if we're modifying operands, don't use original bits to encode! */ /*raw bits invalid*/ /* assume all operands are valid */