Reduce scope or eliminate temporary variables in jtag_add_statemove:
- Change types of tms_bits and tms_count to unsigned, eliminates a cast. - Use moves[] only if needed; a single move can use goal_state directly. - Declare loop induction variable inside its control statement. - Remove retval in favor of direct returns. git-svn-id: svn://svn.berlios.de/openocd/trunk@2137 b42882b7-edfa-0310-969c-e2dbd0fdcd60__archive__
parent
b3121aac76
commit
731d2d0cb6
|
@ -2597,13 +2597,7 @@ static int handle_tms_sequence_command(struct command_context_s *cmd_ctx, char *
|
||||||
*/
|
*/
|
||||||
int jtag_add_statemove(tap_state_t goal_state)
|
int jtag_add_statemove(tap_state_t goal_state)
|
||||||
{
|
{
|
||||||
int retval = ERROR_OK;
|
|
||||||
|
|
||||||
tap_state_t moves[8];
|
|
||||||
tap_state_t cur_state = cmd_queue_cur_state;
|
tap_state_t cur_state = cmd_queue_cur_state;
|
||||||
int i;
|
|
||||||
int tms_bits;
|
|
||||||
int tms_count;
|
|
||||||
|
|
||||||
LOG_DEBUG( "cur_state=%s goal_state=%s",
|
LOG_DEBUG( "cur_state=%s goal_state=%s",
|
||||||
tap_state_name(cur_state),
|
tap_state_name(cur_state),
|
||||||
|
@ -2618,12 +2612,12 @@ int jtag_add_statemove(tap_state_t goal_state)
|
||||||
}
|
}
|
||||||
else if( tap_is_state_stable(cur_state) && tap_is_state_stable(goal_state) )
|
else if( tap_is_state_stable(cur_state) && tap_is_state_stable(goal_state) )
|
||||||
{
|
{
|
||||||
tms_bits = tap_get_tms_path(cur_state, goal_state);
|
unsigned tms_bits = tap_get_tms_path(cur_state, goal_state);
|
||||||
tms_count = tap_get_tms_path_len(cur_state, goal_state);
|
unsigned tms_count = tap_get_tms_path_len(cur_state, goal_state);
|
||||||
|
tap_state_t moves[8];
|
||||||
|
assert(tms_count < DIM(moves));
|
||||||
|
|
||||||
assert( (unsigned) tms_count < DIM(moves) );
|
for (unsigned i = 0; i < tms_count; i++, tms_bits >>= 1)
|
||||||
|
|
||||||
for (i=0; i<tms_count; i++, tms_bits>>=1)
|
|
||||||
{
|
{
|
||||||
bool bit = tms_bits & 1;
|
bool bit = tms_bits & 1;
|
||||||
|
|
||||||
|
@ -2636,17 +2630,13 @@ int jtag_add_statemove(tap_state_t goal_state)
|
||||||
else if( tap_state_transition(cur_state, true) == goal_state
|
else if( tap_state_transition(cur_state, true) == goal_state
|
||||||
|| tap_state_transition(cur_state, false) == goal_state )
|
|| tap_state_transition(cur_state, false) == goal_state )
|
||||||
{
|
{
|
||||||
/* move a single state */
|
jtag_add_pathmove(1, &goal_state);
|
||||||
moves[0] = goal_state;
|
|
||||||
jtag_add_pathmove( 1, moves );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
return ERROR_FAIL;
|
||||||
retval = ERROR_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
return retval;
|
return ERROR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
void jtag_set_nsrst_delay(unsigned delay)
|
void jtag_set_nsrst_delay(unsigned delay)
|
||||||
|
|
Loading…
Reference in New Issue